Приветствую Вас Гость!
Пятница, 29.03.2024, 14:50
Главная | Регистрация | Вход | RSS

[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 8
  • 1
  • 2
  • 3
  • 7
  • 8
  • »
FS Форум » Моделирование » Скриптинг » Разбираем устройство XML-файла (На примере трактора из SDK)
Разбираем устройство XML-файла
BeckarДата: Среда, 15.12.2010, 20:30 | Сообщение # 1
Группа: Администраторы
Сообщений: 692
Статус: Offline
Откройте папку C:\Program Files\Farming Simulator 2011\sdk и разархивируйте архив sampleMod.zip. В появившейся папке найдите и откройте файлы lizard2000.i3d и lizard2000.xml.

Первый откроется в GIANTS Editor, второй в блокноте. Нам нужны оба, чтобы понять существующую между ними взаимосвязь.
Начнем с файла XML. Вооружимся англо-русским словарем и попробуем разобраться – какая строчка за что отвечает?

В первой - прописаны номер версии, кодировка и значение автономности (в данном случае стоит NO-нет, а в XML не относящемся к технике, вообще отсутствует).

Вторая – тип транспортного средства, у нас lizard2000.

Третья – копирайт. Авторские права и все такое.

Далее – name (наименование транспортного средства Lizard 2000, оно будет отображаться в игре).

И важная строка < filename>lizard2000.i3d - путь к файлу i3d, тому, что открыт у нас в GIANTS Editor и за оживление которого отвечает разбираемый нами файл. То есть, не обязательно называть сделанную вами модель МТЗ – Лизардом, можно вписать сюда имя того файла, который у Вас есть.

Переходим к колесам – wheels.

autoRotateBackSpeed – autoRotateBackSpeed- скорость возврата колес в исходное положение после поворота. Это общий параметр для всех колес, дальше идут значения для каждого колеса по отдельности. Каждая строчка отвечает за свое колесо. Чтобы понять за какое именно, посмотрите на картинку.

Красные цифры в scenegraph, это порядковые номера деталей модели или индексы. Для колес, они называются repr, для остальных деталей так и есть – index. Считать очень просто: начиная с нуля, все подряд детали и группы. Каждая группа свой состав тоже начинает с нуля.

Итак, получаем: переднее правое колесо (frontWheelsRight) имеет индекс (repr) - 0, переднее левое – 1 и т.д. Внешняя камера (outdoorCamera) имеет индекс 4|0|0.

Если индекс в XML не будет соответствовать порядковому номеру в i3d – деталь работать не будет.

Теперь, рассмотрим строчку переднего колеса, правого с repr="0".

Скорость вращенияrotSpeed. Перевод говорит сам за себя, тут все понятно, чем выше цифры – тем быстрее поедем.

Угол поворота колесаrotMax и rotMin, вроде тоже понятно, тем более для задних (не поворачивающихся) колес это значение отсутствует.

Режим движенияdriveMode. Я затрудняюсь сказать, за что отвечает этот параметр, на тех модах, в которых я ковырялся, везде стоит 2.

Радиусradius, очень важный параметр – радиус колеса. Присмотримся к задним и передним колесам. На больших задних - цифры больше, на передних меньше. Если поменять цифры местами – задние будут тонуть в земле, а передние вращаться в воздухе. В общем, радиус должен соответствовать детали.

Ход подвескиsuspTravel, упругостьspring и амортизацияdamper, это параметры, отвечающие за то, насколько прыгуча будет модель на кочках.

И наконец, масса колесаmass. Если прибавим значение - модель станет тяжелее, но понадобится более мощный двигатель. Так как с разбором колес закончили, к нему и перейдем.

 
BeckarДата: Среда, 15.12.2010, 23:24 | Сообщение # 2
Группа: Администраторы
Сообщений: 692
Статус: Offline
Двигательmotor.

Минимальные об / мин - minRpm="300", вроде понятно – связано с минимальной скоростью. Дальше, у нас целых три значения для максимальных оборотов - maxRpm="470 1020 4000".

Мы помним, что в игре у нас трехскоростная коробка передач, вот эти цифры и соответствуют каждой скорости – от первой до третьей. Причем первая, это еще и скорость автопилота – поставим больше, наемный работник будет быстрее выполнять свою работу, а мы – меньше ему платить. У него же повременка!

Тормозное усилиеbrakeForce. Поставим больше – быстрее остановимся.

Передаточные числа коробки передач: вперед – forwardGearRatio и назад – backwardGearRatio.

Соотношение дифференциалаdifferentialRatio. Пардон, это занятие я прогулял.

Диапазон плавного уменьшения оборотовrpmFadeOutRange.

Дальше у нас идет таблица из двух колонок: крутящий моментtorque.


< torque rpm="900" torque="4"/>
< torque rpm="2500" torque="5"/>
< torque rpm="3300" torque="7"/>
< torque rpm="3580" torque="8"/>
< torque rpm="4000" torque="9"/>

Изменяя цифровые значения в обеих колонках, можем увеличивать или уменьшать мощность двигателя и соответственно – скорость.

Оп-па! Я все напутал! Расписал здесь настройки двигателя с другой модели. Ну, ничего – пригодится.

А в нашем тракторе, они немного другие:

Максимальный крутящий моментmaxTorques

Шкала тормозных усилийlowBrakeForceScale

Скоростной лимит тормозных усилийlowBrakeForceSpeedLimit и accelerations (ускорение), остальные настраиваемые параметры такие же, как описаны выше.

А вот с табличкой крутящего момента проще – там всего одна строка. Остальные строки, по-видимому, заменяет параметр accelerations, в нем четыре единички.

Еще на этом турбо-тракторе добавлена таблица backwardTorqueзадний крутящий момент и

скорость ускоренияaccelerationSpeed с двумя настраиваемыми параметрами:

максимальное ускорениеmaxAcceleration и

замедлениеdeceleration.

С двигателем закончили, остался запас топливаfuelCapacity, его расходfuelUsage и

сила притяженияdownForce (для нее всегда одно и то же значение -4).

Теперь можно перейти к настройке камер.

 
BeckarДата: Четверг, 16.12.2010, 01:40 | Сообщение # 3
Группа: Администраторы
Сообщений: 692
Статус: Offline
Камерыcameras

Счет - count="2"> - у нас две камеры, внешняяoutdoorCamera и внутренняяindoorCamera с индексами index="4|0|0" и index="4|1" соответственно. Посмотрим, что мы можем изменить в их настройках.

Вращение - rotatable="true", стоит значение true, значит камера будет вращаться, если поставим false – «прибьем» ее в одну точку.

Вращение узлаrotateNode="4", индекс группы, в которой находится outdoorCamera.

Ограничение - limit="true" для первой камеры (есть ограничение) и limit="false" для второй (ограничений нет), поэтому у нас дальнейшая строка для внешней камеры заполнена, а для внутренней – нет (нули).

Минимальное и максимальное вращение по оси ХrotMinX и rotMaxX

Минимальная и максимальная дистанция приближения - transMin="4" иtransMax="40". Если поставим transMin="0,1" – будем с внешней камеры влетать в кабину, а если поставим transMax="150", будем иметь возможность рассматривать трактор с высоты птичьего полета.

tipCamera – никаких настроек не имеет, просто прописан ее индекс.

С камерами почти разобрались, дальше будем рыться в настройках света. Хотя, рыться там особо не в чем. В файле просто прописано количество источников света - два (передний и задний) и их индексы. А также индексы групп конусов - lightCone и корон -lightCorona.

Строка размеровsize с шириной – width, длиной – length и смещением длины lengthOffset. За размеры чего именно она отвечает, я так и не понял.

Дальше мы видим строки с индексом точки выхода - < exitPoint index="7" /> и индексом руля и скоростью его поворота - < steering index="8|0" rotationSpeed="6"/>

Ввод узлов ссылок - < enterReferenceNode index="0>" /> параметр во всех модах одинаков, поэтому просто отметим, что он есть и перейдем к точкам зацепления прицепов - trailerAttacherJoints

< trailerAttacherJoints>
< trailerAttacherJoint index="13" />
< trailerAttacherJoint index="14" low="true" />
< /trailerAttacherJoints>

Здесь просто прописаны индексы и установлено значение true для «низа» нижней точки.

Если во вторую строку дописать maxRotLimit="5 150 10" (цифры могут быть другими) – можно будет менять угол излома прицепа. В данном случае число 150 - это угол излома вправо-влево, 5 и 10 - вверх и вниз.

 
VVPutinДата: Четверг, 16.12.2010, 11:11 | Сообщение # 4
Ударник- Модокопатель
Группа: Администраторы
Сообщений: 578
Репутация: 90
Статус: Offline
Beckar, Большое спасибо за информацию,позже надо будет "помучатся" :)Начинаю разрываться, хочется модами заняться, а карта держит

