Настройка камер в кабине

Обсуждение вопросов и решение проблем, связанных с внутриигровым редактором, а также процессом разработки самостоятельных дополнений или игровых модификаций.
Ответить
Криведко
Бывалый
Бывалый
Сообщения: 41
Зарегистрирован: 12 май 2021
Репутация: 6

Настройка камер в кабине

Сообщение Криведко »

Нигде не нашёл информации по редактированию конфигов кабин. Объясните, как это делать? Вопрос не просто в изменении положения камеры, а в добавлении новых, как, например, в некоторых паровозах есть по 5 точек.

le Sandro
Разработчик
Сообщения: 673
Зарегистрирован: 15 фев 2012
Откуда: Пенза
Репутация: 443

Настройка камер в кабине

Сообщение le Sandro »

Конфиги кабин ЭР1, ЭР2 поковыряй. Либо напрямую к авторам: к Диме (linx) или к Олегу (olegich).
Мы с PNZ.

Криведко
Бывалый
Бывалый
Сообщения: 41
Зарегистрирован: 12 май 2021
Репутация: 6

Настройка камер в кабине

Сообщение Криведко »

Конфиги именно эрок - просто потому, что там камер много, или оно там особо кошерно как-то прописано? Просто у меня их пока ещё нет - не добрался до отечественных дополнений(вкуснятина на потом), но есть буржуйские паровозы, да и в каких-то электровозах немецких многокамерность была вроде. Монопенисуально, или эрки таки чем-то лучше?

DmitriSkif
Эксперт
Эксперт
Сообщения: 736
Зарегистрирован: 26 ноя 2018
Откуда: Минск
Репутация: 157

Настройка камер в кабине

Сообщение DmitriSkif »

Наделать тучу камер есть два способа, но в обоих обязательных две камеры создаются вот в такой файл в ControlContainerComponent/InteriorInterface/InteriorCamera:
TU7A_Interior.xml
Способ 1.
Все дополнительные пишутся в список Timeline entry, и переключаются последовательно, после двух основных. Так что если ты используешь классический метод (а другой пока использовали вроде только я и Костя "Радиомастер" для своего трамвая, насчёт вашего Фантомаса не в курсе), это будут не как в классике, камеры левого и правого крыла кабины, а любые.

Способ 2
Заключается в использовании RailVehicleComponent/AnimatedBodyNodeName. Сюда можно прицепить объект геометрии (или целую иерархическую группу, получив ходящего по двум или трем осям аватара) модели и управлять его анимацией при помощи контрола через интерфейс игрока или скриптом.
Этот способ позволяет сделать не только сколько угодно камер (координаты будут задаваться положением управляющих контролов), но и реализовать хождение по кабине или машинному отделению. Как пользоваться им, я в давние времена писал в блог на сайте-который-нельзя-называть. Также, эту точку можно использовать для ерунды вроде настраиваемой высоты сиденья.

Короче, резюме: в твоем случае нужно найти блок UpdateComponent/TimelineEntry для камер, и вписать туда столько дополнительных полей, сколько нужно камер.
UpdateComponent/windowCameraOffset
X - смещение относительно продольной оси локомотива, минус правое крыло, плюс левое
Y - высота от уровня головки рельса
Z - смещение относительно центра локомотива, плюс вперёд, минус назад

UpdateComponent/windowCameraDirection - углы поворота камеры. Три нуля - по горизонту вперёд, чтобы развернуть на 180, ставим
X = 0.0001 (опытным путём, чтобы не глючила при переключении)
Y = 0
Z = -1

Все остальные параметры понятны из Blueprint Editor-а даже без мануала. Открываешь пустой файл или бинарник и пробуешь.
У вас нет необходимых прав для просмотра вложений в этом сообщении.

Криведко
Бывалый
Бывалый
Сообщения: 41
Зарегистрирован: 12 май 2021
Репутация: 6

Настройка камер в кабине

Сообщение Криведко »

Это чё за сайт такой, который называть нельзя? Второй способ интересный, думаю, пригодится в будущем.

DmitriSkif
Эксперт
Эксперт
Сообщения: 736
Зарегистрирован: 26 ноя 2018
Откуда: Минск
Репутация: 157

Настройка камер в кабине

Сообщение DmitriSkif »

Ты сперва этот второй способ попробуй реализовать хотя бы для неподвижного узла модели и оцени результат. Думаю, он тебе понравится. Там еще и встроенная "шейная пружина" для камеры реализована, на которой камера раскачивается при перемещении узла или на неровностях пути.

Криведко
Бывалый
Бывалый
Сообщения: 41
Зарегистрирован: 12 май 2021
Репутация: 6

Настройка камер в кабине

Сообщение Криведко »

А что такое cCabCameraPosition d:id?

