Skip to content

Interactions

Sarah Augustinowski edited this page Oct 6, 2024 · 24 revisions

Interactions in the game

The offered ways of interactions depend upon your environment. SEE supports the following types of environments:

  • desktop with keyboard/mouse
  • gamepad and/or touchscreen
  • VR head mounted display with controllers
  • VR head mounted display with the leap motion sensor

The kind of environment a game is to be executed in can be defined in the Player Settings. The Player Settings is game object in the scene where a PlayerSettings component is attached to. Select that object in hierarchy of the scene editor and use the Unity Inspector to select one of the options in the drop-down box for the Player Input Type.

There are additional options you can set specifically for a VR environment (whether controllers should be visualized along with the player's hand in the game and whether hints on the controller's functions should be visualized).

NOTE: If you select a VR environment, you need to start Steam. Otherwise the controller will not be available in the game.

Desktop with keyboard/mouse

Direction of travel and viewpoint

The direction of movements is the center of the screen. In order to move, you hit the following keys:

  • W/Arrow up: move forward
  • S/Arrow down: move backward
  • A/Arrow left: move (side step) to the left
  • D/Arrow right: move (side step) to the right
  • Q: raise up
  • E: sink down
  • Shift: accelerate

The right mouse button allows you to change your viewpoint. Keep it pressed and move the mouse at the same time.

Boosting movements

Pressing the + key increases the base speed of movements and pressing the - key decreases it.

Showing metric charts

To enter the metric mode, press key M. Then a small control at the left lower corner appears consisting of two small boxes. Select either of the small box to create a new chart.

To leave the metric mode, press key M again. It works as toggle. If you re-enter the metric mode, all charts that you have created so far (and not being deleted by you), will be shown again.

More details can be found here.

Interacting with objects

  • Press 'LeftMouseButton' to select an object and deselect every other object. Hitting a non-city object will deselect everything

  • Press 'LeftControl+LeftMouseButton' to toggle the selection of an idividual object. Hitting a non-city object will do nothing

  • Press 'Escape' to deselect everything

  • Press 'Delete' while having atleast one object or Edge selected, to delete the selected object with all its attached children

  • Press '1' to switch to move mode

  • Press '2' to switch to rotate mode

  • While in move-mode, hold 'MiddleMouseButton' to drag the entire city

  • While in move-mode, hold 'LeftControl+MiddleMouseButton' to drag the hovered object

  • While in rotate-mode and having at least one object selected, hold 'MiddleMouseButton' to rotate the entire city around the center of the selected objects

  • While in move- or rotate-mode and moving/rotating, press 'Escape' to cancel moveing/rotating and reset the position/rotation to the previous state

  • While in move- or rotate-mode, press 'R' to reset position/rotation to the original position/rotation

  • While moving the city, hold 'LeftAlt' to snap to one of 8 predefined directions

  • While rotating the city, hold 'LeftAlt' to rotate in 45 degree steps

  • Scroll up or down to zoom into or out of the city relatively to the current mouse position

  • While having objects selected, press 'G' repeatedly to zoom towards those objects or back to the root

  • Press 'L' to toggle between the locked and free camera mode.

Zooming into composite objects

Composite objects consist of children which in turn may have children, too, and so on. Thus, composite object form a tree hierarchy of objects, for instance, directories may contain subdirectories, subdirectories may contain files, files may contain classes, classes may contain methods, etc. These composite objects can be zoomed into to see the details at the lower level. You can zoom into a selected object in a hierarchy by pressing key I (for "into") on the keyboard. To zoom out to the object that was shown just before you zoomed into one of its descendants, you press key O (for "out") by selecting any object in the hierarchy you want to zoom out again. To zoom back to the top-most level of the hierarchy, you press key R (for "reset"). Note that zooming uses animation. Until an animation is finished, all user input is ignored.

Open Help System

Press 'H' to open the Help System. Then choose a category.

VR controllers

The binding of controls on VR controllers can be changed by the user via Steam. Here we describe the default settings valid only if the user has not re-mapped the controls. Here you find a description on how to bind actions to the VR controllers yourself.

Direction of travel and viewpoint

Your direction of travel is the direction in which your left controller points. You can move by pressing the trigger of the right controller. The deeper you press this trigger, the faster you travel.

In addition to that, you can teleport yourself using the trackpads of both controllers.

Boosting movements

Interacting with objects

To enter the selection mode that allows you to select objects, hold the selection button (button A on the right controller by default; you can assign a different button in Steam using the action name "Select") for a short period of time (default 0.5 seconds) until a ray appears. Point this ray to the object you want to select using your selection controller (the right controller by default). When the ray hovers over a selected object, the object will be highlighted. To grab a selected object, use the "Grab" action on the right controller (by default, you need to fully pull the trigger of the right controller; you can re-assign the grab action button in Steam using the action name "Grab"). While you are holding an object by keeping the grab button pressed, the object follows the tip of the ray. If you want to draw the object closer to yourself, use the "Move" axis on the right controller (by default this is the joystick on the right controller, but it can be re-assigned using the action name "Move"). Moving the object along the line of the ray works in both directions using the forward or backward direction, respectively, of the move axis. To release a grabbed object, just release the grabbing button (by default you release the trigger on the right controller). If you want to cancel a selection or grabbing of an object, press the cancel button (by default button B on the right controller, but that can be re-assigned with Steam using the action name "Cancel"). The grabbed object will be moved back to its original position.

Zooming into composite objects

To zoom into inner objects in a composite object in the object hierarchy, you must first select the object you want to zoom into and then move the joystick on the zooming controller forward (the action bound as "Zoom" on the left controller in Steam by default). To zoom out to the object that was shown just before you zoomed into one of its descendants, you select any object in the hierarchy and then move the joystick backward. To zoom back to the top-most level of the hierarchy, you press the "Home" button on the zooming controller (the action "Home" bound in Steam to the controller; by default you press the joystick button). Note that zooming uses animation. Until an animation is finished, all user input is ignored.

Gamepad and Touchscreen

Direction of travel and viewpoint

The left joystick allows you to move forward/backward/left/right. The left trigger accelerates the speed. The direction of the movement is always the center of the screen. The right joystick changes the viewpoint.

Boosting movements

Pressing the X button increases the base speed of movements and pressing the Y button decreases it.

Interacting with objects

To select an object, it must be in the center of the screen. When you press the selection button (by default, the selection button A on the gamepad, but that can be re-assigned by the user). Upon successful selection, the selected object will be highlighted. To grab an object, the object must be selected first and the grabbing button must be kept pressed (by default, that is the right trigger on the gamepad; press it firmly). Again, the grabbed object will change its color to indicate that it is grabbed. To release a grabbed object, just release the grabbing button. You can move a grabbed object by moving yourself. To pull the grabbed object towards you, you can use the down button on the DPad of the gamepad. Pressing the up button on the DPad of the gamepad, pulls the object towards you. If you want to cancel a selection or grabbing, press the button B on the gamepad. Canceling grabbing releases the object and moves it back to the position where it was grabbed.

To turn on the selection mode, press button A. This button works as a toggle, that is, if you press it again, the selection mode is turned off again.

The currently selected object can be grabbed by pulling the right trigger. Releasing the trigger releases the currently held object again.

Selection and grabbing can be canceled by button B.

Zooming into composite objects

To zoom into inner objects in a composite object in the object hierarchy, you must first select the object you want to zoom into and then press the right button of the Dpad of the gamepad. To zoom out to the object that was shown just before you zoomed into one of its descendants, you select any object in the hierarchy and then press the left button of the Dpad of the gamepad. To zoom back to the top-most level of the hierarchy, you press the left bumper on the gamepad. Note that zooming uses animation. Until an animation is finished, all user input is ignored.