Руководство пользователя по настройке зеркал в City Car Driving (для мододелов) - City Car Driving (CCD) гайд

Авторы: qqqzoom, horunzhin.artem

Текстовая версия гайда на русском языке

Руководство пользователя по настройке зеркал заднего вида для машин игрока и обозначение положения головы водителя.

Аннотация

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

Введение

Для правильной отрисовки изображения в зеркалах заднего вида необходимо внести изменения в модели автомобилей, а именно в файлы «carLod0» и «saloon»:

  1. В «carLod0» — отсоединить корпуса боковых зеркал. В saloon отсоединяются корпуса боковых зеркал и корпус центрального зеркала заднего вида.
  2. «Зашить» отверстия, которые получаются после отсоединения.
  3. Присоединить корпуса зеркал обратно к исходному объекту.
  4. Назначить на корпуса зеркал новые шейдера — аналогичные тем, которые были изначально, но которые не будут визуализироваться для камер зеркал.
  5. В модель «saloon» добавить объект для правильного позиционирования головы.

Доработка модели для корректной работы зеркал заднего вида

  1. Открываем «carLod0». Отделяем (Detach) корпуса зеркал в отдельный объект.
    Доработка модели для корректной работы зеркал заднего вида (изображение 1) — Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)
    Доработка модели для корректной работы зеркал заднего вида (изображение 2) — Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)
  2. Зашиваем отверстия, которые получились в результате отсоединения.
    Доработка модели для корректной работы зеркал заднего вида (изображение 3) — Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)
  3. Присоединяем (Attach) корпус зеркала обратно к исходному объекту.
    Доработка модели для корректной работы зеркал заднего вида (изображение 4) — Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)
  4. Открываем редактор материалов и выбираем материал, который применён к объекту. В данном примере объект имеет три материала — три ID в «Multi/Sub-Object».
    Доработка модели для корректной работы зеркал заднего вида (изображение 5) — Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)

Далее:

  1. Добавляем новый «Material ID».
  2. Даём корректное название и назначаем ему материал «Nebula2».
  3. И в нем выбираем шейдер, который не будет визуализироваться в камерах зеркал. Если изначально объект имел шейдер «Car body color damageable» — например, корпуса боковых зеркал — тогда применяем шейдер «Car body color damageable (invisible in mirrors)» (в «.n2» файле этот шейдер имеет имя «CarCoverDmgInvisibleInMirrors»). Также если изначально объект имел шейдер «Car body color saloon» — например, центральное зеркало заднего вида — тогда применяем шейдер «Car body color saloon (invisible in mirrors)» (в «.n2» файле этот шейдер имеет имя «body_color_saloon_invisible_in_mirrors»).
  4. Назначаем все те же текстуры, которые соответствуют шейдеру, который был применён к объекту изначально.

Доработка модели для корректной работы зеркал заднего вида (изображение 6) — Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)

Пример добавления шейдера в Multi/Sub-object:

Пример добавления шейдера в Multi/Sub-object: (изображение 1) — Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)

Пример добавления шейдера в Multi/Sub-object: (изображение 2) — Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)

Пример добавления шейдера в Multi/Sub-object: (изображение 3) — Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)

Аналогичная операция производится в «saloon». А также добавляется ещё один материал «Material ID» — материал для центрального зеркала, который имеет шейдер «Car body color saloon» — новый материал будет иметь шейдер «Car body color saloon (invisible in mirrors)».

Пример добавления шейдера в Multi/Sub-object: (изображение 4) — Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)

Задаем место расположения головы водителя

В «saloon» добавляем сферу с радиусом=0.1 и количеством сегментов=10, задаём ей имя «headPosition». Устанавливаем ее в предполагаемое место положения головы водителя. Никакой материал применять к этой сфере не нужно.

Задаем место расположения головы водителя (изображение 1) — Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)

Устанавливаем ее опорную точку (pivot) в центр координат:

Задаем место расположения головы водителя (изображение 2) — Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)

После экспорта в «.n2» файлах добавятся строки, в которых прописаны наши шейдеры.

Пример

