Table of Contents

Class CreateMesh

Namespace
Bonsai.Shaders
Assembly
Bonsai.Shaders.dll

Represents an operator that creates a new mesh geometry for each vertex array data in the sequence.

[Combinator]
public class CreateMesh
Inheritance
CreateMesh
Inherited Members

Properties

DrawMode

Gets or sets a value specifying the kind of primitives to render with the vertex array data.

public PrimitiveType DrawMode { get; set; }

Property Value

PrimitiveType

Usage

Gets or sets a value specifying the expected usage pattern of the vertex buffer.

public BufferUsageHint Usage { get; set; }

Property Value

BufferUsageHint

VertexAttributes

Gets a collection of vertex attributes specifying how to map vertex array data into user-defined input values in the vertex shader.

public VertexAttributeMappingCollection VertexAttributes { get; }

Property Value

VertexAttributeMappingCollection

Methods

Process(IObservable<Mat>)

Creates a new mesh geometry for each vertex array data in an observable sequence.

public IObservable<Mesh> Process(IObservable<Mat> source)

Parameters

source IObservable<Mat>

The sequence of multi-channel matrices storing the geometry data used to create each new mesh. Each row in the matrix represents the data for one vertex.

Returns

IObservable<Mesh>

A sequence of Mesh objects storing all vertex data for each multi-channel matrix in the source sequence.

Process<TVertex>(IObservable<Tuple<TVertex[], byte[]>>)

Creates a new mesh geometry for each pair of vertex and index data in an observable sequence.

public IObservable<Mesh> Process<TVertex>(IObservable<Tuple<TVertex[], byte[]>> source) where TVertex : struct

Parameters

source IObservable<Tuple<TVertex[], byte[]>>

A sequence of pairs containing the vertex and index data representing the geometry used to create each new mesh, where each vertex index is stored as an 8-bit unsigned integer.

Returns

IObservable<Mesh>

A sequence of Mesh objects storing geometry specified by each pair of vertex and index data in the source sequence.

Type Parameters

TVertex

The type of the values used to represent each vertex in the mesh.

Process<TVertex>(IObservable<Tuple<TVertex[], short[]>>)

Creates a new mesh geometry for each pair of vertex and index data in an observable sequence.

public IObservable<Mesh> Process<TVertex>(IObservable<Tuple<TVertex[], short[]>> source) where TVertex : struct

Parameters

source IObservable<Tuple<TVertex[], short[]>>

A sequence of pairs containing the vertex and index data representing the geometry used to create each new mesh, where each vertex index is stored as a 16-bit signed integer.

Returns

IObservable<Mesh>

A sequence of Mesh objects storing geometry specified by each pair of vertex and index data in the source sequence.

Type Parameters

TVertex

The type of the values used to represent each vertex in the mesh.

Process<TVertex>(IObservable<Tuple<TVertex[], int[]>>)

Creates a new mesh geometry for each pair of vertex and index data in an observable sequence.

public IObservable<Mesh> Process<TVertex>(IObservable<Tuple<TVertex[], int[]>> source) where TVertex : struct

Parameters

source IObservable<Tuple<TVertex[], int[]>>

A sequence of pairs containing the vertex and index data representing the geometry used to create each new mesh, where each vertex index is stored as a 32-bit signed integer.

Returns

IObservable<Mesh>

A sequence of Mesh objects storing geometry specified by each pair of vertex and index data in the source sequence.

Type Parameters

TVertex

The type of the values used to represent each vertex in the mesh.

Process<TVertex>(IObservable<Tuple<TVertex[], ushort[]>>)

Creates a new mesh geometry for each pair of vertex and index data in an observable sequence.

public IObservable<Mesh> Process<TVertex>(IObservable<Tuple<TVertex[], ushort[]>> source) where TVertex : struct

Parameters

source IObservable<Tuple<TVertex[], ushort[]>>

A sequence of pairs containing the vertex and index data representing the geometry used to create each new mesh, where each vertex index is stored as a 16-bit unsigned integer.

Returns

IObservable<Mesh>

A sequence of Mesh objects storing geometry specified by each pair of vertex and index data in the source sequence.

Type Parameters

TVertex

The type of the values used to represent each vertex in the mesh.

Process<TVertex>(IObservable<Tuple<TVertex[], uint[]>>)

Creates a new mesh geometry for each pair of vertex and index data in an observable sequence.

public IObservable<Mesh> Process<TVertex>(IObservable<Tuple<TVertex[], uint[]>> source) where TVertex : struct

Parameters

source IObservable<Tuple<TVertex[], uint[]>>

A sequence of pairs containing the vertex and index data representing the geometry used to create each new mesh, where each vertex index is stored as a 32-bit unsigned integer.

Returns

IObservable<Mesh>

A sequence of Mesh objects storing geometry specified by each pair of vertex and index data in the source sequence.

Type Parameters

TVertex

The type of the values used to represent each vertex in the mesh.

Process<TVertex>(IObservable<TVertex[]>)

Creates a new mesh geometry for each vertex array data in an observable sequence.

public IObservable<Mesh> Process<TVertex>(IObservable<TVertex[]> source) where TVertex : struct

Parameters

source IObservable<TVertex[]>

The sequence of vertex array data representing the geometry used to create each new mesh.

Returns

IObservable<Mesh>

A sequence of Mesh objects storing all vertex data for each array in the source sequence.

Type Parameters

TVertex

The type of the values used to represent each vertex in the mesh.