RenderObjectBackground, BanchoffSurface, Box, CornellBox, CubeGrid, Cylinder, Hair, ImageBasedLight, JuliaFractal, ParticleSurface, Plane, QuadMesh, Sphere, SphereFlake, SunSkyLight, Torus, TriangleMesh, TriangleMeshLightpublic interface PrimitiveList extends RenderObject
| Modifier and Type | Method | Description |
|---|---|---|
PrimitiveList |
getBakingPrimitives() |
Create a new
PrimitiveList object suitable for baking lightmaps. |
int |
getNumPrimitives() |
Returns the number of individual primtives in this aggregate object.
|
float |
getPrimitiveBound(int primID,
int i) |
Retrieve the bounding box component of a particular primitive in object
space.
|
BoundingBox |
getWorldBounds(Matrix4 o2w) |
Compute a bounding box of this object in world space, using the specified
object-to-world transformation matrix.
|
void |
intersectPrimitive(Ray r,
int primID,
IntersectionState state) |
Intersect the specified primitive in local space.
|
void |
prepareShadingState(ShadingState state) |
Prepare the specified
ShadingState by setting all of its internal
parameters. |
updateBoundingBox getWorldBounds(Matrix4 o2w)
Matrix4.transform(BoundingBox). If the matrix is
null no transformation is needed, and object space is
equivalent to world space.o2w - object to world transformation matrixint getNumPrimitives()
float getPrimitiveBound(int primID,
int i)
primID - primitive indexi - bounding box side indexvoid intersectPrimitive(Ray r, int primID, IntersectionState state)
r - ray in the object's local spaceprimID - primitive index to intersectstate - intersection stateRay.setMax(float),
IntersectionState.setIntersection(int, float, float)void prepareShadingState(ShadingState state)
ShadingState by setting all of its internal
parameters.state - shading state to fill inPrimitiveList getBakingPrimitives()
PrimitiveList object suitable for baking lightmaps.
This means a set of primitives laid out in the unit square UV space. This
method is optional, objects which do not support it should simply return
null.