Сообщение отредактировал VVPutin - Четверг, 16.12.2010, 11:13
 
BeckarДата: Четверг, 16.12.2010, 13:08 | Сообщение # 5
Группа: Администраторы
Сообщений: 692
Статус: Offline
Следующий абзац содержит пути к звуковым файлам для:

Звук цепляемого прицепа - attachSound

Звук стартераmotorStartSound

Звук двигателя на холостых оборотахmotorSound

Звук двигателя в движенииmotorSoundRun

Звук двигателя при окончании работы - motorStopSound

и их настройки – pitchOffset (шаг смещения), pitchScale (шаг шкалы), pitchMax (максимальный шаг) и volume (громкость).

Еще чуть ниже - < honkSound file="$dataS2/sounds/horn.wav" client="$dataS2/sounds/horn3D.wav" volume="1" radius="50" innerRadius="20" /> (путь к файлу и настройки звукового сигнала).

Система выхлопных частиц (дым из выхлопной трубы)exhaustParticleSystems.

В этой модели, выхлоп находится непосредственно в файле трактора, поэтому в абзаце прописано только количество (по числу выхлопных труб) – 2, порядковые номера и путь к файлу. В других моделях могут быть прописаны координаты, для вычисления которых требуются дополнительные «пляски с бубнами».

