Vuo
1.0.0
|
VuoSceneObjectRenderer implementation.
Classes | |
struct | VuoSceneObjectRenderer_Attributes |
OpenGL attribute locations. More... | |
struct | VuoSceneObjectRendererInternal |
Internal state data for a VuoSceneObjectRenderer instance. More... | |
Macros | |
#define | glGenVertexArrays glGenVertexArraysAPPLE |
#define | glBindVertexArray glBindVertexArrayAPPLE |
#define | glDeleteVertexArrays glDeleteVertexArraysAPPLE |
Functions | |
void | VuoSceneObjectRenderer_destroy (VuoSceneObjectRenderer sor) |
Destroys and deallocates the image renderer. | |
VuoSceneObjectRenderer | VuoSceneObjectRenderer_make (VuoGlContext glContext, VuoShader shader) |
Creates a reference-counted object for applying a shader to a VuoSceneObject. | |
void | VuoSceneObjectRenderer_drawSingle (CGLContextObj cgl_ctx, struct VuoSceneObjectRendererInternal *sceneObjectRenderer, VuoSceneObject *sceneObject, float modelviewMatrix[16]) |
Helper for VuoSceneObjectRenderer_draw. | |
VuoSceneObject | VuoSceneObjectRenderer_draw (VuoSceneObjectRenderer sor, VuoSceneObject sceneObject) |
Produces a new VuoSceneObject by rendering sceneObject using shader's GLSL vertex shader. | |
struct VuoSceneObjectRenderer_Attributes |
struct VuoSceneObjectRendererInternal |
Class Members | ||
---|---|---|
VuoGlContext | glContext | |
VuoSceneObjectRenderer_Attributes | lineAttributes | |
VuoSceneObjectRenderer_Attributes | pointAttributes | |
GLuint | query | |
VuoShader | shader | |
GLuint | shamFramebuffer | |
GLuint | shamTexture | |
VuoSceneObjectRenderer_Attributes | triangleAttributes | |
GLuint | vertexArray |
void VuoSceneObjectRenderer_destroy | ( | VuoSceneObjectRenderer | sor | ) |
Destroys and deallocates the image renderer.
This function may be called from any thread.
VuoSceneObject VuoSceneObjectRenderer_draw | ( | VuoSceneObjectRenderer | sor, |
VuoSceneObject | sceneObject | ||
) |
Produces a new VuoSceneObject by rendering sceneObject
using shader's
GLSL vertex shader.
VuoSubmesh
es are left unchanged if they have an elementAssemblyMethod that differs from the shader's inputElementType.
This function may be called from any thread. (However, the caller is responsible for ensuring that the GL context is not used simultaneously on multiple threads.) (Additionally, the caller is responsible for ensuring that the same VuoSceneObjectRenderer
is not used simultaneously on multiple threads.)
void VuoSceneObjectRenderer_drawSingle | ( | CGLContextObj | cgl_ctx, |
struct VuoSceneObjectRendererInternal * | sceneObjectRenderer, | ||
VuoSceneObject * | sceneObject, | ||
float | modelviewMatrix[16] | ||
) |
Helper for VuoSceneObjectRenderer_draw.
Applies a shader to a single sceneObject's
VuoMesh (ignoring its childObjects).
VuoSceneObjectRenderer VuoSceneObjectRenderer_make | ( | VuoGlContext | glContext, |
VuoShader | shader | ||
) |
Creates a reference-counted object for applying a shader to a VuoSceneObject.
This function may be called from any thread.