Open 3D Engine Atom Gem API Reference 23.10.0
O3DE is an open-source, fully-featured, high-fidelity, modular 3D engine for building games and simulations, available to every industry.
AZ::Render::ImageBasedLightFeatureProcessor Class Referencefinal

This feature processor handles image based lights. More...

#include <ImageBasedLightFeatureProcessor.h>

Inherits AZ::Render::ImageBasedLightFeatureProcessorInterface.

Public Member Functions

 AZ_RTTI (AZ::Render::ImageBasedLightFeatureProcessor, "{1206C38B-2143-4EE1-9C83-F876BD465BBB}", AZ::Render::ImageBasedLightFeatureProcessorInterface)
 
void Activate () override
 Creates pools, buffers, and buffer views.
 
void Deactivate () override
 Releases GPU resources.
 
void Simulate (const FeatureProcessor::SimulatePacket &packet) override
 Updates the images for any ibls that changed.
 
void SetSpecularImage (const Data::Asset< RPI::StreamingImageAsset > &imageAsset) override
 Sets the global specular IBL image for this scene.
 
const Data::Instance< RPI::Image > & GetSpecularImage () const
 
void SetDiffuseImage (const Data::Asset< RPI::StreamingImageAsset > &imageAsset) override
 Sets the global diffuse IBL image for this scene.
 
const Data::Instance< RPI::Image > & GetDiffuseImage () const
 
void SetExposure (float exposure) override
 Sets the exposure value in stops for the global IBL. 0 = no change. Final intensity = intensity * 2^exposure.
 
float GetExposure () const
 
void SetOrientation (const Quaternion &orientation) override
 Sets the orientation of the global IBL.
 
const Quaternion & GetOrientation () const
 
void Reset () override
 Resets the images and exposure back to default (unset) values.
 
- Public Member Functions inherited from AZ::Render::ImageBasedLightFeatureProcessorInterface
 AZ_RTTI (AZ::Render::ImageBasedLightFeatureProcessorInterface, "{EE7441A3-B406-4717-8F35-E3DAC60E3BDB}", AZ::RPI::FeatureProcessor)
 
virtual void SetSpecularImage (const Data::Asset< RPI::StreamingImageAsset > &imageAsset)=0
 Sets the global specular IBL image for this scene.
 
virtual void SetDiffuseImage (const Data::Asset< RPI::StreamingImageAsset > &imageAsset)=0
 Sets the global diffuse IBL image for this scene.
 
virtual void SetExposure (float exposure)=0
 Sets the exposure value in stops for the global IBL. 0 = no change. Final intensity = intensity * 2^exposure.
 
virtual void SetOrientation (const Quaternion &orientation)=0
 Sets the orientation of the global IBL.
 
virtual void Reset ()=0
 Resets the images and exposure back to default (unset) values.
 
- Public Member Functions inherited from AZ::RPI::FeatureProcessor
 AZ_RTTI (FeatureProcessor, "{B8027170-C65C-4237-964D-B557FC9D7575}")
 
 AZ_CLASS_ALLOCATOR (FeatureProcessor, AZ::SystemAllocator)
 
SceneGetParentScene () const
 
virtual void Activate ()
 Perform any necessary activation and gives access to owning Scene.
 
virtual void Deactivate ()
 Perform any necessary deactivation.
 
virtual void ApplyRenderPipelineChange (RenderPipeline *pipeline)
 
virtual void AddRenderPasses (RenderPipeline *pipeline)
 
virtual void PrepareViews (const PrepareViewsPacket &, AZStd::vector< AZStd::pair< PipelineViewTag, ViewPtr > > &)
 
virtual void Simulate (const SimulatePacket &)
 
virtual void Render (const RenderPacket &)
 
virtual void OnEndCulling (const RenderPacket &)
 
virtual void OnRenderEnd ()
 

Static Public Member Functions

static void Reflect (AZ::ReflectContext *context)
 

Additional Inherited Members

- Protected Member Functions inherited from AZ::RPI::FeatureProcessor
void EnableSceneNotification ()
 
void DisableSceneNotification ()
 

Detailed Description

This feature processor handles image based lights.

Member Function Documentation

◆ Activate()

void AZ::Render::ImageBasedLightFeatureProcessor::Activate ( )
overridevirtual

Creates pools, buffers, and buffer views.

Reimplemented from AZ::RPI::FeatureProcessor.

◆ Deactivate()

void AZ::Render::ImageBasedLightFeatureProcessor::Deactivate ( )
overridevirtual

Releases GPU resources.

Reimplemented from AZ::RPI::FeatureProcessor.

◆ Reset()

void AZ::Render::ImageBasedLightFeatureProcessor::Reset ( )
overridevirtual

Resets the images and exposure back to default (unset) values.

Implements AZ::Render::ImageBasedLightFeatureProcessorInterface.

◆ SetDiffuseImage()

void AZ::Render::ImageBasedLightFeatureProcessor::SetDiffuseImage ( const Data::Asset< RPI::StreamingImageAsset > &  imageAsset)
overridevirtual

Sets the global diffuse IBL image for this scene.

Implements AZ::Render::ImageBasedLightFeatureProcessorInterface.

◆ SetExposure()

void AZ::Render::ImageBasedLightFeatureProcessor::SetExposure ( float  exposure)
overridevirtual

Sets the exposure value in stops for the global IBL. 0 = no change. Final intensity = intensity * 2^exposure.

Implements AZ::Render::ImageBasedLightFeatureProcessorInterface.

◆ SetOrientation()

void AZ::Render::ImageBasedLightFeatureProcessor::SetOrientation ( const Quaternion &  orientation)
overridevirtual

Sets the orientation of the global IBL.

Implements AZ::Render::ImageBasedLightFeatureProcessorInterface.

◆ SetSpecularImage()

void AZ::Render::ImageBasedLightFeatureProcessor::SetSpecularImage ( const Data::Asset< RPI::StreamingImageAsset > &  imageAsset)
overridevirtual

Sets the global specular IBL image for this scene.

Implements AZ::Render::ImageBasedLightFeatureProcessorInterface.


The documentation for this class was generated from the following file: