City Car Driving Guide

[For modders] How to setup GUI into VR-headset for City Car Driving

[For modders] How to setup GUI into VR-headset

Overview

How to setup GUI into VR-headset

Abstract

This document is a manual for configuring the graphical user interface in virtual reality goggles for cars created and added to the simulator using the Steam workshop.

GUI configuring in VR goggles

The graphical user interface (GUI) for VR headsets is partly projected on the windscreen and partly shown on a special tablet in «City Car Driving. Home Edition». The instructions on configuring the GUI for the user’s cars are given below.

Head-up GUI

The following head-up GUI items are added in the VR environment:

  • instructor messages;
  • repair progress bar;
  • transmission;
  • factor messages for passenger transportation.

Their position, orientation and size are configured separately for each car and stored in locations with the following paths:

  • “dataguiccdlayoutscars<CAR_NAME>WindowMessage.vr.ini”;
  • “dataguiccdlayoutscars<CAR_NAME>WindowSubTaskProgressBar.vr.ini”;
  • “dataguiCommonlayoutstransmissionscars<CAR_NAME>WindowTransmissionHMD.vr.ini”;
  • “dataguiccdlayoutscars\<CAR_NAME>WindowSatisfactionMessageEvent.vr.ini”.

You have to create “WindowSatisfactionMessageEvent.vr.ini” yourself.

The content of these files has the following structure:

[VR] Height = 0.5 Position = 0.5; 0.5; -1.5 Orientation = 0; 10; 20

“Height” is measured in meters, and width is calculated automatically using the aspect ratio of the original window.
“Position” is position in the car space measured in meters.
“Orientation” is orientation measured in meters.

These parameters can be edited in the file or directly in the software using console commands (Table 1):

Table 1. List of console commands for parameter editing

Console command
Action
vrw_startedit “<window_name>”
Activates an edit mode for the window with the specified name. If no window with such name is registered, shows an error message on the console. If the window is registered, but hidden, also shows an error message. If an edit mode for another window is active when the command is used, such edit mode is stopped as with the command “vwr_stopedit”.

Windows have the following names:
• instructor message — “WindowMessage”;
• repair progress bar — “WindowSubTaskProgressBar”;
• transmission — “Transmission”.

vrw_stopedit
Deactivates the edit mode for the current window. Invokes the change storage method in the window for changes made in window coordinates.
vrw_abortedit
Deactivates the edit mode for the current window. Invokes the coordinate update method using the coordinates from the configuration file.
vrw_clear
Invokes the coordinate update method using the coordinates from the configuration file.
vrw_showposition
Obtains the position of the currently edited window and shows it on the console.
vrw_showorientation
Obtains the orientation of the currently edited window and shows it on the console.
vrw_showheight
Obtains the height of the currently edited window and shows it on the console.
vrw_setposition “<position_vector>”
Sets the entered position in the currently edited window.
vrw_setorientation “<orientation_vector>”
Sets the entered orientation in the currently edited window.
vrw_setheight “<height>”
Sets the entered height in the currently edited window.

The following key combinations can also be used for configuring visual parameters (Table 2):

Table 2. Key combinations for configuring visual parameters

Key combination
Action
“Numpad 8”
Move the window up.
“Numpad 2”
Move the window down.
“Numpad 4”
Move the window left relative to the car cabin.
“Numpad 6”
Move the window right relative to the car cabin.
“Numpad 7”
Move the window forwards relative to the car cabin.
“Numpad 1”
Move the window backwards relative to the car cabin.
“Numpad 9”
Increase the window height (width is adjusted based on the aspect ratio).
“Numpad 3”
Decrease the window height (width is adjusted based on the aspect ratio).
“RCtrl + Numpad 8”
Turn the window about the transverse axis of the cabin (the second axis of the coordinate “Orientation”) with the upper edge away from oneself.
“RCtrl + Numpad 2”
Turn the window about the transverse axis of the cabin (the second axis of the coordinate “Orientation”) with the upper edge towards oneself.
“RCtrl + Numpad 4”
Turn the window left about the vertical axis of the cabin (the third axis of the coordinate “Orientation”).
“RCtrl + Numpad 6”
Turn the window right about the vertical axis of the cabin (the third axis of the coordinate “Orientation”).
“RCtrl + Numpad 1”
Turn the window counterclockwise about the longitudinal axis of the cabin (the first axis of the coordinate “Orientation”).
“RCtrl + Numpad 3”
Turn the window clockwise about the longitudinal axis of the cabin (the first axis of the coordinate “Orientation”).
“Numpad +”
Increase the speed of motion/scaling/turning by 1.5.
“Numpad –”
Decrease the speed of motion/scaling/turning by 1.5.

Recommended configuration methods

As instructor and progress bar messages are shown on the screen for a short time, there are some recommendations for their configuration.
To configure instructor messages, it is convenient to use car failure messages in case of an abnormal technical situation, as such message is shown on the screen for an unlimited period of time.
To configure progress bar, the console should first be invoked, and the command “vrw_startedit <WindowSubTaskProgressBar>”, entered. Then car repair is started, during which the pause mode is activated, and the item can be edited.

GUI projected onto a tablet

The position of GUI items on the tablet screen is fixed for all cars, but the location of the tablet and its appearance can be configured.
These settings are defined separately for each car in the file “datagamedatacars<CAR_NAME>CarProperty.ini” as follows:

[HMD] TabletModel = “cars/common/tablet_01_left” TabletPosition = –0.005; 0.075; –0.532 TabletLookAt = –0.006; 0.074; –0.533

“TabletModel” — path to n2 file of the tablet model relative to the folder “export/meshes” of the software’s root directory without indicating the extension. If you want to use your tablet model, it must be created and placed at the address: “export/meshes/cars/<CAR_NAME>”.
“TabletPosition” — navigator’s position in the car interior.
“TabletLookAt” — tablet’s orientation in the car interior.

SteamSolo.com