Точка подключения прицепных устройств (навеска)attacherJoints.

Здесь, в отличие от прицепов, настроек гораздо больше:

Углы поворота – maxRot, maxTransLimit, maxRotLimit, по три цифры настроек -0 0 0 и время воспроизведения moveTime (длительность работы навески при поднятии оборудования).

Основание плеча (нижний рычаг)bottomArm с настройкой шкалы Z ?
Верхний рычаг с той же настройкой.

И остается у нас в файле фермерcharacterNode с настройкой какой-то своей камеры и
триггер, открывающий автоматические ворота и шлагбаумыaiTrafficCollisionTrigger, никаких настроек не имеющий.

Последний параметр в этом файле – Компоненты - components , количество которых равно 1 и где можно настроить центр массы - centerOfMass и Решающее устройство числа повторений – solverIterationCount не совсем понятен, но если он везде есть – значит нужен.

Ну вот, с турботрактором закончили. Если я где-то ошибся в переводе или просто ошибся – поправляйте, я внесу изменения.

 
stinger580Дата: Вторник, 21.12.2010, 16:21 | Сообщение # 6
Группа: Мастера
Сообщений: 58
Репутация: 1
Статус: Offline
спасибо, супер!
неплохо бы еще продолжить тему с описанием погрузчиков, прицепов и бортовых машин smile
 
