SLProject  4.2.000
A platform independent 3D computer graphics framework for desktop OS, Android, iOS and online in web browsers
SLEnums.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Typedefs

typedef int SLSceneID
 Scene identifier. More...
 

Enumerations

enum  SLKey {
  K_none = 0 , K_space = 32 , K_tab = 256 , K_enter , K_esc , K_backspace ,
  K_delete , K_up , K_down , K_right , K_left , K_home ,
  K_end , K_insert , K_pageUp , K_pageDown , K_NP0 , K_NP1 ,
  K_NP2 , K_NP3 , K_NP4 , K_NP5 , K_NP6 , K_NP7 ,
  K_NP8 , K_NP9 , K_NPDivide , K_NPMultiply , K_NPAdd , K_NPSubtract ,
  K_NPEnter , K_NPDecimal , K_F1 , K_F2 , K_F3 , K_F4 ,
  K_F5 , K_F6 , K_F7 , K_F8 , K_F9 , K_F10 ,
  K_F11 , K_F12 , K_super = 0x00100000 , K_shift = 0x00200000 , K_ctrl = 0x00400000 , K_alt = 0x00800000
}
 Keyboard key codes enumeration. More...
 
enum  SLRenderType { RT_gl = 0 , RT_rt = 1 , RT_pt = 2 , RT_optix_rt = 3 , RT_optix_pt = 4 }
 Rendering type enumeration. More...
 
enum  SLAxis { A_x = 0 , A_Y = 1 , A_z = 2 }
 Coordinate axis enumeration. More...
 
enum  SLMouseButton { MB_none , MB_left , MB_middle , MB_right }
 Mouse button codes. More...
 
enum  SLTextAlign {
  TA_topLeft , TA_topCenter , TA_topRight , TA_centerLeft , TA_centerCenter , TA_centerRight ,
  TA_bottomLeft , TA_bottomCenter , TA_bottomRight
}
 Enumeration for text alignment in a box. More...
 
enum  SLCamAnim {
  CA_turntableYUp , CA_turntableZUp , CA_trackball , CA_walkingYUp , CA_walkingZUp , CA_deviceRotYUp ,
  CA_deviceRotLocYUp , CA_off
}
 Enumeration for available camera animation types. More...
 
enum  SLProjType {
  P_monoPerspective = 0 , P_monoIntrinsic , P_monoOrthographic , P_stereoSideBySide , P_stereoSideBySideP , P_stereoSideBySideD ,
  P_stereoLineByLine , P_stereoColumnByColumn , P_stereoPixelByPixel , P_stereoColorRC , P_stereoColorRG , P_stereoColorRB ,
  P_stereoColorYB
}
 Enumeration for different camera projections. More...
 
enum  SLEyeType { ET_left = -1 , ET_center = 0 , ET_right = 1 }
 Enumeration for stereo eye type used for camera projection. More...
 
enum  SLAnimInterpolation { AI_linear , AI_bezier }
 Enumeration for animation modes. More...
 
enum  SLAnimLooping { AL_once = 0 , AL_loop = 1 , AL_pingPong = 2 , AL_pingPongLoop = 3 }
 Enumeration for animation modes. More...
 
enum  SLEasingCurve {
  EC_linear = 0 , EC_inQuad = 1 , EC_outQuad = 2 , EC_inOutQuad = 3 , EC_outInQuad = 4 , EC_inCubic = 5 ,
  EC_outCubic = 6 , EC_inOutCubic = 7 , EC_outInCubic = 8 , EC_inQuart = 9 , EC_outQuart = 10 , EC_inOutQuart = 11 ,
  EC_outInQuart = 12 , EC_inQuint = 13 , EC_outQuint = 14 , EC_inOutQuint = 15 , EC_outInQuint = 16 , EC_inSine = 17 ,
  EC_outSine = 18 , EC_inOutSine = 19 , EC_outInSine = 20
}
 Enumeration for animation easing curves. More...
 
enum  SLTransformSpace { TS_world = 0 , TS_parent , TS_object }
 Describes the relative space a transformation is applied in. More...
 
enum  SLSkinMethod { SM_hardware , SM_software }
 Skinning methods. More...
 
enum  SLShaderType { ST_none , ST_vertex , ST_fragment , ST_geometry , ST_tesselation }
 Shader type enumeration for vertex or fragment (pixel) shader. More...
 
enum  SLUniformType {
  UT_const , UT_incDec , UT_incInc , UT_inc , UT_random , UT_seconds ,
  UT_lambda
}
 Type definition for GLSL uniform1f variables that change per frame. More...
 
enum  SLLogVerbosity { LV_quiet = 0 , LV_minimal = 1 , LV_normal = 2 , LV_detailed = 3 , LV_diagnostic = 4 }
 
enum  SLViewportAlign { VA_center = 0 , VA_leftOrBottom }
 Mouse button codes. More...
 
enum  SLFogMode { FM_linear = 0 , FM_exp , FM_exp2 }
 Corresponds to the old fog modes in OpenGL 2.1. More...
 
enum  SLBillboardType { BT_Camera = 0 , BT_Vertical , BT_Horizontal }
 Billboard type for its orientation used in SLParticleSystem. More...
 
enum  SLShapeType { ST_Sphere = 0 , ST_Box , ST_Cone , ST_Pyramid }
 Particle system shape type. More...
 
enum  SLReflectionModel { RM_BlinnPhong = 0 , RM_CookTorrance , RM_Particle , RM_Custom }
 Light Reflection Models for shader generation usd in SLMaterial. More...
 

Variables

constexpr SLSceneID SL_EMPTY_SCENE_ID = 0
 SLSceneID for an empty scene. More...
 

Typedef Documentation

◆ SLSceneID

typedef int SLSceneID

Scene identifier.

Definition at line 91 of file SLEnums.h.

Enumeration Type Documentation

◆ SLAnimInterpolation

Enumeration for animation modes.

Enumerator
AI_linear 
AI_bezier 

Definition at line 159 of file SLEnums.h.

160 {
161  AI_linear,
162  AI_bezier
163 };
@ AI_linear
Definition: SLEnums.h:161
@ AI_bezier
Definition: SLEnums.h:162

◆ SLAnimLooping

Enumeration for animation modes.

Enumerator
AL_once 

play once

AL_loop 

loop

AL_pingPong 

play once in two directions

AL_pingPongLoop 

loop forward and backwards

Definition at line 166 of file SLEnums.h.

167 {
168  AL_once = 0, //!< play once
169  AL_loop = 1, //!< loop
170  AL_pingPong = 2, //!< play once in two directions
171  AL_pingPongLoop = 3 //!< loop forward and backwards
172 };
@ AL_loop
loop
Definition: SLEnums.h:169
@ AL_pingPongLoop
loop forward and backwards
Definition: SLEnums.h:171
@ AL_once
play once
Definition: SLEnums.h:168
@ AL_pingPong
play once in two directions
Definition: SLEnums.h:170

◆ SLAxis

enum SLAxis

Coordinate axis enumeration.

Enumerator
A_x 
A_Y 
A_z 

Definition at line 78 of file SLEnums.h.

79 {
80  A_x = 0,
81  A_Y = 1,
82  A_z = 2
83 };
@ A_Y
Definition: SLEnums.h:81
@ A_z
Definition: SLEnums.h:82
@ A_x
Definition: SLEnums.h:80

◆ SLBillboardType

Billboard type for its orientation used in SLParticleSystem.

Enumerator
BT_Camera 
BT_Vertical 
BT_Horizontal 

Definition at line 270 of file SLEnums.h.

271 {
272  BT_Camera = 0,
273  BT_Vertical,
275 };
@ BT_Camera
Definition: SLEnums.h:272
@ BT_Horizontal
Definition: SLEnums.h:274
@ BT_Vertical
Definition: SLEnums.h:273

◆ SLCamAnim

enum SLCamAnim

Enumeration for available camera animation types.

Enumerator
CA_turntableYUp 

Orbiting around central object w. turntable rotation around y & right axis.

CA_turntableZUp 

Orbiting around central object w. turntable rotation around z & right axis.

CA_trackball 

Orbiting around central object w. one rotation around one axis.

CA_walkingYUp 

Walk translation with AWSD and look around rotation around y & right axis.

CA_walkingZUp 

Walk translation with AWSD and look around rotation around z & right axis.

CA_deviceRotYUp 

The device rotation controls the camera rotation.

CA_deviceRotLocYUp 

The device rotation controls the camera rotation and the GPS controls the Camera Translation.

CA_off 

No camera animation.

Definition at line 120 of file SLEnums.h.

121 {
122  CA_turntableYUp, //!< Orbiting around central object w. turntable rotation around y & right axis.
123  CA_turntableZUp, //!< Orbiting around central object w. turntable rotation around z & right axis.
124  CA_trackball, //!< Orbiting around central object w. one rotation around one axis
125  CA_walkingYUp, //!< Walk translation with AWSD and look around rotation around y & right axis.
126  CA_walkingZUp, //!< Walk translation with AWSD and look around rotation around z & right axis.
127  CA_deviceRotYUp, //!< The device rotation controls the camera rotation.
128  CA_deviceRotLocYUp, //!< The device rotation controls the camera rotation and the GPS controls the Camera Translation
129  CA_off //!< No camera animation
130 };
@ CA_turntableYUp
Orbiting around central object w. turntable rotation around y & right axis.
Definition: SLEnums.h:122
@ CA_walkingYUp
Walk translation with AWSD and look around rotation around y & right axis.
Definition: SLEnums.h:125
@ CA_off
No camera animation.
Definition: SLEnums.h:129
@ CA_deviceRotLocYUp
The device rotation controls the camera rotation and the GPS controls the Camera Translation.
Definition: SLEnums.h:128
@ CA_trackball
Orbiting around central object w. one rotation around one axis.
Definition: SLEnums.h:124
@ CA_deviceRotYUp
The device rotation controls the camera rotation.
Definition: SLEnums.h:127
@ CA_turntableZUp
Orbiting around central object w. turntable rotation around z & right axis.
Definition: SLEnums.h:123
@ CA_walkingZUp
Walk translation with AWSD and look around rotation around z & right axis.
Definition: SLEnums.h:126

◆ SLEasingCurve

Enumeration for animation easing curves.

Enumerations copied from Qt class QEasingCurve. See http://qt-project.org/doc/qt-4.8/qeasingcurve.html#Type-enum

Enumerator
EC_linear 

linear easing with constant velocity

EC_inQuad 

quadratic easing in, acceleration from zero velocity

EC_outQuad 

quadratic easing out, decelerating to zero velocity

EC_inOutQuad 

quadratic easing in and then out

EC_outInQuad 

quadratic easing out and then in

EC_inCubic 

cubic in easing in, acceleration from zero velocity

EC_outCubic 

cubic easing out, decelerating to zero velocity

EC_inOutCubic 

cubic easing in and then out

EC_outInCubic 

cubic easing out and then in

EC_inQuart 

quartic easing in, acceleration from zero velocity

EC_outQuart 

quartic easing out, decelerating to zero velocity

EC_inOutQuart 

quartic easing in and then out

EC_outInQuart 

quartic easing out and then in

EC_inQuint 

quintic easing in, acceleration from zero velocity

EC_outQuint 

quintic easing out, decelerating to zero velocity

EC_inOutQuint 

quintic easing in and then out

EC_outInQuint 

quintic easing out and then in

EC_inSine 

sine easing in, acceleration from zero velocity

EC_outSine 

sine easing out, decelerating to zero velocity

EC_inOutSine 

sine easing in and then out

EC_outInSine 

sine easing out and then in

Definition at line 179 of file SLEnums.h.

180 {
181  EC_linear = 0, //!< linear easing with constant velocity
182  EC_inQuad = 1, //!< quadratic easing in, acceleration from zero velocity
183  EC_outQuad = 2, //!< quadratic easing out, decelerating to zero velocity
184  EC_inOutQuad = 3, //!< quadratic easing in and then out
185  EC_outInQuad = 4, //!< quadratic easing out and then in
186  EC_inCubic = 5, //!< cubic in easing in, acceleration from zero velocity
187  EC_outCubic = 6, //!< cubic easing out, decelerating to zero velocity
188  EC_inOutCubic = 7, //!< cubic easing in and then out
189  EC_outInCubic = 8, //!< cubic easing out and then in
190  EC_inQuart = 9, //!< quartic easing in, acceleration from zero velocity
191  EC_outQuart = 10, //!< quartic easing out, decelerating to zero velocity
192  EC_inOutQuart = 11, //!< quartic easing in and then out
193  EC_outInQuart = 12, //!< quartic easing out and then in
194  EC_inQuint = 13, //!< quintic easing in, acceleration from zero velocity
195  EC_outQuint = 14, //!< quintic easing out, decelerating to zero velocity
196  EC_inOutQuint = 15, //!< quintic easing in and then out
197  EC_outInQuint = 16, //!< quintic easing out and then in
198  EC_inSine = 17, //!< sine easing in, acceleration from zero velocity
199  EC_outSine = 18, //!< sine easing out, decelerating to zero velocity
200  EC_inOutSine = 19, //!< sine easing in and then out
201  EC_outInSine = 20, //!< sine easing out and then in
202 };
@ EC_inOutQuart
quartic easing in and then out
Definition: SLEnums.h:192
@ EC_inCubic
cubic in easing in, acceleration from zero velocity
Definition: SLEnums.h:186
@ EC_outQuart
quartic easing out, decelerating to zero velocity
Definition: SLEnums.h:191
@ EC_outInQuint
quintic easing out and then in
Definition: SLEnums.h:197
@ EC_inOutCubic
cubic easing in and then out
Definition: SLEnums.h:188
@ EC_outCubic
cubic easing out, decelerating to zero velocity
Definition: SLEnums.h:187
@ EC_outInSine
sine easing out and then in
Definition: SLEnums.h:201
@ EC_outInQuad
quadratic easing out and then in
Definition: SLEnums.h:185
@ EC_inOutQuad
quadratic easing in and then out
Definition: SLEnums.h:184
@ EC_inOutSine
sine easing in and then out
Definition: SLEnums.h:200
@ EC_outInCubic
cubic easing out and then in
Definition: SLEnums.h:189
@ EC_inSine
sine easing in, acceleration from zero velocity
Definition: SLEnums.h:198
@ EC_inQuart
quartic easing in, acceleration from zero velocity
Definition: SLEnums.h:190
@ EC_outQuint
quintic easing out, decelerating to zero velocity
Definition: SLEnums.h:195
@ EC_outQuad
quadratic easing out, decelerating to zero velocity
Definition: SLEnums.h:183
@ EC_linear
linear easing with constant velocity
Definition: SLEnums.h:181
@ EC_inOutQuint
quintic easing in and then out
Definition: SLEnums.h:196
@ EC_outInQuart
quartic easing out and then in
Definition: SLEnums.h:193
@ EC_inQuad
quadratic easing in, acceleration from zero velocity
Definition: SLEnums.h:182
@ EC_inQuint
quintic easing in, acceleration from zero velocity
Definition: SLEnums.h:194
@ EC_outSine
sine easing out, decelerating to zero velocity
Definition: SLEnums.h:199

◆ SLEyeType

enum SLEyeType

Enumeration for stereo eye type used for camera projection.

Enumerator
ET_left 
ET_center 
ET_right 

Definition at line 151 of file SLEnums.h.

152 {
153  ET_left = -1,
154  ET_center = 0,
155  ET_right = 1
156 };
@ ET_center
Definition: SLEnums.h:154
@ ET_right
Definition: SLEnums.h:155
@ ET_left
Definition: SLEnums.h:153

◆ SLFogMode

enum SLFogMode

Corresponds to the old fog modes in OpenGL 2.1.

See also: https://www.khronos.org/registry/OpenGL-Refpages/gl2.1/xhtml/glFog.xml

Enumerator
FM_linear 
FM_exp 
FM_exp2 

Definition at line 262 of file SLEnums.h.

263 {
264  FM_linear = 0,
265  FM_exp,
266  FM_exp2
267 };
@ FM_exp
Definition: SLEnums.h:265
@ FM_exp2
Definition: SLEnums.h:266
@ FM_linear
Definition: SLEnums.h:264

◆ SLKey

enum SLKey

Keyboard key codes enumeration.

Enumerator
K_none 
K_space 
K_tab 
K_enter 
K_esc 
K_backspace 
K_delete 
K_up 
K_down 
K_right 
K_left 
K_home 
K_end 
K_insert 
K_pageUp 
K_pageDown 
K_NP0 
K_NP1 
K_NP2 
K_NP3 
K_NP4 
K_NP5 
K_NP6 
K_NP7 
K_NP8 
K_NP9 
K_NPDivide 
K_NPMultiply 
K_NPAdd 
K_NPSubtract 
K_NPEnter 
K_NPDecimal 
K_F1 
K_F2 
K_F3 
K_F4 
K_F5 
K_F6 
K_F7 
K_F8 
K_F9 
K_F10 
K_F11 
K_F12 
K_super 
K_shift 
K_ctrl 
K_alt 

Definition at line 15 of file SLEnums.h.

16 {
17  K_none = 0,
18  K_space = 32,
19  K_tab = 256,
20  K_enter,
21  K_esc,
23  K_delete,
24  K_up,
25  K_down,
26  K_right,
27  K_left,
28  K_home,
29  K_end,
30  K_insert,
31  K_pageUp,
32  K_pageDown,
33  K_NP0,
34  K_NP1,
35  K_NP2,
36  K_NP3,
37  K_NP4,
38  K_NP5,
39  K_NP6,
40  K_NP7,
41  K_NP8,
42  K_NP9,
43  K_NPDivide,
45  K_NPAdd,
47  K_NPEnter,
49  K_F1,
50  K_F2,
51  K_F3,
52  K_F4,
53  K_F5,
54  K_F6,
55  K_F7,
56  K_F8,
57  K_F9,
58  K_F10,
59  K_F11,
60  K_F12,
61  K_super = 0x00100000,
62  K_shift = 0x00200000,
63  K_ctrl = 0x00400000,
64  K_alt = 0x00800000
65 };
@ K_down
Definition: SLEnums.h:25
@ K_NP5
Definition: SLEnums.h:38
@ K_delete
Definition: SLEnums.h:23
@ K_space
Definition: SLEnums.h:18
@ K_F2
Definition: SLEnums.h:50
@ K_F1
Definition: SLEnums.h:49
@ K_F12
Definition: SLEnums.h:60
@ K_NP9
Definition: SLEnums.h:42
@ K_F6
Definition: SLEnums.h:54
@ K_F4
Definition: SLEnums.h:52
@ K_up
Definition: SLEnums.h:24
@ K_enter
Definition: SLEnums.h:20
@ K_esc
Definition: SLEnums.h:21
@ K_none
Definition: SLEnums.h:17
@ K_tab
Definition: SLEnums.h:19
@ K_NP6
Definition: SLEnums.h:39
@ K_shift
Definition: SLEnums.h:62
@ K_end
Definition: SLEnums.h:29
@ K_insert
Definition: SLEnums.h:30
@ K_right
Definition: SLEnums.h:26
@ K_NPEnter
Definition: SLEnums.h:47
@ K_F9
Definition: SLEnums.h:57
@ K_NPDivide
Definition: SLEnums.h:43
@ K_pageDown
Definition: SLEnums.h:32
@ K_F8
Definition: SLEnums.h:56
@ K_F5
Definition: SLEnums.h:53
@ K_pageUp
Definition: SLEnums.h:31
@ K_NPMultiply
Definition: SLEnums.h:44
@ K_NPSubtract
Definition: SLEnums.h:46
@ K_NP8
Definition: SLEnums.h:41
@ K_NP1
Definition: SLEnums.h:34
@ K_NP3
Definition: SLEnums.h:36
@ K_ctrl
Definition: SLEnums.h:63
@ K_NP7
Definition: SLEnums.h:40
@ K_NP2
Definition: SLEnums.h:35
@ K_F10
Definition: SLEnums.h:58
@ K_F11
Definition: SLEnums.h:59
@ K_NP4
Definition: SLEnums.h:37
@ K_super
Definition: SLEnums.h:61
@ K_F3
Definition: SLEnums.h:51
@ K_F7
Definition: SLEnums.h:55
@ K_alt
Definition: SLEnums.h:64
@ K_left
Definition: SLEnums.h:27
@ K_NP0
Definition: SLEnums.h:33
@ K_backspace
Definition: SLEnums.h:22
@ K_home
Definition: SLEnums.h:28
@ K_NPDecimal
Definition: SLEnums.h:48
@ K_NPAdd
Definition: SLEnums.h:45

◆ SLLogVerbosity

Enumerator
LV_quiet 
LV_minimal 
LV_normal 
LV_detailed 
LV_diagnostic 

Definition at line 243 of file SLEnums.h.

244 {
245  LV_quiet = 0,
246  LV_minimal = 1,
247  LV_normal = 2,
248  LV_detailed = 3,
249  LV_diagnostic = 4
250 };
@ LV_diagnostic
Definition: SLEnums.h:249
@ LV_normal
Definition: SLEnums.h:247
@ LV_minimal
Definition: SLEnums.h:246
@ LV_quiet
Definition: SLEnums.h:245
@ LV_detailed
Definition: SLEnums.h:248

◆ SLMouseButton

Mouse button codes.

Enumerator
MB_none 
MB_left 
MB_middle 
MB_right 

Definition at line 97 of file SLEnums.h.

98 {
99  MB_none,
100  MB_left,
101  MB_middle,
102  MB_right
103 };
@ MB_none
Definition: SLEnums.h:99
@ MB_left
Definition: SLEnums.h:100
@ MB_right
Definition: SLEnums.h:102
@ MB_middle
Definition: SLEnums.h:101

◆ SLProjType

enum SLProjType

Enumeration for different camera projections.

Enumerator
P_monoPerspective 

standard mono pinhole perspective projection

P_monoIntrinsic 

standard mono pinhole perspective projection from intrinsic calibration

P_monoOrthographic 

standard mono orthographic projection

P_stereoSideBySide 

side-by-side

P_stereoSideBySideP 

side-by-side proportional for mirror stereoscopes

P_stereoSideBySideD 

side-by-side distorted for Oculus Rift like glasses

P_stereoLineByLine 

line-by-line

P_stereoColumnByColumn 

column-by-column

P_stereoPixelByPixel 

checkerboard pattern (DLP3D)

P_stereoColorRC 

color masking for red-cyan anaglyphs

P_stereoColorRG 

color masking for red-green anaglyphs

P_stereoColorRB 

color masking for red-blue anaglyphs

P_stereoColorYB 

color masking for yellow-blue anaglyphs (ColorCode 3D)

Definition at line 133 of file SLEnums.h.

134 {
135  P_monoPerspective = 0, //!< standard mono pinhole perspective projection
136  P_monoIntrinsic, //!< standard mono pinhole perspective projection from intrinsic calibration
137  P_monoOrthographic, //!< standard mono orthographic projection
138  P_stereoSideBySide, //!< side-by-side
139  P_stereoSideBySideP, //!< side-by-side proportional for mirror stereoscopes
140  P_stereoSideBySideD, //!< side-by-side distorted for Oculus Rift like glasses
141  P_stereoLineByLine, //!< line-by-line
142  P_stereoColumnByColumn, //!< column-by-column
143  P_stereoPixelByPixel, //!< checkerboard pattern (DLP3D)
144  P_stereoColorRC, //!< color masking for red-cyan anaglyphs
145  P_stereoColorRG, //!< color masking for red-green anaglyphs
146  P_stereoColorRB, //!< color masking for red-blue anaglyphs
147  P_stereoColorYB //!< color masking for yellow-blue anaglyphs (ColorCode 3D)
148 };
@ P_monoPerspective
standard mono pinhole perspective projection
Definition: SLEnums.h:135
@ P_stereoSideBySideP
side-by-side proportional for mirror stereoscopes
Definition: SLEnums.h:139
@ P_monoIntrinsic
standard mono pinhole perspective projection from intrinsic calibration
Definition: SLEnums.h:136
@ P_stereoPixelByPixel
checkerboard pattern (DLP3D)
Definition: SLEnums.h:143
@ P_stereoColumnByColumn
column-by-column
Definition: SLEnums.h:142
@ P_stereoColorRG
color masking for red-green anaglyphs
Definition: SLEnums.h:145
@ P_stereoSideBySideD
side-by-side distorted for Oculus Rift like glasses
Definition: SLEnums.h:140
@ P_stereoSideBySide
side-by-side
Definition: SLEnums.h:138
@ P_stereoColorYB
color masking for yellow-blue anaglyphs (ColorCode 3D)
Definition: SLEnums.h:147
@ P_stereoLineByLine
line-by-line
Definition: SLEnums.h:141
@ P_stereoColorRB
color masking for red-blue anaglyphs
Definition: SLEnums.h:146
@ P_stereoColorRC
color masking for red-cyan anaglyphs
Definition: SLEnums.h:144
@ P_monoOrthographic
standard mono orthographic projection
Definition: SLEnums.h:137

◆ SLReflectionModel

Light Reflection Models for shader generation usd in SLMaterial.

Enumerator
RM_BlinnPhong 
RM_CookTorrance 
RM_Particle 
RM_Custom 

Definition at line 287 of file SLEnums.h.

288 {
289  RM_BlinnPhong = 0,
291  RM_Particle,
292  RM_Custom
293 };
@ RM_BlinnPhong
Definition: SLEnums.h:289
@ RM_Custom
Definition: SLEnums.h:292
@ RM_Particle
Definition: SLEnums.h:291
@ RM_CookTorrance
Definition: SLEnums.h:290

◆ SLRenderType

Rendering type enumeration.

Enumerator
RT_gl 

OpenGL.

RT_rt 

Ray Tracing.

RT_pt 

Path Tracing.

RT_optix_rt 

Ray Tracing with OptiX.

RT_optix_pt 

Path Tracing with OptiX.

Definition at line 68 of file SLEnums.h.

69 {
70  RT_gl = 0, //!< OpenGL
71  RT_rt = 1, //!< Ray Tracing
72  RT_pt = 2, //!< Path Tracing
73  RT_optix_rt = 3, //!< Ray Tracing with OptiX
74  RT_optix_pt = 4 //!< Path Tracing with OptiX
75 };
@ RT_rt
Ray Tracing.
Definition: SLEnums.h:71
@ RT_pt
Path Tracing.
Definition: SLEnums.h:72
@ RT_gl
OpenGL.
Definition: SLEnums.h:70
@ RT_optix_pt
Path Tracing with OptiX.
Definition: SLEnums.h:74
@ RT_optix_rt
Ray Tracing with OptiX.
Definition: SLEnums.h:73

◆ SLShaderType

Shader type enumeration for vertex or fragment (pixel) shader.

Enumerator
ST_none 
ST_vertex 
ST_fragment 
ST_geometry 
ST_tesselation 

Definition at line 221 of file SLEnums.h.

222 {
223  ST_none,
224  ST_vertex,
225  ST_fragment,
226  ST_geometry,
228 };
@ ST_tesselation
Definition: SLEnums.h:227
@ ST_vertex
Definition: SLEnums.h:224
@ ST_none
Definition: SLEnums.h:223
@ ST_geometry
Definition: SLEnums.h:226
@ ST_fragment
Definition: SLEnums.h:225

◆ SLShapeType

Particle system shape type.

Enumerator
ST_Sphere 
ST_Box 
ST_Cone 
ST_Pyramid 

Definition at line 278 of file SLEnums.h.

279 {
280  ST_Sphere = 0,
281  ST_Box,
282  ST_Cone,
283  ST_Pyramid
284 };
@ ST_Sphere
Definition: SLEnums.h:280
@ ST_Pyramid
Definition: SLEnums.h:283
@ ST_Box
Definition: SLEnums.h:281
@ ST_Cone
Definition: SLEnums.h:282

◆ SLSkinMethod

Skinning methods.

Enumerator
SM_hardware 

Do vertex skinning on the GPU.

SM_software 

Do vertex skinning on the CPU.

Definition at line 214 of file SLEnums.h.

215 {
216  SM_hardware, //!< Do vertex skinning on the GPU
217  SM_software //!< Do vertex skinning on the CPU
218 };
@ SM_hardware
Do vertex skinning on the GPU.
Definition: SLEnums.h:216
@ SM_software
Do vertex skinning on the CPU.
Definition: SLEnums.h:217

◆ SLTextAlign

Enumeration for text alignment in a box.

Enumerator
TA_topLeft 
TA_topCenter 
TA_topRight 
TA_centerLeft 
TA_centerCenter 
TA_centerRight 
TA_bottomLeft 
TA_bottomCenter 
TA_bottomRight 

Definition at line 106 of file SLEnums.h.

107 {
108  TA_topLeft,
109  TA_topCenter,
110  TA_topRight,
117 };
@ TA_topCenter
Definition: SLEnums.h:109
@ TA_centerRight
Definition: SLEnums.h:113
@ TA_topLeft
Definition: SLEnums.h:108
@ TA_bottomCenter
Definition: SLEnums.h:115
@ TA_bottomLeft
Definition: SLEnums.h:114
@ TA_topRight
Definition: SLEnums.h:110
@ TA_centerLeft
Definition: SLEnums.h:111
@ TA_bottomRight
Definition: SLEnums.h:116
@ TA_centerCenter
Definition: SLEnums.h:112

◆ SLTransformSpace

Describes the relative space a transformation is applied in.

Enumerator
TS_world 
TS_parent 
TS_object 

Definition at line 205 of file SLEnums.h.

206 {
207  // Do not change order!
208  TS_world = 0,
209  TS_parent,
210  TS_object
211 };
@ TS_world
Definition: SLEnums.h:208
@ TS_parent
Definition: SLEnums.h:209
@ TS_object
Definition: SLEnums.h:210

◆ SLUniformType

Type definition for GLSL uniform1f variables that change per frame.

Enumerator
UT_const 

constant value

UT_incDec 

never ending loop from min to max and max to min

UT_incInc 

never ending loop from min to max

UT_inc 

never ending increment

UT_random 

random values between min and max

UT_seconds 

seconds since the process has started

UT_lambda 

lambda getter function

Definition at line 231 of file SLEnums.h.

232 {
233  UT_const, //!< constant value
234  UT_incDec, //!< never ending loop from min to max and max to min
235  UT_incInc, //!< never ending loop from min to max
236  UT_inc, //!< never ending increment
237  UT_random, //!< random values between min and max
238  UT_seconds, //!< seconds since the process has started
239  UT_lambda //!< lambda getter function
240 };
@ UT_seconds
seconds since the process has started
Definition: SLEnums.h:238
@ UT_incDec
never ending loop from min to max and max to min
Definition: SLEnums.h:234
@ UT_inc
never ending increment
Definition: SLEnums.h:236
@ UT_incInc
never ending loop from min to max
Definition: SLEnums.h:235
@ UT_random
random values between min and max
Definition: SLEnums.h:237
@ UT_const
constant value
Definition: SLEnums.h:233
@ UT_lambda
lambda getter function
Definition: SLEnums.h:239

◆ SLViewportAlign

Mouse button codes.

Enumerator
VA_center 
VA_leftOrBottom 

Definition at line 253 of file SLEnums.h.

254 {
255  VA_center = 0,
257 };
@ VA_leftOrBottom
Definition: SLEnums.h:256
@ VA_center
Definition: SLEnums.h:255

Variable Documentation

◆ SL_EMPTY_SCENE_ID

constexpr SLSceneID SL_EMPTY_SCENE_ID = 0
constexpr

SLSceneID for an empty scene.

Definition at line 94 of file SLEnums.h.