new nshapenode body_15
sel body_15
.setlocalbox -0.180511 0.464729 0.003055 0.114298 0.051918 0.060338
.settexture «DiffMap0» «textures:/cars/Hatchback/Hatchback_plastic_diff.tga»
.settexture «BumpMap0» «textures:/cars/Hatchback/Hatchback_plastic_bump.tga»
.settexture «DiffMap2» «textures:system/white.dds»
.settexture «DiffMap1» «textures:/cars/Hatchback/Hatchback_lmp.tga»
.settexture «EnvironmentMask» «textures:/cars/Hatchback/envmask_black.tga»
.setvector «MatSpecular» 0.500000 0.500000 0.500000 1.000000
.setfloat «MatSpecularPower» 32.000000
.setfloat «BumpScale» 1.000000
.setvector «DevicePanelFlagMask» 0.000000 0.000000 0.000000 0.000000
.setshader «body_color_saloon_invisible_in_mirrors»
.setmesh «home:export/meshes/cars/Hatchback/saloon.nvx2»
.setgroupindex 15
.setneedsvertexshader false
sel ..
new nshapenode body_16
sel body_16
.setlocalbox -0.174266 0.197846 -0.313226 0.992795 0.081444 0.111501
.settexture «DiffMap0» «textures:/cars/Hatchback/Hatchback_diff_x0.tga»
.settexture «DiffMap1» «textures:/cars/Hatchback/Hatchback_diffDamaged.tga»
.settexture «DiffMap2» «textures:/cars/Hatchback/Hatchback_parts.tga»
.settexture «BumpMap0» «textures:/cars/Hatchback/Hatchback_diff_x0.tga»
.settexture «BumpMap1» «textures:/cars/Hatchback/Hatchback_bumpDamaged.tga»
.setvector «MatSpecular» 0.500000 0.500000 0.500000 1.000000
.setfloat «MatSpecularPower» 32.000000
.setfloat «Intensity0» 0.500000
.setshader «CarCoverDmgInvisibleInMirrors«
.setmesh «home:export/meshes/cars/Hatchback/saloon.nvx2»
.setgroupindex 16
.setneedsvertexshader false

Корректировка вида в зеркалах заднего вида

Перед тем, как приступать к настройке изображения в зеркалах заднего вида, нужно в файле «cameras.xml», который лежит по пути «data\gamedata\cars\<My_car_name>«, прописать:

Корректировка вида в зеркалах заднего вида (изображение 1) — Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)

И в файле «viewports.xml», который лежит по пути «data\gamedata\cars\<My_car_name>«, прописать:

Корректировка вида в зеркалах заднего вида (изображение 2) — Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)

Где:

  • «FovCorrectionFactor» — коэффициент увеличения без VR.
  • «FovCorrectionFactorHMD» — коэффициент увеличения с VR.

Настройка масштаба изображения в зеркалах заднего вида

Для корректной настройки зеркал заднего вида нужно выставить в проекте разрешение экрана 1920×1080 и «запускать в окне».

Настройка масштаба изображения в зеркалах заднего вида (изображение 1) — Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)

Настройка масштаба изображения в зеркалах заднего вида (изображение 2) — Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)

После чего запустить свободное вождение, выбрав автомобиль, который нужно настроить, в «Старом районе» «Старого города».

Настройка масштаба изображения в зеркалах заднего вида (изображение 3) — Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)

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

Настройка масштаба изображения в зеркалах заднего вида (изображение 4) — Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)

Если размер автомобилей не совпадает с указанным на скриншоте выше, тогда в файле «viewports.xml» автомобиля нужно поменять значения «FovCorrectionFactor» и «FovCorrectionFactorHMD» у соответствующего зеркала заднего вида.

Настройка масштаба изображения в зеркалах заднего вида (изображение 5) — Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)

После изменения параметров необходимо выйти в меню. Только так изменения вступят в силу.

Настройка дефолтного положения зеркал заднего вида

После того, как масштаб в зеркалах заднего вида будет настроен, можно настроить и их положение. Для этого в файле «CarProperty.ini», который лежит по пути «data\gamedata\cars\<My_car_name>«, добавляем строки в раздел «[Mirrors]».

Настройка дефолтного положения зеркал заднего вида — Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)

