Hatch Game Engine Documentation v1.4.0
The documentation for the Hatch Game Engine
Loading...
Searching...
No Matches
HSL

Documents HSL classes, enums and constants. More...

Namespaces

namespace  API
 Interfaces to external services.
namespace  RSDK
 RSDK (Retro Engine) related classes and functions.

Classes

class  Animator
 A sprite animation player. More...
class  Application
 Functions for manipulating and reading runtime information. More...
class  Array
 Array manipulation. More...
class  Audio
 Functions for manipulating the application's audio. More...
class  Camera
 A basic camera entity. More...
class  Collision
 Entity collision functions. More...
class  Controller
 Functions for getting information about controllers, as well as functions to control rumble. More...
class  Date
 Date and time functions. More...
class  Device
 Functions to retrieve information about the device the application is running on. More...
class  Directory
 Filesystem directory manipulation. More...
class  Display
 Functions to retrieve information about the displays in the device. More...
class  Draw
 General drawing functions. More...
class  Draw3D
 Functions for drawing in 3D. More...
class  Ease
 Easing functions. More...
class  Entity
 A game object that can be spawned in a scene. More...
class  File
 Filesystem file manipulation. More...
class  Font
 Representation of a TrueType font. More...
class  Geometry
 Geometry intersection functions. More...
class  HTTP
class  Image
 Functions to retrieve information about images. More...
class  Input
 Input polling functions. More...
class  Instance
 General Entity related functions. More...
class  JSON
 JSON parsing and writing. More...
class  Material
 Representation of a 3D model material. More...
class  Math
 General Math functions. More...
class  Matrix
 Matrix manipulation. More...
class  Model
 Functions to manipulate and retrieve information about 3D models. More...
class  Music
 Music playback. More...
class  Number
 Number type related functions. More...
class  Object
 Entity class related functions. More...
class  Palette
 Palette manipulation. More...
class  Random
 The engine's pseudorandom number generator. More...
class  Resources
 Resource loading. More...
class  Scene
 Functions for manipulating and retrieving information about scenes. More...
class  Scene3D
 The main interface for drawing 3D elements. More...
class  SceneList
 Functions for manipulating and retrieving information about the scene list. More...
class  Serializer
 Functions for serializing values. More...
class  Settings
 Reading and writing the application's settings from and into INI files. More...
class  Shader
 Representation of a GPU shader. More...
class  SocketClient
class  Sound
 Sound playback. More...
class  Sprite
 Functions to retrieve information about sprites. More...
class  Stream
 Functions for opening streams, as well as functions for reading and writing data. More...
class  String
 String manipulation functions. More...
class  Texture
 Texture manipulation functions. More...
class  Thread
class  TileCollision
 Basic functions for performing collision with scene tiles. More...
class  TileInfo
 Functions for retrieving information about tiles. More...
class  Touch
 Touch screen related functions. More...
class  VertexBuffer
 Representation of a vertex buffer. More...
class  Video
 Video playback. More...
class  View
 View manipulation functions. More...
class  Window
 Window manipulation functions. More...
class  XML
 XML parsing. More...

Enumerations

enum  ACTIVE {
  ACTIVE_NEVER , ACTIVE_ALWAYS , ACTIVE_NORMAL , ACTIVE_PAUSED ,
  ACTIVE_BOUNDS , ACTIVE_XBOUNDS , ACTIVE_YBOUNDS , ACTIVE_RBOUNDS ,
  ACTIVE_DISABLED
}
 Documentation for the ACTIVE enum. More...
enum  ALIGN { ALIGN_LEFT , ALIGN_CENTER , ALIGN_RIGHT }
 Documentation for the ALIGN enum. More...
enum  AUDIO { AUDIO_LOOP_NONE , AUDIO_LOOP_DEFAULT }
 Documentation for the AUDIO enum. More...
enum  Axis {
  Axis_LEFTX , Axis_LEFTY , Axis_RIGHTX , Axis_RIGHTY ,
  Axis_TRIGGERLEFT , Axis_TRIGGERRIGHT
}
 Documentation for the Axis enum. More...
enum  BlendFactor {
  BlendFactor_ZERO , BlendFactor_ONE , BlendFactor_SRC_COLOR , BlendFactor_INV_SRC_COLOR ,
  BlendFactor_SRC_ALPHA , BlendFactor_INV_SRC_ALPHA , BlendFactor_DST_COLOR , BlendFactor_INV_DST_COLOR ,
  BlendFactor_DST_ALPHA , BlendFactor_INV_DST_ALPHA
}
 Documentation for the BlendFactor enum. More...
enum  BlendMode {
  BlendMode_NORMAL , BlendMode_ADD , BlendMode_SUBTRACT , BlendMode_MAX ,
  BlendMode_MATCH_EQUAL , BlendMode_MATCH_NOT_EQUAL
}
 Documentation for the BlendMode enum. More...
enum  Button {
  Button_A , Button_B , Button_X , Button_Y ,
  Button_BACK , Button_GUIDE , Button_START , Button_LEFTSTICK ,
  Button_RIGHTSTICK , Button_LEFTSHOULDER , Button_RIGHTSHOULDER , Button_DPAD_UP ,
  Button_DPAD_DOWN , Button_DPAD_LEFT , Button_DPAD_RIGHT , Button_SHARE ,
  Button_MICROPHONE , Button_TOUCHPAD , Button_PADDLE1 , Button_PADDLE2 ,
  Button_PADDLE3 , Button_PADDLE4 , Button_MISC1
}
 Documentation for the Button enum. More...
