Logo Search packages:      
Sourcecode: yafaray version File versions  Download package

Public Types | Public Member Functions | Public Attributes | Protected Attributes

scene_t Class Reference

Collaboration diagram for scene_t:
Collaboration graph
[legend]

List of all members.

Public Types

enum  changeFlags {
  C_NONE = 0, C_GEOM = 1, C_LIGHT = 1<<1, C_OTHER = 1<<2,
  C_ALL = C_GEOM|C_LIGHT|C_OTHER
}
enum  sceneState { READY, GEOMETRY, OBJECT, VMAP }

Public Member Functions

void abort ()
bool addInstance (objID_t baseObjectId, matrix4x4_t objToWorld)
bool addLight (light_t *l)
bool addMaterial (material_t *m, const char *name)
 does not do anything yet...maybe never will
void addNormal (const normal_t &n)
bool addObject (object3d_t *obj, objID_t &id)
bool addTriangle (int a, int b, int c, int uv_a, int uv_b, int uv_c, const material_t *mat)
bool addTriangle (int a, int b, int c, const material_t *mat)
int addUV (GFLOAT u, GFLOAT v)
int addVertex (const point3d_t &p, const point3d_t &orco)
int addVertex (const point3d_t &p)
bool addVmapValues (float *val)
void addVolumeRegion (VolumeRegion *vr)
void depthChannel (bool enable)
bool doDepth () const
bool endCurveMesh (const material_t *mat, float strandStart, float strandEnd, float strandShape)
bool endGeometry ()
bool endTriMesh ()
bool endVmap ()
void getAAParameters (int &samples, int &passes, int &inc_samples, CFLOAT &threshold) const
 only for backward compatibility!
background_tgetBackground () const
const camera_tgetCamera () const
imageFilm_tgetImageFilm () const
triangleObject_tgetMesh (objID_t id) const
objID_t getNextFreeID ()
int getNumThreads () const
object3d_tgetObject (objID_t id) const
bound_t getSceneBound () const
int getSignals () const
std::vector< VolumeRegion * > getVolumes () const
bool intersect (const ray_t &ray, surfacePoint_t &sp) const
bool isShadowed (renderState_t &state, const ray_t &ray, int maxDepth, color_t &filt) const
bool isShadowed (renderState_t &state, const ray_t &ray) const
bool render ()
 scene_t (const scene_t &s)
void setAntialiasing (int numSamples, int numPasses, int incSamples, double threshold)
void setBackground (background_t *bg)
void setCamera (camera_t *cam)
void setImageFilm (imageFilm_t *film)
void setMode (int m)
void setNumThreads (int threads)
void setSurfIntegrator (surfaceIntegrator_t *s)
void setVolIntegrator (volumeIntegrator_t *v)
bool smoothMesh (objID_t id, PFLOAT angle)
bool startCurveMesh (objID_t id, int vertices)
bool startGeometry ()
bool startTriMesh (objID_t id, int vertices, int triangles, bool hasOrco, bool hasUV=false, int type=0)
bool startVmap (int id, int type, int dimensions)
bool update ()

Public Attributes

std::vector< light_t * > lights
volumeIntegrator_tvolIntegrator

Protected Attributes

int AA_inc_samples
 sample count for additional passes
int AA_passes
int AA_samples
CFLOAT AA_threshold
background_tbackground
camera_tcamera
bool do_depth
imageFilm_timageFilm
std::map< std::string,
material_t * > 
materials
std::map< objID_t, objData_tmeshes
int mode
 sets the scene mode (triangle-only, virtual primitives)
int nthreads
std::map< objID_t, object3d_t * > objects
bound_t sceneBound
 bounding box of all (finite) scene geometry
yafthreads::mutex_t sig_mutex
int signals
sceneGeometryState_t state
surfaceIntegrator_tsurfIntegrator
triKdTree_ttree
 kdTree for triangle-only mode
std::vector< VolumeRegion * > volumes
kdTree_t< primitive_t > * vtree
 kdTree for universal mode

Detailed Description

Definition at line 142 of file scene.h.


The documentation for this class was generated from the following files:

Generated by  Doxygen 1.6.0   Back to index