Данные параметры задают прямоугольник, в котором находится зеркало заднего вида.

Координаты задаются относительно pivot автомобиля в системе -X; Z; Y, где Z это ось вверх.

После изменения параметров необходимо выйти из проекта. Только так изменения вступят в силу.

Text version of the guide «[For Modders] User Guide for Setting UpRear-View Mirrors for Player’s Cars and Positioning the Driver’s Head» in English

Abstract

This document is a guide for setting up rear-view mirrors and positioning the driver’s head for cars created and added to the simulator using the Steam Workshop.

Introduction

For the image to be correctly rendered in rear-view mirrors, the following modifications need to be made in car models, namely, carLod0 and saloon:

  • Detach side mirrors in carLod0. Detach side mirrors and the central rear-view mirror in saloon.
  • «Patch up» holes left after the detachment.
  • Attach mirrors back to the original object.
  • Set new shaders for mirrors similar to original ones, but not to be visualized for mirror cameras.
  • Add an object for correct head positioning to saloon.

2. Modifying the Model for Correct Rear-View Mirrors’ Functioning

Open carLod0. Detach the mirror into a separate object.

2. Modifying the Model for Correct Rear-View Mirrors’ Functioning (изображение 1) — Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)

2. Modifying the Model for Correct Rear-View Mirrors’ Functioning (изображение 2) — Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)

Patch up holes left after the detachment.

2. Modifying the Model for Correct Rear-View Mirrors’ Functioning (изображение 3) — Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)

Attach the mirror back to the original object.

2. Modifying the Model for Correct Rear-View Mirrors’ Functioning (изображение 4) — Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)

Open the material editor and choose the material applied to the object. In this example, the object has three materials — three IDs in Multi/Sub-Object.

2. Modifying the Model for Correct Rear-View Mirrors’ Functioning (изображение 5) — Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)

Next:

  1. Add new Material ID.
  2. Enter the correct name and set Nebula2 as the material.
  3. Choose a shader that will not be visualized in mirror cameras. If the object originally had the «Car body color damageable» shader — for example, side mirrors, — apply «Car body color damageable (invisible in mirrors)» (in the .n2 file this shader is named «CarCoverDmgInvisibleInMirrors«). Similarly, if the object originally had the «Car body color saloon» shader — for example, the central rear-view mirror, — apply «Car body color saloon (invisible in mirrors)» (in the .n2 file this shader is named «body_color_saloon_invisible_in_mirrors«).
  4. Set the same textures as for the shader that was originally applied to the object.

2. Modifying the Model for Correct Rear-View Mirrors’ Functioning (изображение 6) — Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)

Example of adding a shader in Multi/Sub-object:

2. Modifying the Model for Correct Rear-View Mirrors’ Functioning (изображение 7) — Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)

2. Modifying the Model for Correct Rear-View Mirrors’ Functioning (изображение 8) — Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)

2. Modifying the Model for Correct Rear-View Mirrors’ Functioning (изображение 9) — Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)

Repeat the above in saloon. Add one more Material ID for the central mirror, which has the «Car body color saloon» shader; the new material will have the «Car body color saloon (invisible in mirrors)» shader.

2. Modifying the Model for Correct Rear-View Mirrors’ Functioning (изображение 10) — Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)

Positioning the Driver’s Head

Add a sphere with a 0.1 radius and 10 segments in saloon, and name it «headPosition». Place it in the intended position of the driver’s head. Do not apply any material to this sphere.

Positioning the Driver’s Head (изображение 1) — Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)

Set its pivot to the center of coordinates:

Positioning the Driver’s Head (изображение 2) — Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)

After export, .n2 files will have new lines with your shaders.

Example:

