**Вспомогательные системы отладки** ---- XashXT имеет различные системы отладки, которые призваны облегчить жизнь левел-дизайнеру. Как правило, тот или иной механизм включается через консольную переменную или команду, однако иногда отладка включается для конкретной энтити при помощи специального спаунфлага (см. [[xashxt:ru:энтити:|описание энтить]]). Ниже будут приведены именно консольные переменные и команды, а также их назначение. * **Примечание**: не пытайтесь использовать данные команды и переменные как часть геймплея — большинство из них перестанет работать в режиме пользователя. ^ Консольные переменные ^^ | phys_debug | Включает визуализацию коллизий для физического движка PhysX. | | phys_qdebug | На данный момент просто рисует центры у //func_door_rotating//. | | p_speeds | Выводит информацию о текущем состоянии физического движка PhysX и объектах на сцене. | | r_speeds | Принимает значения от 1 до 9. Выводит различную информацию о состоянии рендерера. | | r_showtextures | Принимает значения от 1 до 14. Показывает различные загруженные текстуры, группируя их по опредленному признаку. | | sv_novis | Выключает отсечение энтить по PVS на сервере, дабы отличить его от клиентского отсечения видимости. | | r_novis | Выключает отсечение энтить по PVS на клиенте. Обычно влияет только на мировые полигоны, поскольку энтити отсекаются на сервере. | | r_lockpvs | Блокирует обновление PVS, чтобы левел-дизайнер мог увидеть дальность прорисовки. | | r_lightmap | Рисует лайтмапы без диффузных текстур. | | gl_wireframe | Включает отрисовку разбиения полигонов на блоки. | | r_drawentities | По умолчанию значение равно **1**. В режимах от 2 до 6 рисует кости, хитбоксы и т. д. | | gl_renderer | По умолчанию равен **1**. Переключение в ноль позволяет задействовать рендерер игрового движка и сравнить полученную картинку. | | showtriggers | Показывает триггеры на карте. Работает только после рестарта уровня. | ^ Консольные команды ^^ | edicts_info | Выводит краткую информацию по эдиктам. | | entity_info | Выводит подробную информацию по энтитям. | | entpatch | Создаёт дамп скриптового файла с описанием энтить, который может быть отредактирован вручную. В дальнейшем движок будет грузить именно его, вместо встроенных энтить. | | fire | Позволяет активировать любую энтить прямо по взгляду игрока, либо активировать энтить, явно указав её имя как аргумент команды. | | impulse 103 | Выводит информацию о состоянии AI монстра. | | impulse 104 | Выводит информацию о состоянии глобальных энтить (состояние которых можно модифицировать при помощи //env_global//). | | impulse 106 | Выводит информацию о состоянии обычных энтить (имя, глобальное имя, модель, родитель). | | impulse 107 | Выводит имя текстуры по взгляду игрока. | | impulse 203 | Удаляет объект с карты (кроме мира и игроков, конечно). | | showtriggers_toggle | Альтернатива квару //showtriggers//. В отличие от него показывает триггеры, не требуя рестарта карты. Однако большинство современных компиляторов (ZHLT, VHLT) имеют в своём коде оптимизацию, благодаря которой все триггеры, покрытые текстурой //AAATRIGGER//, удаляются, оставаляя только физический хулл, но не оставляя видимый. Чтобы избежать такого поведения, вам следует компилить карту с параметром командной строки //-nonullifytrigger// для hlcsg. Либо использовать для триггеров текстуру с другим названием. |