pub struct PowerLightDistribution {
    pub distrib: Option<Arc<Distribution1D>>,
}
Expand description

PowerLightDistribution returns a distribution with sampling probability proportional to the total emitted power for each light. (It also ignores the provided point |p|.) This approach works well for scenes where there the most powerful lights are also the most important contributors to lighting in the scene, but doesn’t do well if there are many lights and if different lights are relatively important in some areas of the scene and unimportant in others. (This was the default sampling method used for the BDPT integrator and MLT integrator in the printed book, though also without the PowerLightDistribution class.)

Fields

distrib: Option<Arc<Distribution1D>>

Implementations

Given a point |p| in space, this method returns a (hopefully effective) sampling distribution for light sources at that point.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The alignment of pointer.

The type for initializers.

Initializes a with the given initializer. Read more

Dereferences the given pointer. Read more

Mutably dereferences the given pointer. Read more

Drops the object pointed to by the given pointer. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.