enum  C {
  C_NONE , C_TOP , C_LEFT , C_RIGHT ,
  C_BOTTOM
}
 Documentation for the C enum. More...
enum  CMODE { CMODE_FLOOR , CMODE_LWALL , CMODE_ROOF , CMODE_RWALL }
 Documentation for the CMODE enum. More...
enum  Controller {
  Controller_Xbox360 , Controller_XboxOne , Controller_XboxSeriesXS , Controller_XboxElite ,
  Controller_PS3 , Controller_PS4 , Controller_PS5 , Controller_SwitchJoyConPair ,
  Controller_SwitchJoyConLeft , Controller_SwitchJoyConRight , Controller_SwitchPro , Controller_Stadia ,
  Controller_AmazonLuna , Controller_NvidiaShield , Controller_Unknown
}
 Documentation for the Controller enum. More...
enum  DrawBehavior { DrawBehavior_HorizontalParallax , DrawBehavior_VerticalParallax , DrawBehavior_CustomTileScanLines }
 Documentation for the DrawBehavior enum. More...
enum  DrawMode {
  DrawMode_LINES , DrawMode_POLYGONS , DrawMode_POINTS , DrawMode_FLAT_LIGHTING ,
  DrawMode_SMOOTH_LIGHTING , DrawMode_TEXTURED , DrawMode_AFFINE , DrawMode_DEPTH_TEST ,
  DrawMode_FOG , DrawMode_ORTHOGRAPHIC , DrawMode_LINES_FLAT , DrawMode_LINES_SMOOTH ,
  DrawMode_POLYGONS_FLAT , DrawMode_POLYGONS_SMOOTH , DrawMode_PrimitiveMask , DrawMode_LightingMask ,
  DrawMode_FillTypeMask , DrawMode_FlagsMask
}
 Documentation for the DrawMode enum. More...
enum  FaceCull { FaceCull_None , FaceCull_Back , FaceCull_Front }
 Documentation for the FaceCull enum. More...
enum  FileStream { FileStream_READ_ACCESS , FileStream_WRITE_ACCESS , FileStream_APPEND_ACCESS }
 Documentation for the FileStream enum. More...
enum  Filter { Filter_NONE , Filter_BLACK_AND_WHITE , Filter_INVERT }
 Documentation for the Filter enum. More...
enum  FLIP { FLIP_NONE , FLIP_X , FLIP_Y , FLIP_XY }
 Documentation for the FLIP enum. More...
enum  FogEquation { FogEquation_Linear , FogEquation_Exp }
 Documentation for the FogEquation enum. More...
enum  GeoBooleanOp { GeoBooleanOp_Intersection , GeoBooleanOp_Union , GeoBooleanOp_Difference , GeoBooleanOp_ExclusiveOr }
 Documentation for the GeoBooleanOp enum. More...
enum  GeoFillRule { GeoFillRule_EvenOdd , GeoFillRule_NonZero , GeoFillRule_Positive , GeoFillRule_Negative }
 Documentation for the GeoFillRule enum. More...
enum  HITBOX { HITBOX_LEFT , HITBOX_TOP , HITBOX_RIGHT , HITBOX_BOTTOM }
 Documentation for the HITBOX enum. More...
enum  InputBind { InputBind_Keyboard , InputBind_ControllerButton , InputBind_ControllerAxis }
 Documentation for the InputBind enum. More...
enum  InputDevice { InputDevice_Keyboard , InputDevice_Controller }
 Documentation for the InputDevice enum. More...
enum  Key {
  Key_UNKNOWN , Key_A , Key_B , Key_C ,
  Key_D , Key_E , Key_F , Key_G ,
  Key_H , Key_I , Key_J , Key_K ,
  Key_L , Key_M , Key_N , Key_O ,
  Key_P , Key_Q , Key_R , Key_S ,
  Key_T , Key_U , Key_V , Key_W ,
  Key_X , Key_Y , Key_Z , Key_1 ,
  Key_2 , Key_3 , Key_4 , Key_5 ,
  Key_6 , Key_7 , Key_8 , Key_9 ,
  Key_0 , Key_RETURN , Key_ESCAPE , Key_BACKSPACE ,
  Key_TAB , Key_SPACE , Key_MINUS , Key_EQUALS ,
  Key_LEFTBRACKET , Key_RIGHTBRACKET , Key_BACKSLASH , Key_SEMICOLON ,
  Key_APOSTROPHE , Key_GRAVE , Key_COMMA , Key_PERIOD ,
  Key_SLASH , Key_CAPSLOCK , Key_F1 , Key_F2 ,
  Key_F3 , Key_F4 , Key_F5 , Key_F6 ,
  Key_F7 , Key_F8 , Key_F9 , Key_F10 ,
  Key_F11 , Key_F12 , Key_PRINTSCREEN , Key_SCROLLLOCK ,
  Key_PAUSE , Key_INSERT , Key_HOME , Key_PAGEUP ,
  Key_DELETE , Key_END , Key_PAGEDOWN , Key_RIGHT ,
  Key_LEFT , Key_DOWN , Key_UP , Key_NUMLOCKCLEAR ,
  Key_KP_DIVIDE , Key_KP_MULTIPLY , Key_KP_MINUS , Key_KP_PLUS ,
  Key_KP_ENTER , Key_KP_1 , Key_KP_2 , Key_KP_3 ,
  Key_KP_4 , Key_KP_5 , Key_KP_6 , Key_KP_7 ,
  Key_KP_8 , Key_KP_9 , Key_KP_0 , Key_KP_PERIOD ,
  Key_LCTRL , Key_LSHIFT , Key_LALT , Key_LGUI ,
  Key_RCTRL , Key_RSHIFT , Key_RALT , Key_RGUI
}
 Documentation for the Key enum. More...
