Particles
#include <rayParticle.hpp>
Particle Initialization
Particles are initialized at random positions on the source plane with random directions according to particle-specific distributions.
Coming Soon
virtual void initNew(rayRNG &Rng) override {}
Initial Distribution of Directions
Coming Soon
virtual NumericType getSourceDistributionPower() const { return 1.; }
Data Containers
Coming Soon
virtual std::vector<std::string> getLocalDataLabels() const {
return {};
}
virtual void logData(rayDataLog<NumericType> &log) {}
Surface Collision
Coming Soon
Parameter | Description | Type |
---|---|---|
rayWeight | Current weight of the ray. | NumericType |
rayDir | Direction of the ray. | rayTriple<NumericType> |
geomNormal | Surface normal at the point of collision. | rayTriple<NumericType> |
primID | Identifier for the primitive being collided with. | unsigned int |
materialId | Identifier for the material of the collided primitive. | int |
localData | Reference to user-defined ray tracing data. | rayTracingData<NumericType>& |
globalData | Pointer to global ray tracing data. | const rayTracingData<NumericType>* |
Rng | Reference to a thread-safe random number generator. | rayRNG& |
Surface Reflection
Coming Soon
Parameter | Description | Type |
---|---|---|
rayWeight | Current weight of the ray. | NumericType |
rayDir | Direction of the ray before reflection. | rayTriple<NumericType> |
geomNormal | Surface normal at the point of reflection. | rayTriple<NumericType> |
primId | Identifier for the primitive being intersected. | unsigned int |
materialId | Identifier for the material of the intersected primitive. | int |
globalData | Pointer to global ray tracing data. | const rayTracingData<NumericType>* |
Rng | Reference to a thread-safe random number generator. | rayRNG& |