Entities fall through displacements:ru

From Valve Developer Community
Revision as of 23:08, 1 June 2009 by JeffLane (talk | contribs) (category fixes)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Проблема

Физические ентити падают сквозь деформируемые поверхности(displacements). Это prop physics, оружие, prop ragdoll и средства передвижения. NPC и игрок остаются на месте.

Эта проблема появляется, если используешь HL2 (appid 220) для игры на картах, компилированных после обновления SDK в Августе 2006 года. Карты, компилированные раньше этой даты, работают нормально. Эта ошибка появляется во всех картах, компилированных в Hammer, вне зависимости от мода, выбранного в меню Source SDK.

Решение проблемы

Во первых, убедитесь что никакие галочки не стоят в настройках дисплейсмента.

Face Edit Disp.png


Если параметр "No Physics Collision" не отмечен, а проблема осталась, попробуйте следующее:

  • Используйте Эпизод 1 (appid 240) или Source SDK base (appid 215) для вашей карты или мода. Это лучшее решение.
  • Если вы вынуждены использовать HL2 (appid 220) или ваш мод построен на appid 220 базе и не может быть обновлен, вы должны добавить -novirtualmesh в дополнительных опциях компилирования. Компилируйте карту в expert mode и добавьте -novirtualmesh в опции компилирования как показано на картинке.


Novirtualmesh command.jpg

Это увеличит размер BSP, но столкновения будут отработаны правильно.

Примеры

Displacement test0000.jpg

Displacement Test 1 На этой карте используются дисплейсменты. Заметьте что карта скомпилирована с 220 appid в Hammer, она играется нормально в Эпизод 1. Если запустить ее в HL2, лодка, гранаты и предметы проходят сквозь дисплейсмент.

Displacement test0001.jpg

Displacement Test 2 Та же карта, скомпилированная с командой -novirtualmesh . Карта работает правильно в Эпизод 1 и HL2, но размер увеличился с 235 kb до 573 kb.

Displacement Source VMF

Запомните:

Совет:
Как только вы компилировали карту, она будет не совместима с предыдущими версиями движка.


Совет:
Лучше всего обновить движок, чем обеспечить совместимость со старыми версиями.