enum  KeyBind {
  KeyBind_Fullscreen , KeyBind_ToggleFPSCounter , KeyBind_DevRestartApp , KeyBind_DevRestartScene ,
  KeyBind_DevRecompile , KeyBind_DevPerfSnapshot , KeyBind_DevLayerInfo , KeyBind_DevFastForward ,
  KeyBind_DevFrameStepper , KeyBind_DevStepFrame , KeyBind_DevTileCol , KeyBind_DevObjectRegions ,
  KeyBind_DevViewHitboxes , KeyBind_DevMenuToggle , KeyBind_DevQuit
}
 Documentation for the KeyBind enum. More...
enum  MOUSEMODE { MOUSEMODE_DEFAULT , MOUSEMODE_RELATIVE }
 Documentation for the MOUSEMODE enum. More...
enum  Persistence { Persistence_NONE , Persistence_SCENE , Persistence_GAME }
 Documentation for the Persistence enum. More...
enum  Platform {
  Platform_Windows , Platform_MacOS , Platform_Linux , Platform_Switch ,
  Platform_PlayStation , Platform_Xbox , Platform_Android , Platform_iOS ,
  Platform_Unknown
}
 Documentation for the Platform enum. More...
enum  ROTSTYLE {
  ROTSTYLE_NONE , ROTSTYLE_FULL , ROTSTYLE_45DEG , ROTSTYLE_90DEG ,
  ROTSTYLE_180DEG , ROTSTYLE_STATICFRAMES
}
 Documentation for the ROTSTYLE enum. More...
enum  SCENETYPE { SCENETYPE_NONE , SCENETYPE_HATCH , SCENETYPE_TILED , SCENETYPE_RSDK }
 Documentation for the SCENETYPE enum. More...
enum  SCOPE { SCOPE_SCENE , SCOPE_GAME }
 Documentation for the SCOPE enum. More...
enum  SensorDirection { SensorDirection_Down , SensorDirection_Right , SensorDirection_Up , SensorDirection_Left }
 Documentation for the SensorDirection enum. More...
enum  SHADERDATATYPE {
  SHADERDATATYPE_FLOAT , SHADERDATATYPE_VEC2 , SHADERDATATYPE_VEC3 , SHADERDATATYPE_VEC4 ,
  SHADERDATATYPE_INT , SHADERDATATYPE_IVEC2 , SHADERDATATYPE_IVEC3 , SHADERDATATYPE_IVEC4 ,
  SHADERDATATYPE_BOOL , SHADERDATATYPE_BVEC2 , SHADERDATATYPE_BVEC3 , SHADERDATATYPE_BVEC4 ,
  SHADERDATATYPE_MAT2 , SHADERDATATYPE_MAT3 , SHADERDATATYPE_MAT4 , SHADERDATATYPE_SAMPLER_2D ,
  SHADERDATATYPE_SAMPLER_CUBE
}
 Documentation for the SHADERDATATYPE enum. More...
enum  SHADERSTAGE { SHADERSTAGE_VERTEX , SHADERSTAGE_FRAGMENT }
 Documentation for the SHADERSTAGE enum. More...
enum  StencilOp {
  StencilOp_Keep , StencilOp_Zero , StencilOp_Incr , StencilOp_Decr ,
  StencilOp_Invert , StencilOp_Replace , StencilOp_IncrWrap , StencilOp_DecrWrap
}
 Documentation for the StencilOp enum. More...
enum  StencilTest {
  StencilTest_Never , StencilTest_Always , StencilTest_Equal , StencilTest_NotEqual ,
  StencilTest_Less , StencilTest_Greater , StencilTest_LEqual , StencilTest_GEqual
}
 Documentation for the StencilTest enum. More...
enum  TILECOLLISION { TILECOLLISION_NONE , TILECOLLISION_DOWN , TILECOLLISION_UP }
 Documentation for the TILECOLLISION enum. More...
enum  TIMEOFDAY { TIMEOFDAY_MORNING , TIMEOFDAY_MIDDAY , TIMEOFDAY_EVENING , TIMEOFDAY_NIGHT }
 Documentation for the TIMEOFDAY enum. More...
enum  TintMode { TintMode_SRC_NORMAL , TintMode_DST_NORMAL , TintMode_SRC_BLEND , TintMode_DST_BLEND }
 Documentation for the TintMode enum. More...
enum  WEEKDAY {
  WEEKDAY_SUNDAY , WEEKDAY_MONDAY , WEEKDAY_TUESDAY , WEEKDAY_WEDNESDAY ,
  WEEKDAY_THURSDAY , WEEKDAY_FRIDAY , WEEKDAY_SATURDAY
}
 Documentation for the WEEKDAY enum. More...

Variables

const NUM_CONTROLLER_BUTTONS
 The amount of buttons in a controller.
const NUM_CONTROLLER_AXES
 The amount of axes in a controller.
const NUM_INPUT_DEVICE_TYPES
 Number of input device types.
const NUM_INPUT_BIND_TYPES
 Number of input bind types.
const MAX_SCENE_VIEWS
 The max amount of scene views.
const MAX_DRAW_GROUPS
 The max amount of draw groups.
const Math_PI
 The value of pi.
