Unigine.ControlsApp Class
This class handles input from the current application window.
See Also#
- The Basic Object Movements usage example demonstrating how to set control keys
ControlsApp Class
Properties
float MouseDY#
The screen position change of the mouse pointer along the y axis during the last frame.
float MouseDX#
The screen position change of the mouse pointer along the x axis during the last frame.
float MouseSensitivity#
The current mouse sensitivity used to increase or decrease the speed of mouse movement. This parameter is stored in the following configuration file: *.controls .
bool MouseInverse#
The value indicating if back-and-forth movements of the mouse (by y-axis) are inverted: when the mouse is moved upward, the camera looks downwards, and when the mouse is moved downwards, the camera looks upwards. this mode is available only to control the camera. This parameter is stored in the following configuration file: *.controls .
bool MouseRawInput#
The true if raw mouse data are used to control the camera; false — the mouse data as processed by the OS (system acceleration, various user settings).
bool MouseEnabled#
The value indicating if the mouse is enabled.
int AlwaysRun#
The value indicating if the player is running by default. if the player is in this mode, the Run control will switch them to walking. This parameter is stored in the following configuration file: *.controls .
bool Enabled#
The value indicating if input handling for current application window is enabled.
Input.MOUSE_HANDLE MouseHandle#
The Mouse behavior mode, one of the MOUSE_HANDLE values. This parameter is stored in the following configuration file: *.controls .
bool Autosave#
Console: controls_config_autosave
The value indicating if current controls configuration settings are automatically saved to the corresponding controls config file (configs/default.controls by default) on loading, closing, and saving the world, as well as on the Engine shutdown. This parameter is stored in the following configuration file: *.controls .
string Path#
Console: controls_config
The current path to the controls configuration file (default: configs/default.controls). This parameter is stored in the following configuration file: *.boot .
Input.KEY RemoveGrabKey#
The key currently used to switch off the grab mode of the mouse pointer (mouse pointer is bound to the application window). See this example for more information on mouse pointer modes and customization.
Members
void SetState ( int state, int value ) #
Updates the state of a given control (sets the control on or off).Arguments
- int state - Control state number to update. Possible values are in range [STATE_FORWARD;NUM_STATES]. For full list of available controls see Unigine::Controls
- int value - State value: positive value to "press" the control; 0 to release it.
int GetState ( int state ) #
Returns the state of a given control.Arguments
- int state - Control state number. Possible values are in range [STATE_FORWARD;NUM_STATES]. For full list of available controls see Unigine::Controls
Return value
State value: positive value means the control is "pressed"; 0 means the control is released.void SetStateMouseButton ( int state, int button ) #
Sets a mouse button that switches a given state on and off. This parameter is stored in the following configuration file:Arguments
- int state - State (one of CONTROLS_STATE_* variables).
- int button - Button that toggles the state (one of MOUSE_BUTTON* variables).
int GetStateMouseButton ( int state ) #
Returns a mouse button that switches a given state on and off. This parameter is stored in the following configuration file:Arguments
- int state - State (one of CONTROLS_STATE_* variables).
Return value
Button that toggles the state (one of MOUSE_BUTTON* variables).int IsStateMouseButton ( int button ) #
Returns a value indicating if the given button assigned to the state.Arguments
- int button - Button that toggles the state (one of MOUSE_BUTTON* variables).
Return value
1 if the given button is assigned; otherwise, 0.void GetStateEvent ( int state ) #
Lets the user assign a key or a mouse button to a given state.Arguments
- int state - State (one of the CONTROLS_STATE_* variables), to which a key or a mouse button is going to be assigned.
int IsStateEvent ( ) #
Returns a value indicating if a key or a mouse button is successfully assigned to a state.Return value
1 if a key or a mouse button is already assigned; otherwise, 0.void SetStateKey ( int state, int key ) #
Sets a key that toggles a given state on and off. This parameter is stored in the following configuration file:Arguments
- int state - State (one of CONTROLS_STATE_* variables).
- int key - Key that switches the state. It is a standard ASCII key code or one of the KEY* variables.
int GetStateKey ( int state ) #
Returns a key that toggles a given state on and off. This parameter is stored in the following configuration file:Arguments
- int state - State (one of CONTROLS_STATE_* variables).
Return value
Key that switches the state. It is a standard ASCII key code or one of the KEY* variables:- KEY_ESC = 256
- KEY_TAB
- KEY_BACKSPACE
- KEY_RETURN
- KEY_DELETE
- KEY_INSERT
- KEY_HOME
- KEY_END
- KEY_PGUP
- KEY_PGDOWN
- KEY_LEFT
- KEY_RIGHT
- KEY_UP
- KEY_DOWN
- KEY_SHIFT
- KEY_CTRL
- KEY_ALT
- KEY_SCROLL
- KEY_CAPS
- KEY_NUM
- KEY_F1
- KEY_F2
- KEY_F3
- KEY_F4
- KEY_F5
- KEY_F6
- KEY_F7
- KEY_F8
- KEY_F9
- KEY_F10
- KEY_F11
- KEY_F12
int IsStateKey ( int key ) #
Checks if a given key already acts as an application control. This is useful to avoid collisions between application controls and hot keys.Arguments
- int key - Key in one of the following formats:
- Character format (for example, 'a')
- Standard ASCII key code (for example, 97)
- One of KEY* variables
Return value
1 if the key is assigned to a state; otherwise, 0.string GetStateName ( int state ) #
Returns the name of the given control state.Arguments
- int state - The control state number in range from 0 to the total number of states.
Return value
Name of the given control state.string GetStateInfo ( int state ) #
Returns the information about the given control state.Arguments
- int state - The control state number in range from 0 to the total number of states.
Return value
String containing information about the given control state.int ClearState ( int state ) #
Returns a control state and clears it to 0 (control is not pressed).Arguments
- int state - State (one of CONTROLS_STATE_* variables).
Return value
1 if the control is pressed; otherwise, 0.int Load ( ) #
Console: controls_config_load
Loads controls configuration settings from a controls configuration file (configs/default.controls by default). To change the path to the controls configuration file use the setPath() method.Return value
1 if controls configuration settings are successfully loaded from a file; otherwise, 0.int Save ( ) #
Console: controls_config_save
Saves controls configuration settings to a controls configuration file (configs/default.controls by default). To change the path to the controls configuration file use the setPath() method.Return value
1 if controls configuration settings are successfully saved to a file; otherwise, 0.Last update:
2022-12-14
Help improve this article
Was this article helpful?
(or select a word/phrase and press Ctrl+Enter)