Namespace Bonsai.Shaders
Classes
- AspectRatio
Represents an operator that calculates the ratio of window viewport width to its height for each viewport size in the sequence.
- BindTexture
Represents an operator that binds a buffer to the specified texture unit for each texture or notification in the sequence.
- Bounds
Represents an axis-aligned bounding box for mesh vertices.
- Camera
Represents a point of view from which to render a 3D scene.
- ComputeProgram
Provides functionality for executing and updating the state of a compute shader program.
- CreateAxisAngleRotation
Represents an operator that creates a rotation matrix from an axis-angle representation.
- CreateCubemapCamera
Represents an operator that generates a sequence of perspective camera objects which can be used to render a dynamic cubemap texture.
- CreateLookAt
Represents an operator that creates a view matrix specifying a camera looking at a target position.
- CreateMatrix2
Represents an operator that creates a 2x2 matrix.
- CreateMatrix2x3
Represents an operator that creates a 2x3 matrix.
- CreateMatrix2x4
Represents an operator that creates a 2x4 matrix.
- CreateMatrix3
Represents an operator that creates a 3x3 matrix containing 3D rotation and scale.
- CreateMatrix3x2
Represents an operator that creates a 3x2 matrix.
- CreateMatrix3x4
Represents an operator that creates a 3x4 matrix.
- CreateMatrix4
Represents an operator that creates a 4x4 matrix containing 3D rotation, scale, position and projection.
- CreateMatrix4x2
Represents an operator that creates a 4x2 matrix.
- CreateMatrix4x3
Represents an operator that creates a 4x3 matrix.
- CreateMesh
Represents an operator that creates a new mesh geometry for each vertex array data in the sequence.
- CreateOrthographic
Represents an operator that creates an orthographic projection matrix.
- CreateOrthographicOffCenter
Represents an operator that creates an orthographic projection matrix from specified projection volume boundaries.
- CreatePerspectiveFieldOfView
Represents an operator that creates a perspective projection matrix from field of view parameters.
- CreatePerspectiveOffCenter
Represents an operator that creates a perspective projection matrix with the specified view frustum.
- CreateQuaternionRotation
Represents an operator that creates a rotation matrix from a quaternion representation.
- CreateRotationX
Represents an operator that creates a rotation matrix for a rotation about the x-axis.
- CreateRotationY
Represents an operator that creates a rotation matrix for a rotation about the y-axis.
- CreateRotationZ
Represents an operator that creates a rotation matrix for a rotation about the z-axis.
- CreateScale
Represents an operator that creates a scale matrix.
- CreateTransform
Represents an operator that creates a model matrix specifying position, rotation and scale.
- CreateTranslation
Represents an operator that creates a translation matrix.
- CreateVector2
Represents an operator that creates a 2D vector element.
- CreateVector3
Represents an operator that creates a 3D vector element.
- CreateVector4
Represents an operator that creates a 4D vector element.
- CreateWindow
Represents an operator that creates the shader window with the specified display style and render settings.
- Delay
Represents an operator that delays the notification of values in the sequence by the specified time interval, using the render loop scheduler.
- DelaySubscription
Represents an operator that delays subscription to the observable sequence by the specified time interval, using the render loop scheduler.
- DispatchCompute
Represents an operator that launches one or more compute shader work groups for each notification in the sequence.
- DispatchShaderQueue
Represents an operator that immediately starts processing the specified shader work queue whenever the sequence emits a notification.
- DrawArrays
Represents an operator that renders primitives using each of the array data in the sequence.
- DrawFramebuffer
Represents an operator that renders all currently stored draw commands to a framebuffer.
- DrawMesh
Represents an operator that draws the specified mesh geometry.
- DrawMeshAggregate
Represents an operator that aggregates the specified mesh geometry attributes into a single draw command.
- DrawMeshInstanced
Represents an operator that draws the specified mesh geometry using instanced rendering, where each array in the sequence stores the per-instance attributes.
- Effect
Provides an abstract base class for common functionality used in render effects specifying a vertex, geometry or fragment shader.
- ExtractRotation
Represents an operator that returns the rotation component of every matrix in the sequence.
- ExtractScale
Represents an operator that returns the scale component of every matrix in the sequence.
- ExtractTranslation
Represents an operator that returns the translation component of every matrix in the sequence.
- ExtrinsicsTransform
Represents an operator that converts extrinsics rotation and translation vectors in the sequence into a transform matrix, and vice-versa.
- FrameEvent
Represents an update or render frame event raised by the shader window.
- InstanceAttributeMapping
Represents the format of a per-instance defined input value to a vertex shader.
- InstanceAttributeMappingCollection
Represents a collection of InstanceAttributeMapping objects.
- Invert
Represents an operator that converts every matrix in the sequence to its inverse.
- LatestOnRenderFrame
Represents an operator that replays the latest notification of the sequence at each render frame event.
- LatestOnUpdateFrame
Represents an operator that replays the latest notification of the sequence at each update frame event.
- LoadImage
Represents an operator that loads a texture buffer from the specified image file.
- LoadImageSequence
Represents an operator that loads an image texture sequence from the specified movie file or image sequence pattern.
- LoadVideo
Represents an operator that initializes a video texture which is dynamically updated from the specified movie file.
- Material
Provides functionality for rendering geometry using a shaded material pass using the specified vertex, geometry or fragment shader.
- MatrixTransform
Provides an abstract base class for operators specifying cumulative matrix transform operations.
- Mesh
Represents a collection of vertices and indices used to describe arbitrary geometry.
- MeshBounds
Represents an operator that retrieves the bounds of the specified mesh geometry.
- MeshName
Represents the properties of a mesh geometry which is part of an aggregate rendering operation.
- MeshNameConverter
Provides a type converter to convert a mesh name to and from other representations. It also provides a mechanism to find existing meshes which have been declared in the workflow.
- MeshResources
Represents an operator that creates a collection of mesh resources to be loaded into the resource manager.
- NormalMatrix
Represents an operator that computes the normal matrix for each modelview matrix in the sequence.
- PlayTextureSequence
Represents an operator that starts playing the frame sequence of a video texture or texture array.
- ReadPixels
Represents an operator that reads a block of pixels from the framebuffer.
- RenderCubemap
Represents an operator that renders all currently stored draw commands to one of the cubemap textures. Each pass renders one face of the cubemap in the order +X, -X, +Y, -Y, +Z, -Z.
- RenderCubemapTarget
Represents an operator that renders all currently stored draw commands to a cubemap render target.
- RenderFrame
Represents an operator that generates a sequence of events produced whenever it is time to render a new frame.
- RenderTexture
Represents an operator that renders all currently stored draw commands to a texture.
- ResourceLoader
Provides the abstract base class for operators that load resources into the shader window resource manager.
- RetrieveImage
Represents an operator that reads the pixel data from each texture in the sequence to an image.
- RotateAxisAngle
Represents an operator that applies a rotation around an arbitrary axis to every transform in the sequence.
- RotateQuaternion
Represents an operator that applies a rotation specified by a quaternion to every transform in the sequence.
- RotateX
Represents an operator that applies a rotation about the x-axis to every transform in the sequence.
- RotateY
Represents an operator that applies a rotation about the y-axis to every transform in the sequence.
- RotateZ
Represents an operator that applies a rotation about the z-axis to every transform in the sequence.
- SampleOnRenderFrame
Represents an operator that samples notifications from the sequence whenever there is a new render frame event.
- SampleOnUpdateFrame
Represents an operator that samples notifications from the sequence whenever there is a new update frame event.
- Scale
Represents an operator that applies a scale factor along the specified axes to every transform in the sequence.
- Shader
Provides common functionality for executing and updating the state of compiled shader programs.
- ShaderException
Represents errors that occur when compiling or linking shader programs.
- ShaderManager
Provides functionality for accessing shader window resources and scheduling actions on the main render loop.
- ShaderNameConverter
Provides a type converter to convert a shader name to and from other representations. It also provides a mechanism to find existing shaders which have been declared in the workflow.
- ShaderResources
Represents an operator that creates a collection of shader resources to be loaded into the resource manager.
- ShaderWindow
Creates and renders a window using the specified resources and a programmable shader pipeline.
- StoreImage
Represents an operator that writes each image in the sequence to a texture object.
- StoreImageSequence
Represents an operator that writes a sequence of images to a texture array.
- Texture
Represents a texture object containing one or more images with the same image format.
- TextureArray
Represents an array of texture objects.
- TextureNameConverter
Provides a type converter to convert a texture name to and from other representations. It also provides a mechanism to find existing textures which have been declared in the workflow.
- TextureResources
Represents an operator that creates a collection of texture resources to be loaded into the resource manager.
- Timer
Represents an operator that generates an observable sequence that periodically produces a value after the specified initial relative due time has elapsed, using the render loop timing.
- TransformRelative
Represents an operator that applies a model matrix transform specifying relative position, rotation and scale to every transform in the sequence.
- Translate
Represents an operator that applies a translation along the specified axes to every transform in the sequence.
- Transpose
Represents an operator that calculates the transpose of every matrix in the sequence.
- UpdateClearColorState
Represents an operator that updates the clear color state of the shader window.
- UpdateFrame
Represents an operator that generates a sequence of events produced whenever it is time to update the render state.
- UpdateRenderState
Represents an operator that updates the render state of the shader window.
- UpdateScissorState
Represents an operator that updates the active scissor box in the shader window. Any fragments falling outside the scissor box will be discarded.
- UpdateTexture
Represents an operator that updates the pixel store of the specified texture target from a sequence of images.
- UpdateUniform
Represents an operator that updates the value of a uniform variable on the specified shader.
- UpdateVertexBuffer
Represents an operator that updates the vertex buffer data used by the specified mesh geometry.
- UpdateViewportState
Represents an operator that updates the active viewport in the shader window.
- VertexAttributeMapping
Represents the format of a user-defined input value to a vertex shader.
- VertexAttributeMappingCollection
Represents a collection of VertexAttributeMapping objects.
- ViewportEffect
Provides functionality for rendering a fullscreen effect using a fragment shader pass.
- WarpPerspective
Represents an operator that creates a warp perspective transform matrix for planar projection mapping.
- WindowClosed
Represents an operator that generates a sequence of events produced whenever the shader window is closed.
Structs
- DispatchParameters
Represents parameters used when launching compute shader work groups.
- TimeStep
Represents the amount of time elapsed since the last update.
Enums
- MatrixOrder
Specifies the transformation order for cumulative matrix transform operations.
- QuadEffects
Specifies available fullscreen quad rendering effects.