const Math_PI_DOUBLE
 Double of the value of pi.
const Math_PI_HALF
 Half of the value of pi.
const Math_R_PI
 A less precise value of pi.
const NUM_KEYBOARD_KEYS
 Count of keyboard keys.
const MAX_PALETTE_COUNT
 The max amount of palettes.
const KeyMod_SHIFT
 Key modifier for either Shift key.
const KeyMod_CTRL
 Key modifier for either Ctrl key.
const KeyMod_ALT
 Key modifier for either Alt key.
const KeyMod_LSHIFT
 Key modifier for the Left Shift key.
const KeyMod_RSHIFT
 Key modifier for the Right Shift key.
const KeyMod_LCTRL
 Key modifier for the Left Ctrl key.
const KeyMod_RCTRL
 Key modifier for the Right Ctrl key.
const KeyMod_LALT
 Key modifier for the Left Alt key.
const KeyMod_RALT
 Key modifier for the Right Alt key.
const KeyMod_NUMLOCK
 Key modifier for the Num Lock key.
const KeyMod_CAPSLOCK
 Key modifier for the Caps Lock key.
var CameraX
 The X position of the first camera.
var CameraY
 The Y position of the first camera.
var LowPassFilter
 The low pass filter of the audio.
var CurrentView
 The current camera index.
var Scene_Frame
 The current scene frame.
var DeltaTime
 The delta time.
var Scene_Filter
 The current scene filter.
var Scene_TimeEnabled
 Whether the scene timer is enabled.
var Scene_TimeCounter
 The current scene time counter.
var Scene_Minutes
 The minutes value of the scene timer.
var Scene_Seconds
 The seconds value of the scene timer.
var Scene_Milliseconds
 The milliseconds value of the scene timer.
var Scene_ListPos
 The position of the current scene in the scene list.
var Scene_ActiveCategory
 The category number that contains the current scene.
var Scene_DebugMode
 Whether Debug Mode has been turned on in the current scene.

Detailed Description

Documents HSL classes, enums and constants.

Enumeration Type Documentation

◆ ACTIVE

enum ACTIVE

Documentation for the ACTIVE enum.

Enumerator
ACTIVE_NEVER 

Entity never updates. Object never runs GlobalUpdate.

ACTIVE_ALWAYS 

Entity always updates. Object always runs GlobalUpdate.

ACTIVE_NORMAL 

Entity updates no matter where it is located on the scene, if the scene is not paused. GlobalUpdate is also called for the entity's class.

ACTIVE_PAUSED 

Entity only updates if the scene is paused. GlobalUpdate is also called for the entity's class.

ACTIVE_BOUNDS 

Entity only updates if it is within its bounds (uses UpdateRegionW and uses UpdateRegionH).

ACTIVE_XBOUNDS 

Entity only updates within an X bound. (only uses UpdateRegionW)

ACTIVE_YBOUNDS 

Entity only updates within a Y bound. (only uses UpdateRegionH)

ACTIVE_RBOUNDS 

Entity updates within a radius. (uses UpdateRegionW)

ACTIVE_DISABLED 

Entity will not even reach a point where it would check for an update.

◆ ALIGN

enum ALIGN

Documentation for the ALIGN enum.

Enumerator
ALIGN_LEFT 

Left alignment for text drawing.

ALIGN_CENTER 

Center alignment for text drawing.

ALIGN_RIGHT 

Right alignment for text drawing.

◆ AUDIO

enum AUDIO

Documentation for the AUDIO enum.

Enumerator
AUDIO_LOOP_NONE 

When used as the loopPoint argument in Music::Play or Sound::Play, specifies that the audio should not loop, even if the audio file has a loop point.

AUDIO_LOOP_DEFAULT 

When used as the loopPoint argument in Music::Play or Sound::Play, specifies that the audio should use loop point defined in the metadata of the audio file.

◆ Axis

enum Axis

Documentation for the Axis enum.

Enumerator
Axis_LEFTX 

Left controller stick X.

Axis_LEFTY 

Left controller stick Y.

Axis_RIGHTX 

Right controller stick X.

Axis_RIGHTY 

Right controller stick Y.

Axis_TRIGGERLEFT 

Left controller trigger.

Axis_TRIGGERRIGHT 

Right controller trigger.

◆ BlendFactor

Documentation for the BlendFactor enum.

Enumerator
BlendFactor_ZERO 

Blend factor: (0, 0, 0, 0)

BlendFactor_ONE 

Blend factor: (1, 1, 1, 1)

BlendFactor_SRC_COLOR 

Blend factor: (Rs, Gs, Bs, As)

BlendFactor_INV_SRC_COLOR 

Blend factor: (1-Rs, 1-Gs, 1-Bs, 1-As)

BlendFactor_SRC_ALPHA 

Blend factor: (As, As, As, As)

BlendFactor_INV_SRC_ALPHA 

Blend factor: (1-As, 1-As, 1-As, 1-As)

BlendFactor_DST_COLOR 

Blend factor: (Rd, Gd, Bd, Ad)

BlendFactor_INV_DST_COLOR 

Blend factor: (1-Rd, 1-Gd, 1-Bd, 1-Ad)

BlendFactor_DST_ALPHA 

Blend factor: (Ad, Ad, Ad, Ad)

BlendFactor_INV_DST_ALPHA 

Blend factor: (1-Ad, 1-Ad, 1-Ad, 1-Ad)

◆ BlendMode

enum BlendMode

Documentation for the BlendMode enum.

Enumerator
BlendMode_NORMAL 

