Simplygon C++ API  8.3.35800.0
SimplygonSDK::IAmbientOcclusionCaster Class Referenceabstract

#include <SimplygonSDK.h>

Inheritance diagram for SimplygonSDK::IAmbientOcclusionCaster:
SimplygonSDK::IMaterialCaster SimplygonSDK::IProcessingObject SimplygonSDK::IObject

Public Member Functions

virtual CountedPointer< IAmbientOcclusionCasterSettingsGetAmbientOcclusionCasterSettings ()=0
 
virtual const char * GetClass ()
 
virtual rstring GetColorType ()=0
 
virtual real GetOcclusionFalloff ()=0
 
virtual real GetOcclusionMultiplier ()=0
 
virtual unsigned int GetRaysPerPixel ()=0
 
virtual bool GetUseSimpleOcclusionMode ()=0
 
virtual bool IsA (const char *type) const
 
virtual void SetAdditionalSourceScene (IScene *value)=0
 
virtual void SetColorType (const char *ColorType)=0
 
virtual void SetOcclusionFalloff (real OcclusionFalloff)=0
 
virtual void SetOcclusionMultiplier (real OcclusionMultiplier)=0
 
virtual void SetRaysPerPixel (unsigned int RaysPerPixel)=0
 
virtual void SetUseSimpleOcclusionMode (bool UseSimpleOcclusionMode)=0
 
- Public Member Functions inherited from SimplygonSDK::IMaterialCaster
virtual SGDEPRECATED void CastMaterials ()=0
 
virtual CountedPointer< IMaterialCasterSettingsGetCasterSettings ()=0
 
virtual rid GetDestMaterialId ()=0
 
virtual unsigned int GetDilation ()=0
 
virtual unsigned int GetDitherType ()=0
 
virtual unsigned int GetFillMode ()=0
 
virtual CountedPointer< IMappingImageGetMappingImage ()=0
 
virtual unsigned int GetOutputChannelBitDepth ()=0
 
virtual unsigned int GetOutputChannels ()=0
 
virtual rstring GetOutputFilePath ()=0
 
virtual CountedPointer< IImageDataGetOutputImage ()=0
 
virtual CountedPointer< IMaterialTableGetSourceMaterials ()=0
 
virtual CountedPointer< ITextureTableGetSourceTextures ()=0
 
virtual bool GetUseMultisampling ()=0
 
virtual void SetDestMaterialId (rid value)=0
 
virtual void SetDilation (unsigned int Dilation)=0
 
virtual void SetDitherType (unsigned int DitherType)=0
 
virtual void SetFillMode (unsigned int FillMode)=0
 
virtual void SetMappingImage (IMappingImage *value)=0
 
virtual void SetOutputChannelBitDepth (unsigned int OutputChannelBitDepth)=0
 
virtual void SetOutputChannels (unsigned int OutputChannels)=0
 
virtual void SetOutputFilePath (const char *value)=0
 
virtual void SetOutputImage (IImageData *value)=0
 
virtual void SetSourceMaterials (IMaterialTable *value)=0
 
virtual void SetSourceTextures (ITextureTable *value)=0
 
virtual void SetUseMultisampling (bool UseMultisampling)=0
 
- Public Member Functions inherited from SimplygonSDK::IProcessingObject
virtual void Clear ()=0
 
virtual real GetPercentDone ()=0
 
virtual void RunProcessing ()=0
 
- Public Member Functions inherited from SimplygonSDK::IObject
virtual rid AddObserver (robserver *Observer, rid EventId)=0
 
virtual void AddRef ()=0
 
virtual rstring GetName ()=0
 
virtual void * GetUserComponentArea (rid userid)=0
 
virtual void PrintInfo ()=0
 
virtual void Release ()=0
 
virtual void RemoveObserver (rid ObserverId)=0
 
virtual void SetName (const char *Name)=0
 

Static Public Member Functions

static bool IsClassA (const char *type)
 
static IAmbientOcclusionCasterSafeCast (IObject *ptr)
 
- Static Public Member Functions inherited from SimplygonSDK::IMaterialCaster
static bool IsClassA (const char *type)
 
static IMaterialCasterSafeCast (IObject *ptr)
 
- Static Public Member Functions inherited from SimplygonSDK::IProcessingObject
static bool IsClassA (const char *type)
 
static IProcessingObjectSafeCast (IObject *ptr)
 
- Static Public Member Functions inherited from SimplygonSDK::IObject
static bool IsClassA (const char *type)
 
static IObjectSafeCast (IObject *ptr)
 

Detailed Description

IAmbientOcclusionCaster generates an ambient occlusion map based on the original geometry, and casts it

Definition at line 19029 of file SimplygonSDK.h.

Member Function Documentation

◆ GetAmbientOcclusionCasterSettings()

virtual CountedPointer<IAmbientOcclusionCasterSettings> SimplygonSDK::IAmbientOcclusionCaster::GetAmbientOcclusionCasterSettings ( )
pure virtual

Get the ambient occlusion caster settings object

Returns
Ambient occlusion caster settings object

◆ GetClass()

virtual const char* SimplygonSDK::IAmbientOcclusionCaster::GetClass ( )
virtual

GetClass returns the name of the class of the object.

Returns
the name of the actual class of the object, as a const char string

Reimplemented from SimplygonSDK::IMaterialCaster.

◆ GetColorType()

virtual rstring SimplygonSDK::IAmbientOcclusionCaster::GetColorType ( )
pure virtual

Get which material channel to cast. The material channels are defined as SG_MATERIAL_CHANNEL_[ CHANNEL ]. For example, the diffuse channel is SG_MATERIAL_CHANNEL_DIFFUSE.

Returns
the current material channel.

◆ GetOcclusionFalloff()

virtual real SimplygonSDK::IAmbientOcclusionCaster::GetOcclusionFalloff ( )
pure virtual

Get the occlusion falloff, ie. how far away a surface has to be from another surface to generate no occlusion. Only applicable if SimpleOcclusionMode is off.

Returns
the occlusion falloff

◆ GetOcclusionMultiplier()

virtual real SimplygonSDK::IAmbientOcclusionCaster::GetOcclusionMultiplier ( )
pure virtual

Get the occlusion multiplier. This is just a basic intensity scaler. Higher is "darker".

Returns
the occlusion multiplier

◆ GetRaysPerPixel()

virtual unsigned int SimplygonSDK::IAmbientOcclusionCaster::GetRaysPerPixel ( )
pure virtual

Get the rays per pixel. This determines how many rays are traced per pixel (or subpixel) to evaluate the occlusion.

Returns
the number of rays

◆ GetUseSimpleOcclusionMode()

virtual bool SimplygonSDK::IAmbientOcclusionCaster::GetUseSimpleOcclusionMode ( )
pure virtual

Get the SimpleOcclusionMode flag. If set, occlusion will not scale with distance, each ray will only be either fully occluded or not at all. Speeds up processing time.

Returns
the current value of UseSimpleOcclusionMode

◆ IsA()

virtual bool SimplygonSDK::IAmbientOcclusionCaster::IsA ( const char *  type) const
virtual

The IsA function returns true if the object is a or is a descendant of the class named as the type parameter

Parameters
typeis the name of the class to check if the object is, or is a descendant of
Returns
true if the object is of the specified class, false if not

Reimplemented from SimplygonSDK::IMaterialCaster.

◆ IsClassA()

static bool SimplygonSDK::IAmbientOcclusionCaster::IsClassA ( const char *  type)
inlinestatic

The IsClassA function returns true if IAmbientOcclusionCaster is a or is a descendant of the class named as the type parameter

Parameters
typeis the name of the class to check if the class is, or is a descendant of
Returns
true if the class is of the specified class, false if not

Definition at line 19050 of file SimplygonSDK.h.

◆ SafeCast()

static IAmbientOcclusionCaster* SimplygonSDK::IAmbientOcclusionCaster::SafeCast ( IObject ptr)
inlinestatic

SafeCast makes sure the pointer is of a class that can be cast into a IAmbientOcclusionCaster pointer, and if this is possible, returns the cast pointer.

Parameters
ptris the pointer to be cast into a IAmbientOcclusionCaster pointer
Returns
a pointer to the IAmbientOcclusionCaster object, if the cast can be made, and a NULL pointer otherwise

Definition at line 19063 of file SimplygonSDK.h.

◆ SetAdditionalSourceScene()

virtual void SimplygonSDK::IAmbientOcclusionCaster::SetAdditionalSourceScene ( IScene value)
pure virtual

Set an additional scene that will be used to compute the ambient occlusion on the main scene.

Parameters
valuethe additional scene

◆ SetColorType()

virtual void SimplygonSDK::IAmbientOcclusionCaster::SetColorType ( const char *  ColorType)
pure virtual

Set which material channel to cast. The material channels are defined as SG_MATERIAL_CHANNEL_[ CHANNEL ]. Or a custom channel name. For example, the diffuse channel is SG_MATERIAL_CHANNEL_DIFFUSE.

Parameters
ColorTypethe material channel name

◆ SetOcclusionFalloff()

virtual void SimplygonSDK::IAmbientOcclusionCaster::SetOcclusionFalloff ( real  OcclusionFalloff)
pure virtual

Set the occlusion falloff, ie. how far away a surface has to be from another surface to generate no occlusion. Only applicable if SimpleOcclusionMode is off.

Parameters
OcclusionFalloffthe falloff value

◆ SetOcclusionMultiplier()

virtual void SimplygonSDK::IAmbientOcclusionCaster::SetOcclusionMultiplier ( real  OcclusionMultiplier)
pure virtual

Set the occlusion multiplier. This is just a basic intensity scaler. Higher is "darker".

Parameters
OcclusionMultiplierthe multiplier

◆ SetRaysPerPixel()

virtual void SimplygonSDK::IAmbientOcclusionCaster::SetRaysPerPixel ( unsigned int  RaysPerPixel)
pure virtual

Set the rays per pixel. This determines how many rays are traced per pixel (or subpixel) to evaluate the occlusion.

Parameters
RaysPerPixelthe number of rays to use per pixel

◆ SetUseSimpleOcclusionMode()

virtual void SimplygonSDK::IAmbientOcclusionCaster::SetUseSimpleOcclusionMode ( bool  UseSimpleOcclusionMode)
pure virtual

Set the SimpleOcclusionMode flag. If set, occlusion will not scale with distance, each ray will only be either fully occluded or not at all. Speeds up processing time.

Parameters
UseSimpleOcclusionModethe desired flag value

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