VuoSceneObject C type definition.
Definition in file VuoSceneObject.h.
Go to the source code of this file.
Classes | |
struct | VuoList_VuoSceneObject_struct |
List type. More... | |
struct | VuoSceneObject |
A 3D Object: visible (mesh), or virtual (group, light, camera). More... | |
Typedefs | |
typedef struct VuoSceneObject | VuoSceneObject |
A 3D Object: visible (mesh), or virtual (group, light, camera). More... | |
Enumerations | |
enum | VuoSceneObjectSubType { VuoSceneObjectSubType_Empty, VuoSceneObjectSubType_Group, VuoSceneObjectSubType_Mesh, VuoSceneObjectSubType_PerspectiveCamera, VuoSceneObjectSubType_StereoCamera, VuoSceneObjectSubType_OrthographicCamera, VuoSceneObjectSubType_FisheyeCamera, VuoSceneObjectSubType_AmbientLight, VuoSceneObjectSubType_PointLight, VuoSceneObjectSubType_Spotlight, VuoSceneObjectSubType_Text } |
How this scene object should be rendered or how it should affect other scene objects. More... | |
Functions | |
uint64_t | VuoSceneObject_getNextId (void) |
Returns a number, unique within this process, for identifying a particlar scene object instance. More... | |
VuoSceneObject | VuoSceneObject_makeEmpty (void) |
Creates a new, empty scene object. More... | |
VuoSceneObject | VuoSceneObject_makeGroup (VuoList_VuoSceneObject childObjects, VuoTransform transform) |
Creates a new scene object that can contain (and transform) other scene objects, but doesn't render anything itself. More... | |
VuoSceneObject | VuoSceneObject_make (VuoMesh mesh, VuoShader shader, VuoTransform transform, VuoList_VuoSceneObject childObjects) |
Creates a visible (mesh) scene object. More... | |
VuoSceneObject | VuoSceneObject_makeQuad (VuoShader shader, VuoPoint3d center, VuoPoint3d rotation, VuoReal width, VuoReal height) |
Returns a scene object that renders a quad with the specified shader. More... | |
VuoSceneObject | VuoSceneObject_makeQuadWithNormals (VuoShader shader, VuoPoint3d center, VuoPoint3d rotation, VuoReal width, VuoReal height) |
Returns a scene object that renders a quad with the specified shader. More... | |
VuoSceneObject | VuoSceneObject_makeImage (VuoImage image, VuoPoint3d center, VuoPoint3d rotation, VuoReal width, VuoReal alpha) |
Returns an unlit scene object with the specified image . More... | |
VuoSceneObject | VuoSceneObject_makeLitImage (VuoImage image, VuoPoint3d center, VuoPoint3d rotation, VuoReal width, VuoReal alpha, VuoColor highlightColor, VuoReal shininess) |
Returns a lit scene object with the specified image . More... | |
VuoSceneObject | VuoSceneObject_makeCube (VuoTransform transform, VuoShader frontShader, VuoShader leftShader, VuoShader rightShader, VuoShader backShader, VuoShader topShader, VuoShader bottomShader) |
Returns a scene object consisting of 6 child objects (square quads), each with its own shader. More... | |
VuoSceneObject | VuoSceneObject_makeCube1 (VuoTransform transform, VuoShader shader) |
Returns a cube scene object with a single shader applied to all 6 sides. More... | |
VuoSceneObject | VuoSceneObject_makeText (VuoText text, VuoFont font, VuoBoolean scaleWithScene, float wrapWidth) |
Returns a scene object representing deferred-rendered text. More... | |
VuoSceneObject | VuoSceneObject_makePerspectiveCamera (VuoText name, VuoTransform transform, float fieldOfView, float distanceMin, float distanceMax) |
Returns a perspective camera having the position and negative-rotation specified by transform (its scale is ignored). More... | |
VuoSceneObject | VuoSceneObject_makeStereoCamera (VuoText name, VuoTransform transform, VuoReal fieldOfView, VuoReal distanceMin, VuoReal distanceMax, VuoReal confocalDistance, VuoReal intraocularDistance) |
Returns a stereoscopic camera having the position and negative-rotation specified by transform (its scale is ignored). More... | |
VuoSceneObject | VuoSceneObject_makeOrthographicCamera (VuoText name, VuoTransform transform, float width, float distanceMin, float distanceMax) |
Returns an orthographic camera having the position and negative-rotation specified by transform (its scale is ignored). More... | |
VuoSceneObject | VuoSceneObject_makeFisheyeCamera (VuoText name, VuoTransform transform, VuoReal fieldOfView, VuoReal vignetteWidth, VuoReal vignetteSharpness) |
Returns a fisheye camera having the position and negative-rotation specified by transform (its scale is ignored). More... | |
VuoSceneObject | VuoSceneObject_makeDefaultCamera (void) |
Returns a perspective camera at (0,0,1), facing along -z, 90 degree FOV, and clip planes at 0.1 and 10.0. More... | |
bool | VuoSceneObject_find (VuoSceneObject so, VuoText nameToMatch, VuoList_VuoSceneObject parentObjects, VuoSceneObject *foundObject) VuoWarnUnusedResult |
Searches the scenegraph (depth-first) for a scene object with the given name. More... | |
bool | VuoSceneObject_findById (VuoSceneObject so, uint64_t idToMatch, VuoList_VuoSceneObject parentObjects, VuoSceneObject *foundObject) VuoWarnUnusedResult |
Searches the scenegraph (depth-first) for a scene object with the given id. More... | |
bool | VuoSceneObject_findWithType (VuoSceneObject so, VuoSceneObjectSubType typeToMatch, VuoList_VuoSceneObject parentObjects, VuoSceneObject *foundObject) VuoWarnUnusedResult |
Searches the scenegraph (depth-first) for the first scene object with the specified type. More... | |
bool | VuoSceneObject_findCamera (VuoSceneObject so, VuoText nameToMatch, VuoSceneObject *foundCamera) VuoWarnUnusedResult |
Performs a depth-first search of the scenegraph. More... | |
bool | VuoSceneObject_isPopulated (VuoSceneObject so) |
Performs a depth-first search of the scenegraph. More... | |
VuoSceneObject | VuoSceneObject_makeAmbientLight (VuoColor color, float brightness) |
VuoSceneObject | VuoSceneObject_makePointLight (VuoColor color, float brightness, VuoPoint3d position, float range, float sharpness) |
VuoSceneObject | VuoSceneObject_makeSpotlight (VuoColor color, float brightness, VuoTransform transform, float cone, float range, float sharpness) |
void | VuoSceneObject_findLights (VuoSceneObject so, VuoColor *ambientColor, float *ambientBrightness, VuoList_VuoSceneObject *pointLights, VuoList_VuoSceneObject *spotLights) |
Finds and returns all the lights in the scene. More... | |
void | VuoSceneObject_visit (const VuoSceneObject object, bool(^function)(const VuoSceneObject *currentObject, float modelviewMatrix[16])) |
Applies function to object and its child objects, without preserving changes to objects. More... | |
void | VuoSceneObject_apply (VuoSceneObject *object, void(^function)(VuoSceneObject *currentObject, float modelviewMatrix[16])) |
Applies function to object and its child objects, and outputs the modified object . More... | |
void | VuoSceneObject_setFaceCullingMode (VuoSceneObject *object, unsigned int faceCullingMode) |
Sets the faceCullingMode on object and its child objects. More... | |
void | VuoSceneObject_setBlendMode (VuoSceneObject *object, VuoBlendMode blendMode) |
Sets the blendMode on object and its child objects. More... | |
VuoSceneObject | VuoSceneObject_copy (const VuoSceneObject object) |
Makes a deep copy of object . More... | |
VuoSceneObject | VuoSceneObject_makeFromJson (struct json_object *js) |
Decodes the JSON object js to create a new value. More... | |
struct json_object * | VuoSceneObject_getJson (const VuoSceneObject value) |
Encodes value as a JSON object. More... | |
char * | VuoSceneObject_getSummary (const VuoSceneObject value) |
Produces a brief human-readable summary of value . More... | |
void | VuoSceneObject_getStatistics (const VuoSceneObject value, unsigned long *descendantCount, unsigned long *totalVertexCount, unsigned long *totalElementCount) |
Traverses the specified scenegraph and returns statistics about it. More... | |
VuoBox | VuoSceneObject_bounds (const VuoSceneObject so) |
Get the axis aligned bounding box of this sceneobject and it's children. More... | |
bool | VuoSceneObject_meshBounds (const VuoSceneObject so, VuoBox *bounds, float matrix[16]) |
Bounding box of the vertices for this SceneObject (taking into account transform). More... | |
void | VuoSceneObject_normalize (VuoSceneObject *so) |
Change the root sceneobject's transform such that the entire scenegraph renders within a 1x1x1 axis-aligned cube. More... | |
void | VuoSceneObject_center (VuoSceneObject *so) |
Make the bounds center of all vertices == {0,0,0}. More... | |
void | VuoSceneObject_dump (const VuoSceneObject so) |
Outputs information about the sceneobject (and its descendants). More... | |
unsigned long | VuoSceneObject_getVertexCount (const VuoSceneObject value) |
Returns the total number of vertices in the scene object (but not its descendants). More... | |
VuoSceneObject | VuoSceneObject_flatten (const VuoSceneObject so, bool calculateTangents) |
Combines all meshes (including child objects) together into a single mesh. More... | |
VuoSceneObject | VuoSceneObject_union (VuoList_VuoSceneObject objects, float quality) |
Returns the union of objects . More... | |
VuoSceneObject | VuoSceneObject_subtract (const VuoSceneObject a, const VuoSceneObject b, float quality) |
Returns the boolean difference of a minus b . More... | |
VuoSceneObject | VuoSceneObject_intersect (VuoList_VuoSceneObject objects, float quality) |
Returns the intersection of objects . More... | |
VuoSceneObject | VuoSceneObject_makeFromString (const char *str) |
Automatically generated function. More... | |
char * | VuoSceneObject_getString (const VuoSceneObject value) |
Automatically generated function. More... | |
void | VuoSceneObject_retain (VuoSceneObject value) |
Automatically generated function. More... | |
void | VuoSceneObject_release (VuoSceneObject value) |
Automatically generated function. More... | |
#define | VuoList_VuoSceneObject_TYPE_DEFINED |
List type. More... | |
typedef const struct VuoList_VuoSceneObject_struct * | VuoList_VuoSceneObject |
List type. More... | |
#define VuoList_VuoSceneObject_TYPE_DEFINED |
List type.
Definition at line 23 of file VuoSceneObject.h.
typedef const struct VuoList_VuoSceneObject_struct * VuoList_VuoSceneObject |
List type.