Normal pixel blending.

BlendMode_ADD 

Additive pixel blending.

BlendMode_SUBTRACT 

Subtractive pixel blending.

BlendMode_MAX 

(hardware-renderer only) Maximum pixel blending.

BlendMode_MATCH_EQUAL 

(software-renderer only) Draw pixels only where it matches the Comparison Color.

BlendMode_MATCH_NOT_EQUAL 

(software-renderer only) Draw pixels only where it does not match the Comparison Color.

◆ Button

enum Button

Documentation for the Button enum.

Enumerator
Button_A 

Bottom controller face button.

Button_B 

Right controller face button.

Button_X 

Left controller face button.

Button_Y 

Top controller face button.

Button_BACK 

Controller Back button.

Button_GUIDE 

Controller Guide button.

Button_START 

Controller Start button.

Button_LEFTSTICK 

Controller left stick click.

Button_RIGHTSTICK 

Controller right stick click.

Button_LEFTSHOULDER 

Controller left shoulder.

Button_RIGHTSHOULDER 

Controller right shoulder.

Button_DPAD_UP 

Controller D-Pad Up.

Button_DPAD_DOWN 

Controller D-Pad Down.

Button_DPAD_LEFT 

Controller D-Pad Left.

Button_DPAD_RIGHT 

Controller D-Pad Right.

Button_SHARE 

Share/Capture controller button.

Button_MICROPHONE 

Microphone controller button.

Button_TOUCHPAD 

Touchpad controller button.

Button_PADDLE1 

P1 Paddle (Xbox Elite controllers.).

Button_PADDLE2 

P2 Paddle (Xbox Elite controllers.).

Button_PADDLE3 

P3 Paddle (Xbox Elite controllers.).

Button_PADDLE4 

P4 Paddle (Xbox Elite controllers.).

Button_MISC1 

Controller button for miscellaneous purposes.

◆ C

enum C

Documentation for the C enum.

Enumerator
C_NONE 

No collided side.

C_TOP 

Top collided side.

C_LEFT 

Left collided side.

C_RIGHT 

Right collided side.

C_BOTTOM 

Bottom collided side.

◆ CMODE

enum CMODE

Documentation for the CMODE enum.

Enumerator
CMODE_FLOOR 

Entity expects to collide with a floor.

CMODE_LWALL 

Entity expects to collide with the left side of a wall.

CMODE_ROOF 

Entity expects to collide with a roof.

CMODE_RWALL 

Entity expects to collide with the right side of a wall.

◆ Controller

enum Controller

Documentation for the Controller enum.

Enumerator
Controller_Xbox360 

Xbox 360 controller type.

Controller_XboxOne 

Xbox One controller type.

Controller_XboxSeriesXS 

Xbox Series XS controller type.

Controller_XboxElite 

Xbox Elite controller type.

Controller_PS3 

PlayStation 3 controller type.

Controller_PS4 

PlayStation 4 controller type.

Controller_PS5 

PlayStation 5 controller type.

Controller_SwitchJoyConPair 

Nintendo Switch Joy-Con pair controller type.

Controller_SwitchJoyConLeft 

Nintendo Switch Joy-Con L controller type.

Controller_SwitchJoyConRight 

Nintendo Switch Joy-Con R controller type.

Controller_SwitchPro 

Nintendo Switch Pro Controller controller type.

Controller_Stadia 

Stadia Controller controller type.

Controller_AmazonLuna 

Amazon Luna controller type.

Controller_NvidiaShield 

Nvidia Shield TV controller type.

Controller_Unknown 

Unknown or unrecognized controller type.

◆ DrawBehavior

Documentation for the DrawBehavior enum.

Enumerator
DrawBehavior_HorizontalParallax 

Horizontal parallax.

DrawBehavior_VerticalParallax 

Do not use.

DrawBehavior_CustomTileScanLines 

Custom scanline behavior.

◆ DrawMode

enum DrawMode

Documentation for the DrawMode enum.

Enumerator
DrawMode_LINES 

Draws the faces with lines, using a solid color determined by the face's existing colors (and if not, the blend color.)

DrawMode_POLYGONS 

Draws the faces with polygons, using a solid color determined by the face's existing colors (and if not, the blend color.)

DrawMode_POINTS 

(hardware-renderer only) Draws the faces with points, using a solid color determined by the face's existing colors (and if not, the blend color.)

DrawMode_FLAT_LIGHTING 

Enables lighting, using a color for the primitive calculated with the vertex normals, and the primitive's existing colors (and if not, the blend color.)

DrawMode_SMOOTH_LIGHTING 

Enables lighting, using a color smoothly spread across the primitive calculated with the vertex normals, and the primitive's existing colors (and if not, the blend color.)

DrawMode_TEXTURED 

Enables texturing.

DrawMode_AFFINE 

(software-renderer only) Uses affine texture mapping.

DrawMode_DEPTH_TEST 

Enables depth testing.

DrawMode_FOG 

Enables fog.

DrawMode_ORTHOGRAPHIC 

(software-renderer only) Uses orthographic perspective projection.

DrawMode_LINES_FLAT 

Combination of DrawMode_LINES and DrawMode_FLAT_LIGHTING.

DrawMode_LINES_SMOOTH 

Combination of DrawMode_LINES and DrawMode_SMOOTH_LIGHTING.

DrawMode_POLYGONS_FLAT 

Combination of DrawMode_POLYGONS and DrawMode_FLAT_LIGHTING.

DrawMode_POLYGONS_SMOOTH 

