| HDK
    | 
Base class for all light types. More...
#include <GR_Light.h>
 Inheritance diagram for GR_Light:
 Inheritance diagram for GR_Light:| Classes | |
| struct | LightTag | 
| Public Types | |
| enum | LightType { AMBIENT, DISTANT, POINT, ENVIRONMENT, AREA } | 
| Static Public Member Functions | |
| static RV_ShaderProgram * | getAmbientOcclusionShader (bool is_raytrace) | 
| static bool | initShaders (RV_Instance *inst) | 
| static void | cleanupShaders () | 
| Protected Types | |
| enum | { GLOBAL_SET = 0, LIGHT_SET = 1 } | 
| Protected Member Functions | |
| GR_Light (const UT_StringHolder &name, LightType type) | |
| ~GR_Light () override | |
| UT_NON_COPYABLE (GR_Light) | |
| bool | privInitBlocks (RV_Render *r, void *light_block, int light_size, void *shadow_block, int shadow_size) | 
| void | privBindTexture (RV_Render *r, const UT_StringHolder &map_name, int rel_op_id, RV_TextureRef &map_id, const UT_StringHolder &sampler_name, const GR_CommonDispOption &opts, RV_TextureParms *tex_parms=nullptr, bool is_cube=false) | 
| void | initTexParms (RV_Render *r, const GR_CommonDispOption &opts, RV_TextureParms &parms) const | 
|  Protected Member Functions inherited from GR_SceneItem | |
| GR_SceneItem (const UT_StringHolder &name, int id) | |
| virtual | ~GR_SceneItem () | 
| UT_NON_COPYABLE (GR_SceneItem) | |
| Static Protected Member Functions | |
| static RV_ShaderProgram * | privGetShader (exint tags) | 
| Protected Attributes | |
| bool | myDirtyFlag | 
| bool | myShadowDirtyFlag | 
| bool | mySetBound | 
| UT_StringHolder | myShadowMask | 
| Static Protected Attributes | |
| static LightTag | Tag | 
Base class for all light types.
Definition at line 41 of file GR_Light.h.
| 
 | protected | 
| Enumerator | |
|---|---|
| GLOBAL_SET | |
| LIGHT_SET | |
Definition at line 146 of file GR_Light.h.
| enum GR_Light::LightType | 
| Enumerator | |
|---|---|
| AMBIENT | |
| DISTANT | |
| POINT | |
| ENVIRONMENT | |
| AREA | |
Definition at line 44 of file GR_Light.h.
| 
 | protected | 
| 
 | overrideprotected | 
| 
 | inlinevirtual | 
Reimplemented in GR_AreaLight.
Definition at line 103 of file GR_Light.h.
| bool GR_Light::bindSets | ( | RV_Render * | r, | 
| RV_ShaderProgramBase * | shader | ||
| ) | 
| 
 | inlinevirtual | 
Reimplemented in GR_AreaLight.
Definition at line 93 of file GR_Light.h.
| 
 | inline | 
Definition at line 61 of file GR_Light.h.
| 
 | static | 
| 
 | inlinevirtual | 
Reimplemented in GR_AreaLight, GR_PointLight, and GR_DistantLight.
Definition at line 104 of file GR_Light.h.
| 
 | inlinevirtual | 
Reimplemented in GR_AreaLight.
Definition at line 99 of file GR_Light.h.
| 
 | inlinevirtual | 
Reimplemented in GR_AreaLight.
Definition at line 100 of file GR_Light.h.
| 
 | static | 
| 
 | pure virtual | 
Implemented in GR_AreaLight, GR_EnvLight, GR_AmbientLight, GR_PointLight, and GR_DistantLight.
| 
 | pure virtual | 
Implemented in GR_AreaLight, and GR_AmbientLight.
| 
 | pure virtual | 
Implemented in GR_AreaLight, GR_EnvLight, GR_AmbientLight, GR_PointLight, and GR_DistantLight.
| bool GR_Light::initLightSetForRender | ( | RV_Render * | r, | 
| RV_ShaderProgramBase * | shader | ||
| ) | 
| bool GR_Light::initSceneSetForRender | ( | RV_Render * | r, | 
| RV_ShaderProgram * | shader, | ||
| UT_UniquePtr< RV_ShaderBlock > & | scene_block, | ||
| UT_UniquePtr< RV_ShaderVariableSet > & | scene_set | ||
| ) | 
| 
 | static | 
| 
 | protected | 
| 
 | inline | 
Definition at line 80 of file GR_Light.h.
| 
 | inline | 
Definition at line 58 of file GR_Light.h.
| 
 | inline | 
Definition at line 55 of file GR_Light.h.
| 
 | inline | 
Definition at line 68 of file GR_Light.h.
| 
 | inline | 
Definition at line 110 of file GR_Light.h.
| 
 | pure virtual | 
Implemented in GR_AreaLight, and GR_AmbientLight.
| 
 | inline | 
Definition at line 69 of file GR_Light.h.
| 
 | protected | 
| 
 | staticprotected | 
| 
 | protected | 
| 
 | inline | 
Definition at line 62 of file GR_Light.h.
| 
 | inline | 
Definition at line 59 of file GR_Light.h.
| 
 | inline | 
Definition at line 56 of file GR_Light.h.
| void GR_Light::setInstanceTransforms | ( | const UT_Matrix4FArray & | transforms, | 
| const UT_Vector4FArray & | colors | ||
| ) | 
Definition at line 64 of file GR_Light.h.
| 
 | inline | 
Definition at line 109 of file GR_Light.h.
| 
 | inlinevirtual | 
Reimplemented in GR_AreaLight.
Definition at line 111 of file GR_Light.h.
| 
 | pure virtual | 
Implemented in GR_AreaLight, and GR_AmbientLight.
| 
 | inline | 
Definition at line 113 of file GR_Light.h.
| 
 | inlinevirtual | 
Reimplemented in GR_AreaLight.
Definition at line 97 of file GR_Light.h.
| 
 | inline | 
Definition at line 53 of file GR_Light.h.
| 
 | protected | 
| 
 | protected | 
Definition at line 141 of file GR_Light.h.
| 
 | protected | 
Definition at line 143 of file GR_Light.h.
| 
 | protected | 
Definition at line 142 of file GR_Light.h.
| 
 | protected | 
Definition at line 144 of file GR_Light.h.
| 
 | staticprotected | 
Definition at line 171 of file GR_Light.h.