Создание турелей для Х3
Турели в Х3 представляют собой субсцены, встраиваемые в сцену корабля. Описание таких субсцен находится в файле types\Dummies, турели описываются в его разделе SDTYPE_GUN. В любой турели должно быть по крайней мере одно орудие – модель, снабжённая одним или несколькими точками испускания выстрелов. Эти точки описываются в файле types\Components, в разделе SCTYPE_LASER.
Турели в игре делятся на вращающиеся и неподвижные.
Вращающиеся турели снабжены автоматической анимацией, позволяющей отдельным частям турели двигаться вслед за камерой. Для работы автоматической анимации должны быть выполнены некоторые условия, о которых написано ниже. Вращающаяся турель не может быть снабжена пользовательской анимацией.
Неподвижная турель лишена автоматической анимации, и её части не следуют за камерой. Зато такая турель может быть снабжена пользовательской анимацией, демонстрируемой во время выстрелов.
Для корректной работы автоматической анимации вращающаяся турель должна состоять из следующих элементов: неподвижное основание, подвижный корпус турели, одно или два подвижных орудия. При необходимости, каждое орудие может иметь более чем одно место под лазеры, но тут есть небольшой глюк. В игре предусмотрен механизм сокрытия неиспользуемых орудий, который работает верно лишь в том случае, если орудия эти однолазерные. Впрочем, на главную функцию турели — стрельбу по цели — этот глюк не влияет.
Предполагается, что модели элементов турели уже созданы и одновременно открыты в 3ds Max`е.
После этого необходимо выполнить ряд действий:
Особенности неподвижных турелей
Следует признать, что неподвижные турели изучены мною значительно хуже вращающихся.
Неподвижные турели делятся на три подкласса: турели невидимые, турели полностью неподвижные и турели, снабжённые пользовательской анимацией.
Турели невидимые состоят лишь из макета и строки в Dummies такого вида:
имя_макета;GUNF_FIXED;0;0;
Строка в Components не требуется. Такие турели в игре не отображаются, но стреляют.
Турели неподвижные с пользовательской анимацией устроены следующим образом.
Для них нужны две сцены: сцена неиспользуемой турели и сцена стреляющей турели. В этой второй сцене может быть прописана анимация. Ограничения, налагаемые на такие сцены, мне не известны.
В Dummies такая турель прописывается так:
имя_турели;GUNF_FIXED;2;GUNSTATUS_INITIAL;имя_сцены_нестреляющей турели;GUNSTATUS_FIRING;имя_сцены_стреляющей турели;0;
Для создания видимой полностью неподвижной турели, по-видимому, не следует создавать субсцен; достаточно лишь записи в разделе SCTYPE_LASER файла Components.