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... | |
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_makeMesh (VuoMesh mesh, VuoShader shader, VuoTransform transform) |
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 size, VuoOrientation fixed, VuoReal alpha) |
Returns an unlit scene object with the specified image . More... | |
VuoSceneObject | VuoSceneObject_makeLitImage (VuoImage image, VuoPoint3d center, VuoPoint3d rotation, VuoReal size, VuoOrientation fixed, 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_makeCube_VuoShader (VuoTransform transform, VuoShader shader) |
Creates a cube painted on all sides by shader . More... | |
VuoSceneObject | VuoSceneObject_makeCube_VuoImage (VuoTransform transform, VuoImage image) |
Creates a cube painted on all sides by image . More... | |
VuoSceneObject | VuoSceneObject_makeCube_VuoColor (VuoTransform transform, VuoColor color) |
Creates a cube painted on all sides by color . More... | |
VuoSceneObject | VuoSceneObject_makeCube_VuoCubemap (VuoTransform transform, VuoCubemap cubemap) |
Creates a cube painted with a cubemap. More... | |
VuoSceneObject | VuoSceneObject_makeCubeMulti (VuoTransform transform, VuoInteger columns, VuoInteger rows, VuoInteger slices, VuoShader front, VuoShader left, VuoShader right, VuoShader back, VuoShader top, VuoShader bottom) |
Creates a cube with subdivided faces and multiple shaders. 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... | |
VuoSceneObject | VuoSceneObject_makeAmbientLight (VuoColor color, float brightness) |
Returns an ambient light with the specified color and brightness (typically between 0 and 1). More... | |
VuoSceneObject | VuoSceneObject_makePointLight (VuoColor color, float brightness, VuoPoint3d position, float range, float sharpness) |
Returns a point light (uniform emission in all directions). More... | |
VuoSceneObject | VuoSceneObject_makeSpotlight (VuoColor color, float brightness, VuoTransform transform, float cone, float range, float sharpness) |
Returns a spot light (emists only in the specified direction). 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... | |
void | VuoSceneObject_findLights (VuoSceneObject so, VuoColor *ambientColor, float *ambientBrightness, VuoList_VuoSceneObject *pointLights, VuoList_VuoSceneObject *spotLights) |
Finds and returns all the lights in the scene, with their transforms applied. More... | |
bool | VuoSceneObject_isPopulated (VuoSceneObject so) |
Returns true if the scene object has a non-empty type. 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_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_transform (VuoSceneObject object, VuoTransform transform) |
Applies a transformation to the sceneobject (combining it with its previous transform). More... | |
void | VuoSceneObject_translate (VuoSceneObject object, VuoPoint3d translation) |
Moves the sceneobject in 3D space. More... | |
void | VuoSceneObject_scale (VuoSceneObject object, VuoPoint3d scale) |
Scales the sceneobject in 3D space. More... | |
VuoSceneObjectSubType | VuoSceneObject_getType (const VuoSceneObject object) |
Returns the sceneobject's type. More... | |
uint64_t | VuoSceneObject_getId (const VuoSceneObject object) |
Returns the sceneobject's identification number (unique among objects in the currently-running composition). More... | |
VuoText | VuoSceneObject_getName (const VuoSceneObject object) |
Returns the sceneobject's display name. More... | |
VuoList_VuoSceneObject | VuoSceneObject_getChildObjects (const VuoSceneObject object) |
Returns the list of this sceneobject's child sceneobjects. More... | |
VuoBlendMode | VuoSceneObject_getBlendMode (const VuoSceneObject object) |
Returns the sceneobject's blend mode. More... | |
VuoMesh | VuoSceneObject_getMesh (const VuoSceneObject object) |
Returns the sceneobject's mesh. More... | |
VuoTransform | VuoSceneObject_getTransform (const VuoSceneObject object) |
Returns the sceneobject's transform. More... | |
VuoPoint3d | VuoSceneObject_getTranslation (const VuoSceneObject object) |
Returns the sceneobject's transform's translation. More... | |
VuoShader | VuoSceneObject_getShader (const VuoSceneObject object) |
Returns the sceneobject's shader. More... | |
bool | VuoSceneObject_isRealSize (const VuoSceneObject object) |
Returns true if the sceneobject should ignore rotations and scales, and be sized to match the shader's first image. More... | |
bool | VuoSceneObject_shouldPreservePhysicalSize (const VuoSceneObject object) |
Returns true if the sceneobject should use the texture's scaleFactor and the backingScaleFactor to determine the rendered size. More... | |
VuoText | VuoSceneObject_getText (const VuoSceneObject object) |
Returns the sceneobject's rendered text. More... | |
VuoFont | VuoSceneObject_getTextFont (const VuoSceneObject object) |
Returns the sceneobject's font. More... | |
bool | VuoSceneObject_shouldTextScaleWithScene (const VuoSceneObject object) |
Returns true if the sceneobject's text should change depending on the scene's rendering destination, or false if it should maintain its nominal size. More... | |
float | VuoSceneObject_getTextWrapWidth (const VuoSceneObject object) |
Returns the width at which the sceneobject's rendered text should wrap. More... | |
float | VuoSceneObject_getCameraFieldOfView (const VuoSceneObject object) |
Returns the sceneobject's field of view (for perspective cameras). More... | |
float | VuoSceneObject_getCameraWidth (const VuoSceneObject object) |
Returns the sceneobject's camera width (for isometric cameras). More... | |
float | VuoSceneObject_getCameraDistanceMin (const VuoSceneObject object) |
Returns the sceneobject's depth buffer minimum distance. More... | |
float | VuoSceneObject_getCameraDistanceMax (const VuoSceneObject object) |
Returns the sceneobject's depth buffer maximum distance. More... | |
float | VuoSceneObject_getCameraVignetteWidth (const VuoSceneObject object) |
Returns the sceneobject's vignette width (for fisheye cameras). More... | |
float | VuoSceneObject_getCameraVignetteSharpness (const VuoSceneObject object) |
Returns the sceneobject's vignette sharpness (for fisheye cameras). More... | |
float | VuoSceneObject_getCameraIntraocularDistance (const VuoSceneObject object) |
Returns the sceneobject's camera intraocular distance (for stereoscopic cameras). More... | |
float | VuoSceneObject_getCameraConfocalDistance (const VuoSceneObject object) |
Returns the sceneobject's camera confocal distance (for stereoscopic cameras). More... | |
VuoColor | VuoSceneObject_getLightColor (const VuoSceneObject object) |
Returns the sceneobject's light color. More... | |
float | VuoSceneObject_getLightBrightness (const VuoSceneObject object) |
Returns the sceneobject's light brightness. More... | |
float | VuoSceneObject_getLightRange (const VuoSceneObject object) |
Returns the sceneobject's light cone range. More... | |
float | VuoSceneObject_getLightSharpness (const VuoSceneObject object) |
Returns the sceneobject's light cone sharpness. More... | |
float | VuoSceneObject_getLightCone (const VuoSceneObject object) |
Returns the sceneobject's light cone angle. More... | |
void | VuoSceneObject_setType (VuoSceneObject object, VuoSceneObjectSubType type) |
Changes the sceneobject's type. More... | |
void | VuoSceneObject_setId (VuoSceneObject object, uint64_t id) |
Changes the sceneobject's identification number (should be unique among objects in the currently-running composition). More... | |
void | VuoSceneObject_setName (VuoSceneObject object, VuoText name) |
Changes the sceneobject's display name. More... | |
void | VuoSceneObject_setChildObjects (VuoSceneObject object, VuoList_VuoSceneObject childObjects) |
Changes the sceneobject's list of child objects. More... | |
void | VuoSceneObject_setMesh (VuoSceneObject object, VuoMesh mesh) |
Changes the sceneobject's mesh. More... | |
void | VuoSceneObject_setTransform (VuoSceneObject object, VuoTransform transform) |
Changes the sceneobject's transform. More... | |
void | VuoSceneObject_setTranslation (VuoSceneObject object, VuoPoint3d translation) |
Changes the sceneobject's transform's translation. More... | |
void | VuoSceneObject_setScale (VuoSceneObject object, VuoPoint3d scale) |
Changes the sceneobject's transform's scale. More... | |
void | VuoSceneObject_setShader (VuoSceneObject object, VuoShader shader) |
Changes the sceneobject's shader. More... | |
void | VuoSceneObject_setFaceCulling (VuoSceneObject object, VuoMesh_FaceCulling faceCullingMode) |
Sets the faceCulling on object and its child objects. More... | |
void | VuoSceneObject_setBlendMode (VuoSceneObject object, VuoBlendMode blendMode) |
Sets the blendMode on object and its child objects. More... | |
void | VuoSceneObject_setRealSize (VuoSceneObject object, bool isRealSize) |
Changes whether the sceneobject should ignore rotations and scales and be sized to match the shader's first image. More... | |
void | VuoSceneObject_setPreservePhysicalSize (VuoSceneObject object, bool shouldPreservePhysicalSize) |
Changes whether the sceneobject should use the texture's scaleFactor and the backingScaleFactor to determine the rendered size. More... | |
void | VuoSceneObject_setText (VuoSceneObject object, VuoText text) |
Changes the sceneobject's rendered text. More... | |
void | VuoSceneObject_setTextFont (VuoSceneObject object, VuoFont font) |
Changes the sceneobject's font for rendered text. More... | |
void | VuoSceneObject_setCameraFieldOfView (VuoSceneObject object, float fieldOfView) |
Changes the sceneobject's camera field of view (for perspective cameras). More... | |
void | VuoSceneObject_setCameraDistanceMin (VuoSceneObject object, float distanceMin) |
Changes the sceneobject's depth buffer minimum distance. More... | |
void | VuoSceneObject_setCameraDistanceMax (VuoSceneObject object, float distanceMax) |
Changes the sceneobject's depth buffer maximum distance. More... | |
VuoSceneObject | VuoSceneObject_copy (const VuoSceneObject object) |
Creates a new scene object hierarchy that references the input object's meshes and shaders. 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_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) |
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 29 of file VuoSceneObject.h.
typedef const struct VuoList_VuoSceneObject_struct * VuoList_VuoSceneObject |
List type.