#include <eccamera.h>
Public Member Functions | |
LightmapCamera (Film *a_pFilm, Mesh *a_pMesh) | |
Constructor. | |
virtual PYOBJECT | PyAsString () |
Python text representation method This function must be implemented by all children. | |
Static Public Member Functions | |
static bool | PyTypeCheck (PYOBJECT a_pObject) |
Python type check Verifies that the provided python object encapsulates a camera object. | |
Protected Member Functions | |
virtual void | DeleteObject () |
Child message hook for reference-count based destruction. |
Defines a special purpose camera for rendering lightmaps.
It is assumed that all mappings form a convex hull, and there is no uv overlapping.
To query this map, two binary search operations are needed: One to find the right slab, and another one to find the right edge (basically, a trapezoidal map) To deduct a position in 3D space from the planar uv space of the triangle, the barycentric components of the intersected triangle are used. To this end, each triangle pre-calculates its transposed barycentric matrix, so finding a 3D point is quick and efficient. For more information on this, read [1] and [2]
References:
[1] Berg, M. et.al. Computational Geometry. pg. 121 and following. [2] Mobius, August. F. Der Barycentrische Calcul. 1827.
Definition at line 59 of file eccamera.h.
virtual void LightmapCamera::DeleteObject | ( | ) | [protected, virtual] |
Child message hook for reference-count based destruction.
The child class is responsible for deleting any instance to which this this function is called.
Reimplemented from EclipseObject.
virtual PYOBJECT LightmapCamera::PyAsString | ( | ) | [virtual] |
Python text representation method This function must be implemented by all children.
Reimplemented from EclipseObject.
static bool LightmapCamera::PyTypeCheck | ( | PYOBJECT | a_pObject | ) | [static] |
Python type check Verifies that the provided python object encapsulates a camera object.
Reimplemented from EclipseObject.