Настройка камер в кабине
Настройка камер в кабине
Нигде не нашёл информации по редактированию конфигов кабин. Объясните, как это делать? Вопрос не просто в изменении положения камеры, а в добавлении новых, как, например, в некоторых паровозах есть по 5 точек.
Настройка камер в кабине
Конфиги кабин ЭР1, ЭР2 поковыряй. Либо напрямую к авторам: к Диме (linx) или к Олегу (olegich).
Мы с PNZ.
Настройка камер в кабине
Конфиги именно эрок - просто потому, что там камер много, или оно там особо кошерно как-то прописано? Просто у меня их пока ещё нет - не добрался до отечественных дополнений(вкуснятина на потом), но есть буржуйские паровозы, да и в каких-то электровозах немецких многокамерность была вроде. Монопенисуально, или эрки таки чем-то лучше?
-
- Магистр
- Сообщения: 793
- Зарегистрирован: 26 ноя 2018
- Откуда: Минск
- Репутация: 184
Настройка камер в кабине
Наделать тучу камер есть два способа, но в обоих обязательных две камеры создаются вот в такой файл в ControlContainerComponent/InteriorInterface/InteriorCamera:
Все дополнительные пишутся в список Timeline entry, и переключаются последовательно, после двух основных. Так что если ты используешь классический метод (а другой пока использовали вроде только я и Костя "Радиомастер" для своего трамвая, насчёт вашего Фантомаса не в курсе), это будут не как в классике, камеры левого и правого крыла кабины, а любые.
Способ 2
Заключается в использовании RailVehicleComponent/AnimatedBodyNodeName. Сюда можно прицепить объект геометрии (или целую иерархическую группу, получив ходящего по двум или трем осям аватара) модели и управлять его анимацией при помощи контрола через интерфейс игрока или скриптом.
Этот способ позволяет сделать не только сколько угодно камер (координаты будут задаваться положением управляющих контролов), но и реализовать хождение по кабине или машинному отделению. Как пользоваться им, я в давние времена писал в блог на сайте-который-нельзя-называть. Также, эту точку можно использовать для ерунды вроде настраиваемой высоты сиденья.
Короче, резюме: в твоем случае нужно найти блок UpdateComponent/TimelineEntry для камер, и вписать туда столько дополнительных полей, сколько нужно камер.
UpdateComponent/windowCameraOffset
X - смещение относительно продольной оси локомотива, минус правое крыло, плюс левое
Y - высота от уровня головки рельса
Z - смещение относительно центра локомотива, плюс вперёд, минус назад
UpdateComponent/windowCameraDirection - углы поворота камеры. Три нуля - по горизонту вперёд, чтобы развернуть на 180, ставим
X = 0.0001 (опытным путём, чтобы не глючила при переключении)
Y = 0
Z = -1
Все остальные параметры понятны из Blueprint Editor-а даже без мануала. Открываешь пустой файл или бинарник и пробуешь.
Способ 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-а даже без мануала. Открываешь пустой файл или бинарник и пробуешь.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Настройка камер в кабине
Это чё за сайт такой, который называть нельзя? Второй способ интересный, думаю, пригодится в будущем.
-
- Магистр
- Сообщения: 793
- Зарегистрирован: 26 ноя 2018
- Откуда: Минск
- Репутация: 184
Настройка камер в кабине
Ты сперва этот второй способ попробуй реализовать хотя бы для неподвижного узла модели и оцени результат. Думаю, он тебе понравится. Там еще и встроенная "шейная пружина" для камеры реализована, на которой камера раскачивается при перемещении узла или на неровностях пути.
-
- Магистр
- Сообщения: 793
- Зарегистрирован: 26 ноя 2018
- Откуда: Минск
- Репутация: 184
Настройка камер в кабине
Поле с параметрами дополнительной камеры в UpdateComponent/TimelineEntry. Работай через Blueprint Editor, там всё понятно, если не в ладах с вёрсткой.
Можно в нём создать блок дополнительных камер, оттуда скопировать в редактируемый xml, если ты правишь чужой локомотив.
Там такие же параметры, как у основной камеры:
Camera offset - вектор расположения камеры на локомотиве
Camera Direction - вектор оптической оси камеры (направление взгляда)
Vertical directional freedom - угол поворота камеры по тангажу (кивок головы)
Horizontal directional freedom - угол поворота камеры по азимуту (поворот головы)
Transition In - плавный переход на эту камеру с предыдущей
Transition Out - плавный переход с этой камеры на следующую
Min FOV - угол зрения на минимальном приближении
Max FOV - угол зрения на максимальном приближении , эти два параметра косвенно отвечают за степень зума.
Можно в нём создать блок дополнительных камер, оттуда скопировать в редактируемый xml, если ты правишь чужой локомотив.
Там такие же параметры, как у основной камеры:
Camera offset - вектор расположения камеры на локомотиве
Camera Direction - вектор оптической оси камеры (направление взгляда)
Vertical directional freedom - угол поворота камеры по тангажу (кивок головы)
Horizontal directional freedom - угол поворота камеры по азимуту (поворот головы)
Transition In - плавный переход на эту камеру с предыдущей
Transition Out - плавный переход с этой камеры на следующую
Min FOV - угол зрения на минимальном приближении
Max FOV - угол зрения на максимальном приближении , эти два параметра косвенно отвечают за степень зума.
Настройка камер в кабине
Я просто не понял, откуда у этой фигни там какие-то значения берутся. Типа как <cCabCameraPosition d:id="71400">, вот цифры эти за что отвечают? С параметрами всё более-менее ясно.
-
- Магистр
- Сообщения: 793
- Зарегистрирован: 26 ноя 2018
- Откуда: Минск
- Репутация: 184
Настройка камер в кабине
Цифры как и везде задают значения параметров - иначе выражайтесь яснее .
Великовато число для смещения от центра локомотива - разве что это миллиметры, и то дофига, это же 71 метр. Предлагаю создать в BE собственный блюпринт, затем открыть его xml-редактором и сравнить значения с введенными. Так можно определить, как они пересчитываются и во что.
Великовато число для смещения от центра локомотива - разве что это миллиметры, и то дофига, это же 71 метр. Предлагаю создать в BE собственный блюпринт, затем открыть его xml-редактором и сравнить значения с введенными. Так можно определить, как они пересчитываются и во что.
Настройка камер в кабине
Да не, я не про смещение
<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>
Добавлял несколько камер, выделенный параметр менял от фонаря. Так и не понял, нафига оно надо, но без этого не работает
<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
- Профессор
- Сообщения: 2060
- Зарегистрирован: 29 окт 2011
- Откуда: Nowhere
- Репутация: 1446
Настройка камер в кабине
Криведко, у каждого контроллера, параметра, узла есть свой идентификатор с номером. Это нужно для движка игры, простыми словами.
. При ручном редактирование, так и надо делать.
-
- Магистр
- Сообщения: 793
- Зарегистрирован: 26 ноя 2018
- Откуда: Минск
- Репутация: 184
Настройка камер в кабине
А, ты конкретно про ID.
Это уникальный идентификатор объекта в "мире" движка. Устраняет дубликаты сущностей. Он проставляется редактором, его трогать и изменять нельзя.
Это уникальный идентификатор объекта в "мире" движка. Устраняет дубликаты сущностей. Он проставляется редактором, его трогать и изменять нельзя.
- Damien Thorn
- Профессор
- Сообщения: 2060
- Зарегистрирован: 29 окт 2011
- Откуда: Nowhere
- Репутация: 1446
Настройка камер в кабине
DmitriSkif, почему же нельзя? Если редактировать вручную (модифицировать чужую модель), то добавляя блоки в файле конфигурации, путем копипаст, изменяешь цифры вручную. Притом можно произвольное количество знаков ставить, главное избежать дублирования в этом документе. Проверено годами редактирования. То, что создается редактором, то править не нужно, там автоматом все. Но это при условии, что ты разработчик.
-
- Магистр
- Сообщения: 793
- Зарегистрирован: 26 ноя 2018
- Откуда: Минск
- Репутация: 184
Настройка камер в кабине
Ну мы про одно и то же, на самом деле.
- Добавляешь новые руками? - проставляешь новые цифры руками, уникальные в пределах одной xml.
- Редактируешь существующие? - не трогай нумерацию.