|
| static void | Create () |
| | setup light context
|
| static void | Discard () |
| | discard light context
|
| static void | SetupDirectionalLight (const Graphics::GraphicsEntityId id, const DirectionalLightSetupInfo &info) |
| | setup entity as global light
|
| static void | SetupPointLight (const Graphics::GraphicsEntityId id, const PointLightSetupInfo &info) |
| | Setup entity as point light source.
|
| static void | SetupSpotLight (const Graphics::GraphicsEntityId id, const SpotLightSetupInfo &info) |
| | Setup entity as spot light.
|
| static void | SetupAreaLight (const Graphics::GraphicsEntityId id, const AreaLightSetupInfo &info) |
| | Setup entity as area light.
|
| static void | SetColor (const Graphics::GraphicsEntityId id, const Math::vec3 &color) |
| | set color of light
|
| static Math::vec3 | GetColor (const Graphics::GraphicsEntityId id) |
| static void | SetRange (const Graphics::GraphicsEntityId id, const float range) |
| | set range of light
|
| static void | SetIntensity (const Graphics::GraphicsEntityId id, const float intensity) |
| | set intensity of light
|
| static float | GetIntensity (const Graphics::GraphicsEntityId id) |
| static void | SetTransform (const Graphics::GraphicsEntityId id, const float azimuth, const float zenith) |
| | Set transform as angles.
|
| static const Math::mat4 | GetTransform (const Graphics::GraphicsEntityId id) |
| | get transform
|
| static const Math::mat4 | GetObserverTransform (const Graphics::GraphicsEntityId id) |
| | get the view transform including projections
|
| static const void | SetPosition (const Graphics::GraphicsEntityId id, const Math::point &position) |
| | Set light position.
|
| static const Math::point | GetPosition (const Graphics::GraphicsEntityId id) |
| | Get light position.
|
| static const void | SetRotation (const Graphics::GraphicsEntityId id, const Math::quat &rotation) |
| | Set light rotation.
|
| static const Math::quat | GetRotation (const Graphics::GraphicsEntityId id) |
| | Get light rotation.
|
| static const void | SetScale (const Graphics::GraphicsEntityId id, const Math::vec3 &scale) |
| | Set light scale.
|
| static const Math::vec3 | GetScale (const Graphics::GraphicsEntityId id) |
| | Get light scale.
|
| static LightType | GetType (const Graphics::GraphicsEntityId id) |
| | get the light type
|
| static void | GetInnerOuterAngle (const Graphics::GraphicsEntityId id, float &inner, float &outer) |
| | get inner and outer angle for spotlights
|
| static void | SetInnerOuterAngle (const Graphics::GraphicsEntityId id, float inner, float outer) |
| | set inner and outer angle for spotlights
|
| static void | OnPrepareView (const Graphics::ViewId view, const Graphics::FrameContext &ctx) |
| | prepare light visibility
|
| static void | UpdateLights (const Graphics::FrameContext &ctx) |
| | prepare light lists
|
| static void | RunFrameScriptJobs (const Graphics::FrameContext &ctx) |
| | run framescript when visibility is done
|
| static void | Resize (const uint framescriptHash, SizeT width, SizeT height) |
| | React to window resize event.
|
| static void | OnRenderDebug (uint32_t flags) |
| | render debug
|
| static void | SetupTerrainShadows (const CoreGraphics::TextureId terrainShadowMap, const uint worldSize) |
| | Setup terrain shadows.
|
| static const CoreGraphics::BufferId | GetLightIndexBuffer () |
| | get light index lists buffer
|
| static const CoreGraphics::BufferId | GetLightsBuffer () |
| | get light lists buffer
|
| static const LightsCluster::LightUniforms::STRUCT & | GetLightUniforms () |
| | get light uniforms
|
|
| enum | {
Light_Entity
, Light_Type
, Light_Color
, Light_Intensity
,
Light_ShadowCaster
, Light_Range
, Light_TypedLightId
, Light_StageMask
} |
| enum | {
PointLight_Transform
, PointLight_ProjectionTexture
, PointLight_Observers
, PointLight_ShadowTiles
,
PointLight_ShadowProjectionTransforms
} |
| enum | {
SpotLight_Transform
, SpotLight_ConeAngles
, SpotLight_ProjectionTexture
, SpotLight_ProjectionTransform
,
SpotLight_ShadowProjectionTransform
, SpotLight_ShadowTile
, SpotLight_Observer
} |
| enum | {
AreaLight_Transform
, AreaLight_Shape
, AreaLight_TwoSided
, AreaLight_Observers
,
AreaLight_ShadowProjectionTransforms
, AreaLight_ShadowTiles
, AreaLight_RenderMesh
} |
| enum | {
DirectionalLight_View
, DirectionalLight_Direction
, DirectionalLight_Transform
, DirectionalLight_CascadeObservers
,
DirectionalLight_CascadeTiles
, DirectionalLight_CascadeDistances
, DirectionalLight_CascadeTransforms
} |
| enum | { ShadowCaster_Transform
} |
| typedef Ids::IdAllocator< Graphics::GraphicsEntityId, LightType, Math::vec3, float, bool, float, Ids::Id32, Graphics::StageMask > | GenericLightAllocator |
| typedef Ids::IdAllocator< Math::transform44, CoreGraphics::TextureId, std::array< Graphics::GraphicsEntityId, 6 >, std::array< Math::rectangle< int >, 6 >, std::array< Math::mat4, 6 > > | PointLightAllocator |
| typedef Ids::IdAllocator< Math::transform44, std::array< float, 2 >, CoreGraphics::TextureId, Math::mat4, Math::mat4, Math::rectangle< int >, Graphics::GraphicsEntityId > | SpotLightAllocator |
| typedef Ids::IdAllocator< Math::transform44, AreaLightShape, bool, std::array< Graphics::GraphicsEntityId, 2 >, std::array< Math::mat4, 2 >, std::array< Math::rectangle< int >, 2 >, bool > | AreaLightAllocator |
| typedef Ids::IdAllocator< Graphics::ViewId, Math::vector, Math::mat4, Util::FixedArray< Graphics::GraphicsEntityId >, Util::FixedArray< Math::rectangle< int > >, Util::FixedArray< float >, Util::FixedArray< Math::mat4 > > | DirectionalLightAllocator |
| typedef Ids::IdAllocator< Math::mat4 > | ShadowCasterAllocator |