DmitriSkif
Эксперт
Эксперт
Сообщения: 736
Зарегистрирован: 26 ноя 2018
Откуда: Минск
Репутация: 157

Настройка камер в кабине

Сообщение DmitriSkif »

Поле с параметрами дополнительной камеры в UpdateComponent/TimelineEntry. Работай через Blueprint Editor, там всё понятно, если не в ладах с вёрсткой.
Можно в нём создать блок дополнительных камер, оттуда скопировать в редактируемый xml, если ты правишь чужой локомотив.

Там такие же параметры, как у основной камеры:
Camera offset - вектор расположения камеры на локомотиве
Camera Direction - вектор оптической оси камеры (направление взгляда)
Vertical directional freedom - угол поворота камеры по тангажу (кивок головы)
Horizontal directional freedom - угол поворота камеры по азимуту (поворот головы)
Transition In - плавный переход на эту камеру с предыдущей
Transition Out - плавный переход с этой камеры на следующую
Min FOV - угол зрения на минимальном приближении
Max FOV - угол зрения на максимальном приближении , эти два параметра косвенно отвечают за степень зума.

Криведко
Бывалый
Бывалый
Сообщения: 41
Зарегистрирован: 12 май 2021
Репутация: 6

Настройка камер в кабине

Сообщение Криведко »

Я просто не понял, откуда у этой фигни там какие-то значения берутся. Типа как <cCabCameraPosition d:id="71400">, вот цифры эти за что отвечают? С параметрами всё более-менее ясно.

DmitriSkif
Эксперт
Эксперт
Сообщения: 736
Зарегистрирован: 26 ноя 2018
Откуда: Минск
Репутация: 157

Настройка камер в кабине

Сообщение DmitriSkif »

Цифры как и везде задают значения параметров - иначе выражайтесь яснее :oops: .
Великовато число для смещения от центра локомотива - разве что это миллиметры, и то дофига, это же 71 метр. Предлагаю создать в BE собственный блюпринт, затем открыть его xml-редактором и сравнить значения с введенными. Так можно определить, как они пересчитываются и во что.

Криведко
Бывалый
Бывалый
Сообщения: 41
Зарегистрирован: 12 май 2021
Репутация: 6

Настройка камер в кабине

Сообщение Криведко »

Да не, я не про смещение
<cCabCameraPosition d:id="71410">
<CameraOffset>
<cRVector3>
<X d:type="sFloat32" d:alt_encoding="000000403333F33F" d:precision="string">-1.7</X>
<Y d:type="sFloat32" d:alt_encoding="0000006066660E40" d:precision="string">3.8</Y>
<Z d:type="sFloat32" d:alt_encoding="00000000000020C0" d:precision="string">-8</Z>
Добавлял несколько камер, выделенный параметр менял от фонаря. Так и не понял, нафига оно надо, но без этого не работает

Аватара пользователя
Damien Thorn
Профессор
Профессор
Сообщения: 1913
Зарегистрирован: 29 окт 2011
Откуда: Nowhere
Репутация: 1345

Настройка камер в кабине

Сообщение Damien Thorn »

Криведко, у каждого контроллера, параметра, узла есть свой идентификатор с номером. Это нужно для движка игры, простыми словами.
Криведко писал(а): параметр менял от фонаря
. При ручном редактирование, так и надо делать.

DmitriSkif
Эксперт
Эксперт
Сообщения: 736
Зарегистрирован: 26 ноя 2018
Откуда: Минск
Репутация: 157

Настройка камер в кабине

Сообщение DmitriSkif »

А, ты конкретно про ID.

Это уникальный идентификатор объекта в "мире" движка. Устраняет дубликаты сущностей. Он проставляется редактором, его трогать и изменять нельзя.

Аватара пользователя
Damien Thorn
Профессор
Профессор
Сообщения: 1913
Зарегистрирован: 29 окт 2011
Откуда: Nowhere
Репутация: 1345

Настройка камер в кабине

Сообщение Damien Thorn »

DmitriSkif, почему же нельзя? Если редактировать вручную (модифицировать чужую модель), то добавляя блоки в файле конфигурации, путем копипаст, изменяешь цифры вручную. Притом можно произвольное количество знаков ставить, главное избежать дублирования в этом документе. Проверено годами редактирования. То, что создается редактором, то править не нужно, там автоматом все. Но это при условии, что ты разработчик.

DmitriSkif
Эксперт
Эксперт
Сообщения: 736
Зарегистрирован: 26 ноя 2018
Откуда: Минск
Репутация: 157

Настройка камер в кабине

Сообщение DmitriSkif »

Ну мы про одно и то же, на самом деле.
  • Добавляешь новые руками? - проставляешь новые цифры руками, уникальные в пределах одной xml.
  • Редактируешь существующие? - не трогай нумерацию.

Ответить