Ru/Collision mesh
< Ru
Jump to navigation
Jump to search
Сетка столкновений - простая 3D-модель, использующая физические взаимодействия. Иногда её называют моделью столкновений. После того, как объект C++ будет загружен в движок, создаётся модель, вершины которой привязываются к сетке.
Сетка столкновений невидима, и должна быть сильно проще видимых компонентов модели (см. две картинки справа). Недостаток точности незаметен, кроме того, что он не приводит симуляцию в ступор.
Пояснения
- Сетки столкновений состоят только из выпуклых элементов
- Чтобы создать вогнутую сетку, соберите отдельные выпуклые объекты, пересекающие друг друга (если необходимо), и скомпилируйте с помощью $concave. Каждая выпуклая часть бережно относится к ресурсам симуляции.
- Все элементы столкновений должны быть изолированы
- Там вообще может не быть никаких отверстий. Это условие вычисляется путём изучения нормалей вершин, поэтому все края должны быть гладкими. Если studiomdl говорит: "Model has 2-dimensional geometry" (модель имеет 2-х мерную геометрию) - вы сделали ошибку (или должны слегка уплотнить сетку).
Сглаживание
В этом разделе рассказывается о том, как создать сглаженную сетку столкновений в различных пакетах моделирования. Помните, что ни в одной выпуклой форме не должно быть отверстий.
Blender
- В
Object Mode, запустите оператор "Shade Smooth" на вашей сетке.
- Remove the
Edge Split modifier if you've added it for some odd reason.
Maya
- Use the Combine command to combine every part into a single editable mesh.
- Do NOT append edges or merge verticies after using the Combine command.
- Set selection mode to Edges, then select all edges in your collision mesh, then click on the Normals menu and click Soften Edge.
- Set up a very basic UVW map, such as an Automatic unwrap.
XSI
- Select every part of the collision mesh and use Model -> Create -> Polymesh -> Merge to combine them into one object.
- Use Render -> Get-> Property-> Geometry Approximation. In the Polygon Mesh tab, uncheck Discontinuity: Automatic. All hard edges on the model will disappear.
- Apply a texture and a projection to the collision mesh. Anything will do.
3DS Max
- Use the Attach function to combine every part into a single editable mesh. (optional)
- Do NOT weld vertices together after using the Attach function. All objects within the mesh should be individually selectable using the "Select Element" option within the Edit Mesh modifier.
- Select every element (in the mesh) individually and set them all to a different smoothing groups. If you work on a very complex model that requires more than 32 smoothing groups, you can create "additional smoothing groups" by combining them. For instance, an element set to smoothing groups 1 and 3 will be properly differentiated from elements set to smoothing groups 1 or 3.
- Apply your model's material to the collision mesh with at least a basic UWV map.
SketchUp
- Build a collision mesh out of one or more groups of faces. Each group must form a solid convex shape.
- Smooth each edge in the group by selecting all the faces inside and then right clicking and selecting "Smooth/Unsmooth edges". Set the slider to the 180 degrees to smooth all edges.
- Apply the same material to each face of the collision model. Note you must apply the material to each face, not the group as a whole.
- Combine multiple groups of faces into a single component.
- Set the axis of the component to the same as your reference model.
Lightwave
- Build a collision mesh out of primitives such as boxes and cylinders. As noted above, make sure each primitive is entirely solid and a separate object.
- Hit Q to add the mesh to a new surface, and give it a name.
- In the Surface Editor (F5), select the new surface, and check the smoothing checkbox. Give it a smoothing threshold of 180.
Cinema 4D
- Build a collision mesh out of primitives. Each group must form a solid convex shape.
- Create a new Connect Object and drag every primitive into it.
- Remove all tags from the primitives (Phong, Textures..) except the UVW tag.
- Apply your model's material to the Connect Object and export as SMD.
См. также
- Физика и рэгдоллы
- $collisionmodel:ru - QC-команда для сетки коллижена без каких-либо подвижных частей
- $collisionjoints:ru - команда для коллижен-мешей с наличием подвижных частей