new nshapenode body_15
sel body_15
.setlocalbox -0.180511 0.464729 0.003055 0.114298 0.051918 0.060338
.settexture «DiffMap0» «textures:/cars/Hatchback/Hatchback_plastic_diff.tga»
.settexture «BumpMap0» «textures:/cars/Hatchback/Hatchback_plastic_bump.tga»
.settexture «DiffMap2» «textures:system/white.dds»
.settexture «DiffMap1» «textures:/cars/Hatchback/Hatchback_lmp.tga»
.settexture «EnvironmentMask» «textures:/cars/Hatchback/envmask_black.tga»
.setvector «MatSpecular» 0.500000 0.500000 0.500000 1.000000
.setfloat «MatSpecularPower» 32.000000
.setfloat «BumpScale» 1.000000
.setvector «DevicePanelFlagMask» 0.000000 0.000000 0.000000 0.000000
.setshader «body_color_saloon_invisible_in_mirrors»
.setmesh «home:export/meshes/cars/Hatchback/saloon.nvx2»
.setgroupindex 15
.setneedsvertexshader false
sel ..
new nshapenode body_16
sel body_16
.setlocalbox -0.174266 0.197846 -0.313226 0.992795 0.081444 0.111501
.settexture «DiffMap0» «textures:/cars/Hatchback/Hatchback_diff_x0.tga»
.settexture «DiffMap1» «textures:/cars/Hatchback/Hatchback_diffDamaged.tga»
.settexture «DiffMap2» «textures:/cars/Hatchback/Hatchback_parts.tga»
.settexture «BumpMap0» «textures:/cars/Hatchback/Hatchback_diff_x0.tga»
.settexture «BumpMap1» «textures:/cars/Hatchback/Hatchback_bumpDamaged.tga»
.setvector «MatSpecular» 0.500000 0.500000 0.500000 1.000000
.setfloat «MatSpecularPower» 32.000000
.setfloat «Intensity0» 0.500000
.setshader «CarCoverDmgInvisibleInMirrors»
.setmesh «home:export/meshes/cars/Hatchback/saloon.nvx2»
.setgroupindex 16
.setneedsvertexshader false

Correcting the View in Rear-View Mirrors

Before correcting the image in rear-view mirrors, reprogram cameras.xml in data\gamedata\cars\<My_car_name> as follows:

Correcting the View in Rear-View Mirrors (изображение 1) — Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)

Reprogram viewports.xml in data\gamedata\cars\<My_car_name> as follows:

Correcting the View in Rear-View Mirrors (изображение 2) — Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)

FovCorrectionFactor is the magnification factor without VR, and FovCorrectionFactorHMD is the magnification factor with VR.

Setting the Image Scale in Rear-View Mirrors

For correct setting of rear-view mirrors, set the screen resolution to 1920×1080 and tick «Start in the window».

Setting the Image Scale in Rear-View Mirrors (изображение 1) — Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)

Setting the Image Scale in Rear-View Mirrors (изображение 2) — Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)

Then run free driving in the «Old District» of the «Old City» having chosen the car you want to set up.

Setting the Image Scale in Rear-View Mirrors (изображение 3) — Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)

Turn on virtual rear-view mirrors and check the size of rear-view cars in the parking lot.

Setting the Image Scale in Rear-View Mirrors (изображение 4) — Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)

If their size does not match that shown in the screenshot above, change FovCorrectionFactor and FovCorrectionFactorHMD of the relevant rear-view mirror in the car’s viewports.xml file.

Setting the Image Scale in Rear-View Mirrors (изображение 5) — Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)

After changing the parameters, exit to the menu. Only then the changes will take effect.

Setting the Default Position of Rear-View Mirrors

After setting the scale in rear-view mirrors, their position can be adjusted. To do this, add lines to the [Mirrors] section in CarProperty.ini in data\gamedata\cars\<My_car_name>.

Setting the Default Position of Rear-View Mirrors — Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)

These parameters set the rear-view mirror rectangle.

Set coordinates relative to the car’s pivot in X; Z; Y, where Z is the upward axis.

After changing the parameters, exit the project. Only then the changes will take effect.

Другие гайды авторов - qqqzoom, horunzhin.artem

Другие гайды, похожие на "Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)"

При каждом нажатии на ниже представленную кнопку, будут выводиться похожие гайды на "Руководство пользователя по настройке зеркал в City Car Driving (для мододелов)". Также для удобства поиска используйте ссылки на теги, которые расположены выше (в конце описания гайда).

Чтобы приступить к поиску, введите ваш запрос и нажмите клавишу «ENTER»