MrIgr

Железнодорожные станции

7 сообщений в этой теме

Описание процесса конвертирования будет вестить на примере немецкого вокзала, а конвертировать будем харьковский вокзал Alex'a.

 

render1.jpg

 

Структура папок:

res\

  config\train-station - файлы с расширением *.lua итоговая сборка происходит именно в них. Три файла для трех типов станций по длине (160 м / 240 м / 320 м)

  models\

               material\station\train\1900 - материалы, используемые моделью;

               mesh\station\train\1900 - меши, т.е. непосредственно 3D-модели в паре со скриптами;

               model\station\train\1900 - файлы промежуточной сборки;

  textures\models\station\train\1900 - текстура.

 

содержание lua-скрипта короткой станции (1900_small.lua):

 


function data()
return {
cargo = false,                                              -- предназначение станции true - товарная, false - пассажирская
yearFrom = 1850,                                            -- дата возможности постройки
yearTo = 1950,                                              -- дата окончания возможности постройки, (кстати, здания апгрейдятся сами?)
minPlatforms = 1,                                           -- минимальное количество платформ
maxPlatforms = 3,                                           -- максимальное количество платформ
building = "station/train/1900/1900_gebaude.mdl",           -- mdl-файл непосредственно со зданием станции/вокзала
firstPlatform = {                                           -- первая платформа прилегающая к зданию
bounds = { -5.0, 20.0 },                                    -- габариты первой платформы
parts = {                                                   -- составные части модели платформы (в маленькой станции нам надо набрать блоками 160 м)
"station/train/1900/1900_small_end_links.mdl",              -- mdl-файл конца платформы
"station/train/1900/1900_small_40m.mdl",                    -- mdl-файл средней части платформы
"station/train/1900/1900_small_40m_ubergang.mdl",           -- mdl-файл части платформы с переходом
"station/train/1900/1900_small_40m.mdl",                    -- mdl-файл средней части платформы
"station/train/1900/1900_small_40m.mdl",                    -- mdl-файл средней части платформы
"station/train/1900/1900_small_end_links_hinten.mdl"        -- mdl-файл обратного конца платформы
}                                                           -- 
},
platform = {                                     -- вторая платформа
-- bounds = { -2.5, 2.5 },                       -- габариты второй платформы (почему-то закомменченные, т.е. этот блок ?не обязательный?, как я понимаю)
parts = {
"station/train/1900/1900_mid_end_links.mdl",     -- составные части платформы по аналогии с первой платформой сами платформы шире, так как обслуживают пути по левую и правую стороны
"station/train/1900/1900_mid_40m.mdl",
"station/train/1900/1900_mid_40m_ubergang.mdl",
"station/train/1900/1900_mid_40m.mdl",
"station/train/1900/1900_mid_40m.mdl",
"station/train/1900/1900_mid_end_links.mdl"
}
},
lastPlatform = {                                       -- последняя платформа
parts = {
"station/train/1900/1900_small_end_links_hinten2.mdl", -- mdl-файлы последней платформы
"station/train/1900/1900_small_hinten.mdl",
"station/train/1900/1900_small_hinten_ubergang.mdl",
"station/train/1900/1900_small_hinten.mdl",
"station/train/1900/1900_small_hinten.mdl",
"station/train/1900/1900_small_end_links2.mdl",




}
},


buildingCosts = 250000,                                 -- стоимость строительства
platformCosts = 5000                                    -- стоимость дополнительной платформы при строительстве
}
end
 
красным я выделил то, что мне пока не понятно, а именно количество платформ - что за этим кроется, если максимум ж/д путей пять, тогда как в lua-скрипте длинной станции указаны минимум 4 и максимум 12.
 
Давайте сначала заменим здание вокзала, а затем будем разбираться с платформами. Для этого откроем файл station/train/1900/1900_gebaude.mdl и посмотрим его содержание.
 


local laneutil = require "laneutil"


