Ru/Collision mesh: Difference between revisions

From Valve Developer Community
< Ru
Jump to navigation Jump to search
mNo edit summary
No edit summary
Line 1: Line 1:
{{otherlang2
{{otherlang2
|title=Collision сетка
|title=Сетка столкновений
|en=Collision mesh
|en=Collision mesh
}}
}}


[[Image:Collisionmesh static.jpg|right|150px|Статичная collision-модель (красная сетка вокруг обекта)]]
[[Image:Collisionmesh static.jpg|right|150px|Статичная модель (красная сетка модели вокруг объекта)]]
[[Image:Collisionmesh jointed.jpg|right|150px|collision-меш с сочленениями нескольких частей (желтая сетка)]]
[[Image:Collisionmesh jointed.jpg|right|150px|Сетка столкновений с сочленениями нескольких частей (желтая сетка)]]


'''Collision-сетка''' (также называмая '''collision-моделью''', пусть она и является лишь ''компонентом'' модели) это [[cheap|простая]] 3D-модель, которую Source использует для расчёта [[VPhysics|физического взаимодействия]] объектов.
'''Сетка столкновений''' - [[cheap|простая]] 3D-модель, использующая [[VPhysics|физические взаимодействия]]. Иногда её называют моделью столкновений. После того, как объект C++ будет загружен в движок, создаётся [[model|модель]], вершины которой привязываются к сетке.


Collision-меш не показывается игроку. Он должен быть сильно упрощён по сравнению с [[Reference mesh|reference-моделью]] и [[LOD mesh|LOD'ами]]  - посмотрите примеры на картинках справа. Недостаток точности будет совершенно незаметен - за исключением того, конечно, что физический движок не захлебнётся.
Сетка столкновений невидима, и должна быть сильно проще видимых компонентов модели (см. две картинки справа). Недостаток точности незаметен, кроме того, что он не приводит симуляцию в ступор.


Для коллижен-сеток существует одно ограничение: как и [[brush|браши]], collision-модели должны быть [[wikipedia:ru:Выпуклое_тело|выпуклыми]]. Для одной модели можно при этом использовать несколько коллижен-сеток, так что это ограничение вряд ли можно считать серьёзным препятствием в создании физики.
== Пояснения ==
 
; Сетки столкновений состоят только из [[Wikipedia:Convex set|выпуклых]] элементов
: Чтобы создать вогнутую сетку, соберите отдельные выпуклые объекты, пересекающие друг друга (если необходимо), и скомпилируйте с помощью [[$collisionmodel|$concave]]. Каждая выпуклая часть бережно относится к ресурсам симуляции.
; Все элементы столкновений должны быть изолированы
: Там вообще может не быть никаких отверстий. Это условие вычисляется путём изучения [[vertex normal|нормалей вершин]], поэтому все края должны быть гладкими. Если studiomdl говорит: "Model has 2-dimensional geometry" (модель имеет 2-х мерную геометрию) - вы сделали ошибку (или должны слегка уплотнить сетку).


== См. также ==
== См. также ==

Revision as of 08:34, 2 March 2016

Template:Otherlang2

Статичная модель (красная сетка модели вокруг объекта)
Сетка столкновений с сочленениями нескольких частей (желтая сетка)

Сетка столкновений - простая 3D-модель, использующая физические взаимодействия. Иногда её называют моделью столкновений. После того, как объект C++ будет загружен в движок, создаётся модель, вершины которой привязываются к сетке.

Сетка столкновений невидима, и должна быть сильно проще видимых компонентов модели (см. две картинки справа). Недостаток точности незаметен, кроме того, что он не приводит симуляцию в ступор.

Пояснения

Сетки столкновений состоят только из выпуклых элементов
Чтобы создать вогнутую сетку, соберите отдельные выпуклые объекты, пересекающие друг друга (если необходимо), и скомпилируйте с помощью $concave. Каждая выпуклая часть бережно относится к ресурсам симуляции.
Все элементы столкновений должны быть изолированы
Там вообще может не быть никаких отверстий. Это условие вычисляется путём изучения нормалей вершин, поэтому все края должны быть гладкими. Если studiomdl говорит: "Model has 2-dimensional geometry" (модель имеет 2-х мерную геометрию) - вы сделали ошибку (или должны слегка уплотнить сетку).

См. также