Combination of DrawMode_POLYGONS and DrawMode_SMOOTH_LIGHTING.

DrawMode_PrimitiveMask 

Masks out DrawMode_LINES | DrawMode_POLYGONS | DrawMode_POINTS out of a draw mode.

DrawMode_LightingMask 

Masks out DrawMode_FLAT_LIGHTING | DrawMode_SMOOTH_LIGHTING out of a draw mode.

DrawMode_FillTypeMask 

Masks out DrawMode_PrimitiveMask | DrawMode_LightingMask out of a draw mode.

DrawMode_FlagsMask 

Masks out ~DrawMode_FillTypeMask out of a draw mode.

◆ FaceCull

enum FaceCull

Documentation for the FaceCull enum.

Enumerator
FaceCull_None 

Disables face culling.

FaceCull_Back 

Culls back faces.

FaceCull_Front 

Culls front faces.

◆ FileStream

enum FileStream

Documentation for the FileStream enum.

Enumerator
FileStream_READ_ACCESS 

Read file access mode. (rb)

FileStream_WRITE_ACCESS 

Write file access mode. (wb)

FileStream_APPEND_ACCESS 

Append file access mode. (ab)

◆ Filter

enum Filter

Documentation for the Filter enum.

Enumerator
Filter_NONE 

Disables the current filter.

Filter_BLACK_AND_WHITE 

Black and white filter.

Filter_INVERT 

Invert filter.

◆ FLIP

enum FLIP

Documentation for the FLIP enum.

Enumerator
FLIP_NONE 

No flip.

FLIP_X 

Horizontal flip.

FLIP_Y 

Vertical flip.

FLIP_XY 

Horizontal and vertical flip.

◆ FogEquation

Documentation for the FogEquation enum.

Enumerator
FogEquation_Linear 

Linear fog equation.

FogEquation_Exp 

Exponential fog equation.

◆ GeoBooleanOp

Documentation for the GeoBooleanOp enum.

Enumerator
GeoBooleanOp_Intersection 

AND operation.

GeoBooleanOp_Union 

OR operation.

GeoBooleanOp_Difference 

NOT operation.

GeoBooleanOp_ExclusiveOr 

XOR operation.

◆ GeoFillRule

Documentation for the GeoFillRule enum.

Enumerator
GeoFillRule_EvenOdd 

Only odd numbered subregions are filled.

GeoFillRule_NonZero 

Only non-zero subregions are filled.

GeoFillRule_Positive 

Only subregions that have winding counts greater than zero are filled.

GeoFillRule_Negative 

Only subregions that have winding counts lesser than zero are filled.

◆ HITBOX

enum HITBOX

Documentation for the HITBOX enum.

Enumerator
HITBOX_LEFT 

Left side, slot 0 of a hitbox value.

HITBOX_TOP 

Top side, slot 1 of a hitbox value.

HITBOX_RIGHT 

Right side, slot 2 of a hitbox value.

HITBOX_BOTTOM 

Bottom side, slot 3 of a hitbox value.

◆ InputBind

enum InputBind

Documentation for the InputBind enum.

Enumerator
InputBind_Keyboard 

Keyboard key input bind.

InputBind_ControllerButton 

Controller button input bind.

InputBind_ControllerAxis 

Controller axis input bind.

◆ InputDevice

Documentation for the InputDevice enum.

Enumerator
InputDevice_Keyboard 

Keyboard input device.

InputDevice_Controller 

Controller input device.

◆ Key

enum Key

Documentation for the Key enum.

Enumerator
Key_UNKNOWN 

Invalid key.

Key_A 

A key.

Key_B 

B key.

Key_C 

C key.

Key_D 

D key.

Key_E 

E key.

Key_F 

F key.

Key_G 

G key.

Key_H 

H key.

Key_I 

I key.

Key_J 

J key.

Key_K 

K key.

Key_L 

L key.

Key_M 

M key.

Key_N 

N key.

Key_O 

O key.

Key_P 

P key.

Key_Q 

Q key.

Key_R 

R key.

Key_S 

S key.

Key_T 

T key.

Key_U 

U key.

Key_V 

V key.

Key_W 

W key.

Key_X 

X key.

Key_Y 

Y key.

Key_Z 

Z key.

Key_1 

Number 1 key.

Key_2 

Number 2 key.

Key_3 

Number 3 key.

Key_4 

Number 4 key.

Key_5 

Number 5 key.

Key_6 

Number 6 key.

Key_7 

Number 7 key.

Key_8 

Number 8 key.

Key_9 

Number 9 key.

Key_0 

Number 0 key.

Key_RETURN 

Return key.

Key_ESCAPE 

Escape key.

Key_BACKSPACE 

Backspace key.

Key_TAB 

Tab key.

Key_SPACE 

Space Bar key.

Key_MINUS 

Minus key.

Key_EQUALS 

Equals key.

Key_LEFTBRACKET 

Left Bracket key.

Key_RIGHTBRACKET 

Right Bracket key.

Key_BACKSLASH 

Backslash key.

Key_SEMICOLON 

Semicolon key.

Key_APOSTROPHE 

Apostrophe key.

Key_GRAVE 

Grave key.

Key_COMMA 

Comma key.

Key_PERIOD 

Period key.

Key_SLASH 

SLASH key.

Key_CAPSLOCK 

Caps Lock key.

Key_F1 

F1 key.

Key_F2 

F2 key.

Key_F3 

F3 key.

Key_F4 

F4 key.

Key_F5 