function data()
return {
boundingInfo = {     -- габариты модели
bbMax = {            -- максимум
22.0, 1.0, 10.70592, 
},
bbMin = {            -- минимум
-22.0, -20.0, -0.15, 
},
},
collider = {
params = {


},
type = "MESH",
},
lods = {
{
animations = {
},
children = {
{
id = "station/train/1900/1900_gebaude.msh", -- меш - скрипт к мешу вокзала, один из пары файлов что получается при конвертировании файла из 3D-редактора (OBJ, ASE) с помощью TFMC от Omich
transf = {                                  -- второй файл пары с самой моделью имеет расширение blob 
1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, -- координаты меша в координатной системе mdl-файла
},
type = "MESH",
}, {
id = "station/train/1900/1900_pferdewagen.msh", -- повозка
transf = {
1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, -2.76799, -4.39362, 0.0, 1.0, 
},
type = "MESH",
}, {
id = "tree/europeanlinden_rt_1_lod0.msh", -- дерево
transf = {
0, -1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0,      -17.8, -1.45, 0.2, 1, 
},
type = "MESH",


}, {
id = "tree/europeanlinden_rt_1_lod0.msh", -- дерево
transf = {
0, -1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0,      17.5, -1.4, 0.2, 1, 
},
type = "MESH",


}, {
id = "asset/lamp_old_lod_0.msh", -- дерево
transf = {
0, -1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0,       7.8, 0, 0.25, 1, 
},
type = "MESH",


}, {
id = "asset/lamp_old_lod_0.msh", -- фонарь
transf = {
0, -1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0,      -7.8, 0, 0.25, 1, 
},
type = "MESH",


},
},
events = {
},
matConfigs = {
{
0, 0, 0, 0, 0, 0, 
}, 
},
static = false,
visibleFrom = 0,
visibleTo = 2500,
}, 
},
metadata = {                                            --здесь уже начинается код уникальный для станций
transportNetworkProvider = {
laneLists = {
{
transportModes = { "PERSON" },                          -- объект перемещения т.е. "PERSON" (человек) для пассажирской станции, "CARGO" (груз) для товарной.
nodes  = laneutil.makeLanes({                           -- обращение к laneutil - скрипту для построения путей пешеходов
-- Linie Links                                          -- пути перемещения пассажиров
{ { 4.5,  1.0, .3 },  {      4.5 ,-1.0, .3},  { 0,  -1, .0 }, { 0,  -1 , .0 },  1.5 }, 
{ { 4.5, -1.0, .3 },  {      4.5 ,-8.0, .3},  { 0,  -1, .0 }, { 0,  -1 , .0 },  1.5 },
{ { 4.5, -8.0, .3 },  {     3.0 ,-10.0, .3},  { 0,  -1, .0 }, { 0,  -1 , .0 },  1.5 },
{ { 3.0,-10.0, .3 },  {     3.0 ,-18.0, .3},  { 0,  -1, .0 }, { 0,  -1 , .0 },  1.5 },


-- Linie Rechts                                          
{ { -4.5,  1.0, .3 },  {      -4.5 ,-1.0, .3},  { 0,  -1, .0 }, { 0,  -1 , .0 },  1.5 },
{ { -4.5, -1.0, .3 },  {      -4.5 ,-2.0, .0},  { 0,  -1, .0 }, { 0,  -1 , .0 },  1.5 },
{ { -4.5, -2.0, .0 },  {      -4.5 ,-7.0, .0},  { 0,  -1, .0 }, { 0,  -1 , .0 },  1.5 },
{ { -4.5, -7.0, .0 },  {      -4.5 ,-8.0, .3},  { 0,  -1, .0 }, { 0,  -1 , .0 },  1.5 },
{ { -4.5, -8.0, .3 },  {      -4.5 ,-9.5, .3},  { 0,  -1, .0 }, { 0,  -1 , .0 },  1.5 },
{ { -4.5, -9.5, .3 },  {       0.7 ,-9.5, .3},  { 1,  0, .0 }, { 1,  0 , .0 },  1.5 },
{ {  0.7 ,-9.5, .3 },  {       0.7 ,-18.0, .3},  { 0,  -1, .0 }, { 0,  -1 , .0 },  1.5 },
{ {  0.7 ,-18.0, .3},  {       3.0 ,-18.0, .3},  { 1,  0, .0 }, { 1,  0 , .0 },  1.5 },
-- Zu Übergang                  
{ { 3.0 ,-18.0, .3 },  {       3.0 ,-23.0, .3},  { 0,  -1, .0 }, { 0,  -1 , .0 },  1.5 },
})
}
}
}
}
}
end

Таким образом выяснилось, что mdl-файл вокзала содержит в себе несколько мешей: здание вокзала и окружение (деревья, бочки, лавочки и скамейки).

 

Что же такое "Linie links", "Linie Rechts"? Чек-поинты используемые для построения пути пешеходов. О них подробно на английском языке можно прочитать в 

руководстве по прокладке путей на примере маленькой грузовой станции.

3

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Собственно первый пост обновляется, поэтому периодически смотрите и высказывайте предположения) пойду практиковать немецкий к соседям, может вычитаю что, еще как вариант можно построить путь по координатам и посмотреть что вышло, в любом случае, последние цифры "1,5" остаются не понятными совсем

Изменено пользователем MrIgr
0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ответы на все или многие вопросы в статье на немецком сайте https://www.train-fever.net/lexikon/index.php/Entry/49-Describing-the-contents-and-paths-of-the-Small-Cargo-Station/ завтра будем разбираться дальше

2

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

На надземных переходах пассажиры просто сквозь поезд проходят :) Выглядит странно, но действительно - повсеместные подземные переходы не очень реалистично. 

0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Вот и я думаю, что подземный переход в середине 19 века выглядит куда страннее, чем проходящие сквозь поезда люди)

0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

надземный переход?) мост то бишь пешеходный?)

0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Думаю имелся в виду наземный

0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!


Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.


Войти сейчас

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу