40#ifndef INCLUDED_DISTI_GLOBAL_LIGHT_MGR_H
41#define INCLUDED_DISTI_GLOBAL_LIGHT_MGR_H
52class GlobalLightMgrThreadMap;
118#if defined( DISTI_HAS_RVAL_REFS )
Definition: global_light_mgr.h:57
static bool EnableNormalize()
bool _reapplyLights
If true, the lighting state will be recalculated.
Definition: global_light_mgr.h:74
static unsigned int MAX_OPENGL_LIGHTS
The value of glGetIntegerv(GL_MAX_LIGHTS);.
Definition: global_light_mgr.h:68
void SetLightingState(LightingState &&newState)
Definition: global_light_mgr.h:122
DynamicArray< GlsLightSource * > LightingState
Definition: global_light_mgr.h:62
void InitializeStateFromOpenGL()
LightingState _currentState
This will become the _currentOpenglState when a lit object draws.
Definition: global_light_mgr.h:70
const LightingState & GetLightingState() const
static GlobalLightMgr & Instance()
bool _enableNormalize
If true, GL_NORMALIZE will be enabled during lighting.
Definition: global_light_mgr.h:75
DynamicArray< LightingState > _lightingStateStack
As each component draws it will push it's lighting state on the stack.
Definition: global_light_mgr.h:72
static unsigned int GlMaxLights()
Definition: global_light_mgr.h:87
friend class GlobalLightMgrThreadMap
Definition: global_light_mgr.h:66
bool * GetActiveLightsMask()
void ReapplyLights()
Definition: global_light_mgr.h:101
unsigned int GetNumActiveLights()
bool * _activeLights
An array storing the current on/off state for each light.
Definition: global_light_mgr.h:76
DynamicArray< GlsLightSource * > _tempOpenGLLights
Store temporary light source pointers (only used in InitializeStateFromOpenGL).
Definition: global_light_mgr.h:71
void SetupLighting(GlsEyePoint *relativeToEyepoint=NULL)
LightingState _currentOpenGLState
The current OpenGL lighting state.
Definition: global_light_mgr.h:69
void RestoreOpenGLState()
static void EnableNormalize(bool enableNormalize)
unsigned int GetActiveLightsBitMask()
void SetLightingState(const LightingState &newState)
Definition: gls_eyepoint.h:117
The disti::DynamicArray class. A templated array of objects capable of dynamically growing.
Macros and helper code to determine what subset of C++11/14/17 is available.
#define DISTI_FINAL
Macro to wrap the final keyword, removed on compilers that don't support it.
Definition: gls_cpp_lang_support.h:216
A file for all GL Studio files to include.
#define GLS_EXPORT
Macro denoting which functions should be visible from the runtime library.
Definition: gls_include.h:52
Force inclusion of the DirectShow library.
Definition: bmpimage.h:47
Generally useful defines, macros, enumerations and function prototypes.