F5 key.

Key_F6 

F6 key.

Key_F7 

F7 key.

Key_F8 

F8 key.

Key_F9 

F9 key.

Key_F10 

F10 key.

Key_F11 

F11 key.

Key_F12 

F12 key.

Key_PRINTSCREEN 

Print Screen key.

Key_SCROLLLOCK 

Scroll Lock key.

Key_PAUSE 

Pause/Break key.

Key_INSERT 

Insert key.

Key_HOME 

Home key.

Key_PAGEUP 

Page Up key.

Key_DELETE 

Delete key.

Key_END 

End key.

Key_PAGEDOWN 

Page Down key.

Key_RIGHT 

Arrow Right key.

Key_LEFT 

Arrow Left key.

Key_DOWN 

Arrow Down key.

Key_UP 

Arrow Up key.

Key_NUMLOCKCLEAR 

Num Clear key.

Key_KP_DIVIDE 

Keypad Divide key.

Key_KP_MULTIPLY 

Keypad Multiply key.

Key_KP_MINUS 

Keypad Minus key.

Key_KP_PLUS 

Keypad Plus key.

Key_KP_ENTER 

Keypad Enter key.

Key_KP_1 

Keypad 1 key.

Key_KP_2 

Keypad 2 key.

Key_KP_3 

Keypad 3 key.

Key_KP_4 

Keypad 4 key.

Key_KP_5 

Keypad 5 key.

Key_KP_6 

Keypad 6 key.

Key_KP_7 

Keypad 7 key.

Key_KP_8 

Keypad 8 key.

Key_KP_9 

Keypad 9 key.

Key_KP_0 

Keypad 0 key.

Key_KP_PERIOD 

Keypad Period key.

Key_LCTRL 

Left Ctrl key.

Key_LSHIFT 

Left Shift key.

Key_LALT 

Left Alt key.

Key_LGUI 

Left GUI key.

Key_RCTRL 

Right Ctrl key.

Key_RSHIFT 

Right Shift key.

Key_RALT 

Right Alt key.

Key_RGUI 

Right GUI key.

◆ KeyBind

enum KeyBind

Documentation for the KeyBind enum.

Enumerator
KeyBind_Fullscreen 

Fullscreen keybind.

KeyBind_ToggleFPSCounter 

FPS counter toggle keybind.

KeyBind_DevRestartApp 

App restart keybind. (dev)

KeyBind_DevRestartScene 

Scene restart keybind. (dev)

KeyBind_DevRecompile 

Script recompile keybind. (dev)

KeyBind_DevPerfSnapshot 

Performance snapshot keybind. (dev)

KeyBind_DevLayerInfo 

Scene layer info keybind. (dev)

KeyBind_DevFastForward 

Fast forward keybind. (dev)

KeyBind_DevFrameStepper 

Frame stepper keybind. (dev)

KeyBind_DevStepFrame 

Step frame keybind. (dev)

KeyBind_DevTileCol 

Tile collision display keybind. (dev)

KeyBind_DevObjectRegions 

Object regions display keybind. (dev)

KeyBind_DevViewHitboxes 

Hitbox display keybind. (dev)

KeyBind_DevMenuToggle 

Open/close dev menu keybind. (dev)

KeyBind_DevQuit 

App quit keybind. (dev)

◆ MOUSEMODE

enum MOUSEMODE

Documentation for the MOUSEMODE enum.

Enumerator
MOUSEMODE_DEFAULT 

"Absolute" mouse mode. The cursor is visible by default, and not constrained to the window.

MOUSEMODE_RELATIVE 

"Relative" mouse mode. The cursor is invisible, and constrained to the window.

◆ Persistence

Documentation for the Persistence enum.

Enumerator
Persistence_NONE 

Doesn't persist between scenes.

Persistence_SCENE 

Persists between scenes.

Persistence_GAME 

Always persists, unless the game is restarted.

◆ Platform

enum Platform

Documentation for the Platform enum.

Enumerator
Platform_Windows 

Windows platform.

Platform_MacOS 

MacOS platform.

Platform_Linux 

Linux platform.

Platform_Switch 

Nintendo Switch platform.

Platform_PlayStation 

PlayStation platform.

Platform_Xbox 

Xbox platform.

Platform_Android 

Android platform.

Platform_iOS 

iOS platform.

Platform_Unknown 

Unknown platform.

◆ ROTSTYLE

enum ROTSTYLE

Documentation for the ROTSTYLE enum.

Enumerator
ROTSTYLE_NONE 

Does not rotate the sprite in Draw::SpriteBasic, Draw::Animator, and Draw::AnimatorBasic.

ROTSTYLE_FULL 

Allows the sprite 256 angles of rotation in Draw::SpriteBasic, Draw::Animator, and Draw::AnimatorBasic.

ROTSTYLE_45DEG 

Allows the sprite to rotate in intervals of 45 degrees in Draw::SpriteBasic, Draw::Animator, and Draw::AnimatorBasic.

ROTSTYLE_90DEG 

Allows the sprite to rotate in intervals of 90 degrees in Draw::SpriteBasic, Draw::Animator, and Draw::AnimatorBasic.

ROTSTYLE_180DEG 

Allows the sprite to rotate in intervals of 180 degrees in Draw::SpriteBasic, Draw::Animator, and Draw::AnimatorBasic.

ROTSTYLE_STATICFRAMES 

Uses extra frames to rotate the sprite in Draw::SpriteBasic and Draw::AnimatorBasic.

◆ SCENETYPE