gumbeikaДата: Суббота, 25.12.2010, 21:54 | Сообщение # 7
Группа: Мастера
Сообщений: 318
Репутация: 34
Статус: Offline
Beckar а где находятся крышка глушителя XML?

Заходите на мой сайт http://tractora.ucoz.ru/
Мой канал YouTube
 
london1Дата: Воскресенье, 26.12.2010, 23:55 | Сообщение # 8
Группа: Техники
Сообщений: 37
Репутация: 0
Статус: Offline
да еще хочется о наполняемости для грузовиков хочется узнать smile
 
BeckarДата: Вторник, 28.12.2010, 11:51 | Сообщение # 9
Группа: Администраторы
Сообщений: 692
Статус: Offline
Quote (gumbeika)
Beckar а где находятся крышка глушителя XML?

Посчитай какой индекс она имеет в i3d и найди его в XML.
 
gumbeikaДата: Среда, 29.12.2010, 13:01 | Сообщение # 10
Группа: Мастера
Сообщений: 318
Репутация: 34
Статус: Offline
Beckar конвертнул мтз-1221..Появился в магазине и покупается.Не могу завести его. Ls-09 заводился кнопкой 4..а здесь нет..Где xml смотреть? И можно сделать чтоб заводился автоматом..

Заходите на мой сайт http://tractora.ucoz.ru/
Мой канал YouTube
 
BeckarДата: Среда, 29.12.2010, 16:53 | Сообщение # 11
Группа: Администраторы
Сообщений: 692
Статус: Offline
Quote (gumbeika)
Beckar конвертнул мтз-1221..Появился в магазине и покупается.Не могу завести его. Ls-09 заводился кнопкой 4..а здесь нет..Где xml смотреть? И можно сделать чтоб заводился автоматом..

Поищи в modDesk.xml примерно такие строки:
Code
inputBindings>
      <input name="ACCELERATE" key="KEY_KP_plus" button="" />
         <input name="DECELERATE" key="KEY_KP_minus" button="" />
         <input name="ZUENDUNG" key1="KEY_6" button="" />
   <input name="HUPE" key="KEY_5" button="" />
   <input name="RADIO" key="KEY_r" button="" />
     </inputBindings>

Здесь за старт двигателя отвечает < input name="ZUENDUNG" key1="KEY_6" button="" />, у тебя будет стоять 4 - поменяй на другую. Автостарт нужно искать где-то в LUA.
 
gumbeikaДата: Среда, 29.12.2010, 22:21 | Сообщение # 12
Группа: Мастера
Сообщений: 318
Репутация: 34
Статус: Offline
У меня завелся мтз-1221..но нет звука двигателя..Что надо исправить?

Заходите на мой сайт http://tractora.ucoz.ru/
Мой канал YouTube
 
BeckarДата: Среда, 29.12.2010, 22:49 | Сообщение # 13
Группа: Администраторы
Сообщений: 692
Статус: Offline
gumbeika, путь к звуковому файлу motorSound file ="data/vehicles/steerable/deutz/combine_idle.wav"
Эта строка к звукам 2011, у тебя прописан путь в 2009.
 
gumbeikaДата: Среда, 29.12.2010, 23:05 | Сообщение # 14
Группа: Мастера
Сообщений: 318
Репутация: 34
Статус: Offline
Beckar спасибо!!! Все работает...

Заходите на мой сайт http://tractora.ucoz.ru/
Мой канал YouTube
 
AleksBamДата: Четверг, 30.12.2010, 10:51 | Сообщение # 15
Группа: Мастера
Сообщений: 72
Репутация: 12
Статус: Offline
Beckar, отличная тема по скриптам! А ещё лучше - твои разъяснения. Спасибо!
 
FS Форум » Моделирование » Скриптинг » Разбираем устройство XML-файла (На примере трактора из SDK)
  • Страница 1 из 8
  • 1
  • 2
  • 3
  • 7
  • 8
  • »
Поиск:

Для добавления необходима авторизация