IlluminanceSurfacePointData Struct Reference

#include <c4d_raytrace.h>

Public Attributes

Vector64 p
 
Vector64 bumpn
 
Vector64 phongn
 
Vector64 orign
 
Vector64 ray_vector
 
Float specular_exponent
 
Int32 receive_gi
 
Bool receive_caustics
 
Bool cosine_cutoff
 
Bool calc_shadow
 
RAYBIT raybits
 
RayHitID lhit
 
void * local_mat
 
IlluminanceSurfacePointModelmodel
 
void * customdata
 

Member Data Documentation

◆ p

Global point.

◆ bumpn

Vector64 bumpn

Bump normal.

◆ phongn

Vector64 phongn

Phong normal.

◆ orign

Vector64 orign

Original normal.

◆ ray_vector

Vector64 ray_vector

Ray vector.

◆ specular_exponent

Float specular_exponent

Specular exponent.

◆ receive_gi

Int32 receive_gi

Receive GI.

◆ receive_caustics

Bool receive_caustics

Receive caustics.

◆ cosine_cutoff

Bool cosine_cutoff

Defines whether the calculation shall check for light/camera being on the same side or not.
If false illumination model samples the light from all directions. If true illumination model samples like it was a surface point.
If true, add special code for the area light handling (as the light/camera situation is different for every subsample of an area light). That is where the call VolumeData::CalcArea() is necessary.

◆ calc_shadow

Bool calc_shadow

Enables shadow calculation.

◆ raybits

RAYBIT raybits

Ray bits: RAYBIT.

◆ lhit

RayHitID lhit

Global RayHitID structure for the surface intersection (to avoid self shadowing).
Can be set to RayHitID() if you do not have the current RayHitID.

◆ local_mat

void* local_mat

The material where all the GI and caustic properties are taken from.

◆ model

The custom illumination model.

◆ customdata

void* customdata

Custom data for the illumination model.