|
virtual unsigned int | get_sampling_dimension () const override |
|
GMathVec3d | sample_static_scatter (const CtxEval &eval_ctx, CtxShader &shader_ctx, const PbrSasSampleCtx &sample_ctx) const override |
|
GMathVec3d | sample_motion_scatter (const CtxEval &eval_ctx, CtxShader &shader_ctx, const PbrSasSampleCtx &sample_ctx) const override |
|
bool | sample_static (const CtxEval &eval_ctx, CtxShader &shader_ctx, PbrSasSampleCtx &sample_ctx) const override |
|
bool | sample_motion (const CtxEval &eval_ctx, CtxShader &shader_ctx, PbrSasSampleCtx &sample_ctx) const override |
|
unsigned int | evaluate_static (const CtxEval &eval_ctx, const CtxShader &shader_ctx, PbrSasEvaluateCtx &evaluate_ctx) const override |
|
unsigned int | evaluate_motion (const CtxEval &eval_ctx, const CtxShader &shader_ctx, PbrSasEvaluateCtx &evaluate_ctx) const override |
|
virtual double | ray_scatter_init (const CtxEval &eval_ctx, CtxShader &shader_ctx, PbrLightConfig &light_config, PbrSasSampleCtx &sample_ctx) const override |
|
virtual bool | ray_scatter_sample (const PbrLightConfig &light_config, const PbrRandVar &var, double &t, double &pdf) const override |
|
virtual double | ray_scatter_pdf (const PbrLightConfig &light_config, const double &t) const override |
|
void | configure (const CtxEval &eval_ctx, const CtxShader &shader_ctx, const PbrIntegrationDomain &domain, PbrLightConfig &light_config) const override |
|
void | configure (const CtxEval &eval_ctx, const CtxShader &shader_ctx, const PbrIntegrationDomain &domain, PbrLightConfig &light_config, const MatInv4x4d &xform, ModuleSceneObject *module_scene_object=nullptr) const |
|
bool | sample (const CtxEval &eval_ctx, CtxShader &shader_ctx, const PbrLightConfig &light_config, PbrSasSampleCtx &sample_ctx) const override |
|
bool | evaluate (const CtxEval &eval_ctx, const CtxShader &shader_ctx, const PbrLightConfig &light_config, PbrSasEvaluateCtx &evaluate_ctx) const override |
|
const CoreArray< ProjectedArea > & | get_projected_areas () const |
|
void | get_sub_projected_areas (const CoreBasicArray< unsigned int > &indices, ProjectedArea *projected_areas) const |
|
const double & | get_emission_intensity () const |
|
|
typedef void(* | EventInfoFunction )(EventObject &, const EventInfo &, void *) |
| event callback signature for free functions / static methods.
|
|
typedef void(EventObject::* | EventInfoMethod )(EventObject &, const EventInfo &, void *) |
| event callback signature for methods.
|
|
typedef void(* | EventFunction )(EventObject &, const CoreString &, void *) |
|
typedef void(EventObject::* | EventMethod )(EventObject &, const CoreString &, void *) |
|
static void | connect (EventObject &sender, const CoreString &event_id, EventObject &receiver, EventInfoMethod event_cb, void *data=0) |
| Static version of the above function.
|
|
static void | connect (EventObject &sender, EventObject &receiver, EventInfoMethod event_cb, void *data=0) |
| Static version of the above function.
|
|
static void | connect (EventObject &sender, const CoreString &event_id, EventInfoFunction event_cb, void *data=0) |
| Connects to an object to listen to a specific event.
|
|
static void | connect (EventObject &sender, EventInfoFunction event_cb, void *data=0) |
| Connects to an object to listen any of its events.
|
|
static bool | disconnect (EventObject &sender, const CoreString &event_id, EventInfoFunction event_cb, void *data=0) |
|
static void | raise_event (EventObject &sender, const CoreString &event_id) |
| Sends an event.
|
|
static void | raise_event (EventObject &sender, const EventInfo &event_info) |
| Sends an event.
|
|
static void | connect (EventObject &sender, const CoreString &event_id, EventFunction event_cb, void *data=0) |
| Connects to an object to listen to a specific event.
|
|
static void | connect (EventObject &sender, EventFunction event_cb, void *data=0) |
| Connects to an object to listen any of its events.
|
|
static void | connect (EventObject &sender, const CoreString &event_id, EventObject &receiver, EventMethod event_cb, void *data=0) |
| Static version of the above function.
|
|
static void | connect (EventObject &sender, EventObject &receiver, EventMethod event_cb, void *data=0) |
| Static version of the above function.
|
|
static bool | disconnect (EventObject &sender, const CoreString &event_id, EventFunction event_cb, void *data=0) |
| Disconnects this from an object for a specific event.
|
|
static const unsigned int | s_cuts_material_mode = 0u |
|
static const unsigned int | s_sample_material_mode = 0u |
|
const PbrSasObject * | m_sas |
|
CoreArray< ProjectedArea > | m_projected_areas |
| light sampling tree acceleration structure
|
|
double | m_emission_intensity |
| Area of the nodes projected along an arbitrary direction.
|
|
class PbrWeightedSasTree Sampling acceleration structure for object having nested scene object SAS, with the correct intensity weights for all the nodes