函数 |
|
RayLight * | AllocRayLight ( BaseDocument *doc, BaseObject *op) |
void | FreeRayLight ( RayLight *&lgt) |
Bool | IlluminateRayLight ( RayLight *rl, 向量 *color, Vector64 *light_vector, const Vector64 &p, const Vector64 &n) |
RayLight * AllocRayLight | ( | BaseDocument * | doc , |
BaseObject * | op | ||
) |
Allocates a ray light for op . Destroy the allocated ray light with FreeRayLight() .
[in] | doc | The document containing the object op . The caller owns the pointed document. |
[in] | op | The object to allocate the ray light for. The caller owns the pointed object. |
void FreeRayLight | ( | RayLight *& | lgt | ) |
Destructs ray lights allocated with AllocRayLight() .
[in,out] | lgt | The ray light to destruct. If the pointer is nullptr nothing happens. The pointer is assigned nullptr afterwards. |
Bool IlluminateRayLight | ( | RayLight * | rl , |
向量 * | color , | ||
Vector64 * | light_vector , | ||
const Vector64 & | p , | ||
const Vector64 & | n | ||
) |
Calculates the illumination for a ray light.
[in] | rl | The ray light to use for the calculation. The caller owns the pointed ray light. |
[out] | color | Assigned the calculated color. |
[out] | light_vector | Assigned the calculated light color. |
[in] | p | The point for the illumination. |
[in] | n | The normal for the illumination. |