.. _controls: Controls ******** This section describes the controls of Gaia Sky. Keyboard controls ================= To check the most up-to-date controls go to the ``Controls`` tab in the preferences window. Here are the default keyboard controls depending on the current camera mode. Learn more about camera modes in the :ref:`camera-modes` section. Keyboard mappings ----------------- The keyboard mappings are stored in an internal file called ``keyboard.mappings`` (`link `__). If you want to edit the keyboard mappings, copy the file it into ``$GS_CONFIG/mappings/`` and edit it. This overrides the default internal mappings file. The file consists of a series of ``=`` entries. For example: .. code:: # Help action.help = F1 action.help = H # Exit action.exit = ESC # Home action.home = HOME # Preferences action.preferences = P #action.playcamera = C The available actions are defined in this `I18n file here `__. You can find the current keyboard mappings and the actions they are associated with in the controls settings window within Gaia Sky. .. figure:: img/ui/prefs/controls.jpg :align: center The controls settings in Gaia Sky .. _keyboard-focus-free-mode: Focus and free camera modes --------------------------- These keyboard controls apply to the focus mode and also to the free mode. +--------------------------------------------------------------+---------------------------------------------------+ | Key(s) | Action | +==============================================================+===================================================+ | :guilabel:`↑` | Camera forward | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`↓` | Camera backward | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`→` | Rotate/yaw right | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`←` | Rotate/yaw left | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`Home` | Back to Earth (or any other home object) | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`Tab` | Toggle minimap | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`Ctrl` + :guilabel:`r` | Reset time to current | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`Num 0` or :guilabel:`0` | Free camera | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`Num 1` or :guilabel:`1` | Focus camera | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`Num 2` or :guilabel:`2` | Game mode | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`Num 3` or :guilabel:`3` | Gaia scene mode | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`Num 4` or :guilabel:`4` | Spacecraft mode | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`Num 5` or :guilabel:`5` | Gaia FOV1 camera | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`Num 6` or :guilabel:`6` | Gaia FOV2 camera | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`Num 7` or :guilabel:`7` | Gaia FOV1 and FOV2 camera | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`Ctrl` + :guilabel:`w` | New keyframe | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`Ctrl` + :guilabel:`k` | Panorama mode | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`Space` | Pause/resume time | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`F1` | Help dialog | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`F5` | Take screenshot | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`F6` | Start/stop frame output mode | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`F11` | Toggle fullscreen/windowed mode | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`Ctrl` + :guilabel:`f` or :guilabel:`f` | Search dialog | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`Esc` or :guilabel:`q` | Quit application | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`p` | Open preferences dialog | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`h` | Open help dialog | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`r` | Run script dialog | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`c` | Run camera path file dialog | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`-` | Decrease limiting magnitude | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`+` | Increase limiting magnitude | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`,` | Divide time warp by two | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`.` | Double time warp | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`*` | Reset limiting magnitude | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`Shift` + :guilabel:`b` | Toggle constellation boundaries | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`Shift` + :guilabel:`c` | Toggle constellation lines | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`Shift` + :guilabel:`e` | Toggle ecliptic grid | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`Shift` + :guilabel:`g` | Toggle galactic grid | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`Shift` + :guilabel:`l` | Toggle labels | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`Shift` + :guilabel:`m` | Toggle moons | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`Shift` + :guilabel:`o` | Toggle orbits | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`Shift` + :guilabel:`p` | Toggle planets | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`Shift` + :guilabel:`q` | Toggle equatorial grid | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`Shift` + :guilabel:`s` | Toggle stars | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`Shift` + :guilabel:`t` | Toggle satellites | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`Shift` + :guilabel:`v` | Toggle star clusters | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`Shift` + :guilabel:`h` | Toggle meshes | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`Shift` + :guilabel:`r` | Toggle recursive grid | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`Shift` + :guilabel:`u` | Expand/collapse control panel | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`Ctrl` + :guilabel:`u` | Toggle UI completely (hide/show user interface) | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`Ctrl` + :guilabel:`d` | Toggle debug info | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`Ctrl` + :guilabel:`s` | Toggle stereoscopic mode | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`Ctrl` + :guilabel:`Shift` + :guilabel:`s` | Switch between stereoscopic profiles | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`Ctrl` + :guilabel:`k` | Toggle 360 panorama mode | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`Ctrl` + :guilabel:`Shift` + :guilabel:`k` | Switch between 360 projections | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`Ctrl` + :guilabel:`Shift` + :guilabel:`g` | Toggle galaxy renderer | +--------------------------------------------------------------+---------------------------------------------------+ .. _keyboard-spacecraft-mode: Spacecraft mode --------------- These controls apply only to the spacecraft mode. +--------------------------------------------------------------+---------------------------------------------------+ | Key(s) | Action | +==============================================================+===================================================+ | :guilabel:`w` | Apply forward thrust | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`s` | Apply backward thrust | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`a` | Roll to the left | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`d` | Roll to the right | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`k` | Stop spaceship automatically | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`l` | Stabilize spaceship automatically | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`↑` | Decrease pitch angle | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`↓` | Increase pitch angle | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`←` | Increase yaw angle | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`→` | Decrease yaw angle | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`PgUp` | Increase engine power by a factor of 10 | +--------------------------------------------------------------+---------------------------------------------------+ | :guilabel:`PgDown` | Decrease engine power by a factor of 10 | +--------------------------------------------------------------+---------------------------------------------------+ .. _mouse-controls: Mouse controls ============== Here are the default mouse controls for the focus and free :ref:`camera-modes`. The other modes do not have mouse controls. .. _mouse-focus-mode: Focus mode ---------- +----------------------------------------+-----------------------------------------------------------------+ | Mouse + keys | Action | +========================================+=================================================================+ | `L-MOUSE DOUBLE CLICK` | Select focus object | +----------------------------------------+-----------------------------------------------------------------+ | `L-MOUSE SINGLE CLICK` | Stop all rotation and translation movement | +----------------------------------------+-----------------------------------------------------------------+ | `L-MOUSE` + `DRAG` | Apply rotation around focus | +----------------------------------------+-----------------------------------------------------------------+ | `L-MOUSE` + :guilabel:`Shift` + `DRAG` | Camera roll | +----------------------------------------+-----------------------------------------------------------------+ | `R-MOUSE` + `DRAG` | Pan view freely from focus | +----------------------------------------+-----------------------------------------------------------------+ | `M-MOUSE` + `DRAG` or `WHEEL` | Move towards/away from focus | +----------------------------------------+-----------------------------------------------------------------+ .. _mouse-free-mode: Free mode --------- +----------------------------------------+-----------------------------------------------------------------+ | Mouse + keys | Action | +========================================+=================================================================+ | `L-MOUSE DOUBLE CLICK` | Select object as focus (changes to focus mode) | +----------------------------------------+-----------------------------------------------------------------+ | `L-MOUSE SINGLE CLICK` | Stop all rotation and translation movement | +----------------------------------------+-----------------------------------------------------------------+ | `L-MOUSE` + `DRAG` | Pan view | +----------------------------------------+-----------------------------------------------------------------+ | `L-MOUSE` + :guilabel:`Shift` + `DRAG` | Camera roll | +----------------------------------------+-----------------------------------------------------------------+ | `M-MOUSE` + `DRAG` or `WHEEL` | Forward/backward movement | +----------------------------------------+-----------------------------------------------------------------+ .. _mouse-game-mode: Game mode --------- Use the mouse to look around and :guilabel:`wasd` to move. Gamepad controls ================ .. raw:: html
Since 2.3.0
Gaia Sky supports Game controllers through `SDL `__. This means that most controllers should *just work* out-of-the-box. The default controller mappings file, ``SDL_Controller.controller``, should always be used initially. Should this file not work for your controller, you can create your custom mappings easily and interactively by going to the preferences window > controls and clicking on the "Configure" button next to your controller. Then, follow screen instructions. .. figure:: img/ui/prefs/controls-gamepad.jpg :align: center Configuring gamepad controls in Gaia Sky User mappings files (see `here `__) can be added manually to ``$GS_CONFIG/mappings`` (see :ref:`folders `) folder, or set up automatically from within Gaia Sky. The controller mappings file contains the axis or button numbers for each input type. Below is an example of one such file. .. code:: #Controller mappings definition file for Wireless Steam Controller axis.dpad.h=-1 axis.dpad.v=-1 axis.lstick.h=0 axis.lstick.h.sensitivity=1.0 axis.lstick.v=1 axis.lstick.v.sensitivity=1.0 axis.lt=-1 axis.lt.sensitivity=1.0 axis.rstick.h=2 axis.rstick.h.sensitivity=1.0 axis.rstick.v=3 axis.rstick.v.sensitivity=1.0 axis.rt=-1 axis.rt.sensitivity=-1.0 axis.value.pow=4.0 button.a=2 button.b=3 button.dpad.d=18 button.dpad.l=19 button.dpad.r=20 button.dpad.u=17 button.lb=6 button.lstick=13 button.lt=8 button.rb=7 button.rstick=-1 button.rt=9 button.select=10 button.start=11 button.x=4 button.y=5 .. _gamepad-actions: Controller actions ------------------ .. figure:: img/controller/controller-annotated.png :alt: Default controller actions :align: center Default controller actions .. list-table:: :header-rows: 1 :widths: 30 70 * - Button/axis - Action * - R-stick H - rotate around horizontally (focus mode), yaw (free mode) * - R-stick V - rotate around vertycally (focus mode), pitch (free mode) * - L-stick H - roll * - L-stick V - forward/backward * - RT - roll right * - LT - roll left * - Start - preferences * - A - toggle labels * - B - toggle asteroids * - X - toggle minimap * - Y - toggle orbits * - Dpad up - increase star size * - Dpad down - decrease star size * - Dpad right - start time * - Dpad left - stop time * - R-stick click - stop time .. raw:: html
Since 3.0.0
Controller UI ------------- The controller UI allows access to some basic actions and settings directly using a game controller, without need for mouse or keyboard. To access it, press :guilabel:`start`. .. figure:: img/ui/controller-ui.jpg :align: center The controller UI There are six tabs at the top that can be navigated with :guilabel:`LB` and :guilabel:`RT`. The tabs are the following: - **Search** -- provides a virtual keyboard to search for objects. - **Camera** -- camera parameters like the mode or the field of view. - **Time** -- controls to start and stop time, as well as to set the time warp factor. - **Types** -- visibility of elements in Gaia Sky. - **Options** -- general options like post-processing effect parameters. - **System** -- a control to close Gaia Sky.