enum SCENETYPE

Documentation for the SCENETYPE enum.

Enumerator
SCENETYPE_NONE 

The current scene loaded in the game is not a scene.

SCENETYPE_HATCH 

The current scene loaded in the game is a Hatch scene.

SCENETYPE_TILED 

The current scene loaded in the game is a Tiled map.

SCENETYPE_RSDK 

The current scene loaded in the game is an RSDK scene.

◆ SCOPE

enum SCOPE

Documentation for the SCOPE enum.

Enumerator
SCOPE_SCENE 

Scene scope.

SCOPE_GAME 

Game scope.

◆ SensorDirection

Documentation for the SensorDirection enum.

Enumerator
SensorDirection_Down 

Down sensor direction.

SensorDirection_Right 

Right sensor direction.

SensorDirection_Up 

Up sensor direction.

SensorDirection_Left 

Left sensor direction.

◆ SHADERDATATYPE

Documentation for the SHADERDATATYPE enum.

Enumerator
SHADERDATATYPE_FLOAT 

float data type.

SHADERDATATYPE_VEC2 

vec2 data type.

SHADERDATATYPE_VEC3 

vec3 data type.

SHADERDATATYPE_VEC4 

vec4 data type.

SHADERDATATYPE_INT 

int data type.

SHADERDATATYPE_IVEC2 

ivec2 data type.

SHADERDATATYPE_IVEC3 

ivec3 data type.

SHADERDATATYPE_IVEC4 

ivec4 data type.

SHADERDATATYPE_BOOL 

bool data type.

SHADERDATATYPE_BVEC2 

bvec2 data type.

SHADERDATATYPE_BVEC3 

bvec3 data type.

SHADERDATATYPE_BVEC4 

bvec4 data type.

SHADERDATATYPE_MAT2 

mat2 data type.

SHADERDATATYPE_MAT3 

mat3 data type.

SHADERDATATYPE_MAT4 

mat4 data type.

SHADERDATATYPE_SAMPLER_2D 

sampler2D data type.

SHADERDATATYPE_SAMPLER_CUBE 

samplerCube data type.

◆ SHADERSTAGE

Documentation for the SHADERSTAGE enum.

Enumerator
SHADERSTAGE_VERTEX 

Vertex shader stage.

SHADERSTAGE_FRAGMENT 

Fragment shader stage.

◆ StencilOp

enum StencilOp

Documentation for the StencilOp enum.

Enumerator
StencilOp_Keep 

Doesn't modify the stencil buffer value (keeps it the same.)

StencilOp_Zero 

Sets the stencil buffer value to zero.

StencilOp_Incr 

Increases the stencil buffer value, saturating it if it would wrap around (the value is set to a specific maximum.)

StencilOp_Decr 

Increases the stencil buffer value, setting it to zero if it would wrap around.

StencilOp_Invert 

Inverts the bits of the stencil buffer value.

StencilOp_Replace 

Replaces the bits of the stencil buffer value with the masked value.

StencilOp_IncrWrap 

Increases the stencil buffer value, letting it wrap around.

StencilOp_DecrWrap 

Increases the stencil buffer value, letting it wrap around.

◆ StencilTest

Documentation for the StencilTest enum.

Enumerator
StencilTest_Never 

Always fails.

StencilTest_Always 

Always passes.

StencilTest_Equal 

Does an "equals" operation.

StencilTest_NotEqual 

Does a "not equal" operation.

StencilTest_Less 

Does a "less than" operation.

StencilTest_Greater 

Does a "greater than" operation.

StencilTest_LEqual 

Does a "less than or equal to" operation.

StencilTest_GEqual 

Does a "greater than or equal to" operation.

◆ TILECOLLISION

Documentation for the TILECOLLISION enum.

Enumerator
TILECOLLISION_NONE 

Entity expects no tile collision.

TILECOLLISION_DOWN 

Entity expects downward gravity for tile collision.

TILECOLLISION_UP 

Entity expects upward gravity for tile collision.

◆ TIMEOFDAY

enum TIMEOFDAY

Documentation for the TIMEOFDAY enum.

Enumerator
TIMEOFDAY_MORNING 

The early hours of the day (5AM to 11AM, or 05:00 to 11:00).

TIMEOFDAY_MIDDAY 

The middle hours of the day (12PM to 4PM, or 12:00 to 16:00).

TIMEOFDAY_EVENING 

The later hours of the day (5PM to 8PM, or 17:00 to 20:00).

TIMEOFDAY_NIGHT 

The very late and very early hours of the day (9PM to 4AM, or 21:00 to 4:00).

◆ TintMode

enum TintMode

Documentation for the TintMode enum.

Enumerator
TintMode_SRC_NORMAL 

Tints the source pixel with the tint color.

TintMode_DST_NORMAL 

Tints the destination pixel with the tint color.

TintMode_SRC_BLEND 

Blends the source pixel with the tint color.

TintMode_DST_BLEND 

Blends the destination pixel with the tint color.

◆ WEEKDAY

enum WEEKDAY

Documentation for the WEEKDAY enum.

Enumerator
WEEKDAY_SUNDAY 

The first day of the week.

WEEKDAY_MONDAY 

The second day of the week.

WEEKDAY_TUESDAY 

The third day of the week.

WEEKDAY_WEDNESDAY 

The fourth day of the week.

WEEKDAY_THURSDAY 

The fifth day of the week.

WEEKDAY_FRIDAY 

The sixth day of the week.

WEEKDAY_SATURDAY 

The seventh day of the week.