Начиная с ТРС2010, появилась поддержка сезонных объектов. В отличие от, например, РВ, ТРС имеет более гибкую настройку таких сезонов. К сожалению, найти более менее полную информацию о том, как их настроить, в сети невозможно. Даже на wiki и то описание посредственное, и в чем-то даже неправильное.
И так, как же сделать сезонный объект. Для начала разберёмся, к чему же можно применять сезоны. Их можно применять к любым видимым объектам на карте. То есть к различным зданиям, машинкам, человекам, деревьям, индустриям, рельсам, путевым объектам, сплайнам и в конечном итоге к текстурам земли.
Первое, что необходимо сделать, это создать нужные объекты. В отличии от РВ, в ТРС нельзя просто менять текстуру объекта под соответствующий сезон. Это значит, что если мы хотим сделать домик с текстурой снега и тп, нам надо делать два домика с разными текстурами.
И так, с сезонами определились, объекты сделали. Теперь необходимо создать непосредственно сами сезоны. Для этого имеется контейнер
[PHP]season-selector
{
}
[/PHP]
В нём мы и будем описывать наши сезоны. Все сезоны записываются как условия. В качестве условия используется период года и определяется тегом
[PHP]season-range xxx, yyy[/PHP]
с двумя значениями "xxx" - дата начала сезона, "yyy" - дата окончания сезона, определяемые дробным числом от 0.0 до 1.0. Началом года, как бы это не казалось абсурдным, является 1 июня. Это значит, что значение 0.0 соответствует 0:00 1 июня.
Для определения номера сезона, а именно он понадобится для мешей, используется тег
[PHP]output-season x[/PHP]
где "x" - номер сезона. Их может быть сколько угодно, и не обязательно по порядку. Собственно этот тег является выходом из условия.
Для проверки, выполняется ли условия сезона служат два контейнера
[PHP] branch-true
{
}
[/PHP]
содержимое которого проверяется, если дата уложилась в заданный период и
[PHP] branch-false
{
}[/PHP] если дата в заданный период не укладывается. Оба эти контейнера являются аналогией основного контейнера
[PHP]season-selector
{
}
[/PHP]
То есть, новое условие или выход мы пишем в них.
Вот простенький пример из 4х сезонов
[PHP]season-selector
{
season-range 0.0,0.3
branch-true
{
output-season 0
}
branch-false
{
season-range 0.3,0.6
branch-true
{
output-season 1
}
branch-false
{
season-range 0.6,0.9
branch-true
{
output-season 2
}
branch-false
{
output-season 4
}
}
}
}[/PHP]
Вот таким образом и создаётся дерево сезонов.
Теперь необходимо указать мешам в какие сезоны им появляться. Для этого есть тег
[PHP] mesh-season x[/PHP]
где x - номер требуемого сезона из нашего дерева.
То есть мешь в mesh-table будет выглядеть так
[PHP] summer
{
mesh "mymesh.im"
auto-create 1
mesh-season 2
}
[/PHP]
Как видно, ничего сложного в этом нет.
Заранее прошу прощения у тех, кто ничего, как и я, из написанного не понял. Я не самый лучший объясняльщик.