3rd Eye Scene C#
3rd Eye Scene C# documentation
|
Defines a simple mesh shape for remote rendering. More...
Public Types | |
enum | SendDataType { Vertices, Indices, Normals, UniformNormal } |
Codes for WriteData(PacketBuffer, ref uint). More... | |
Public Member Functions | |
MeshShape (MeshDrawType drawType, Vector3[] vertices, Vector3 position, Quaternion rotation, Vector3 scale) | |
Create a mesh shape. | |
MeshShape (MeshDrawType drawType, Vector3[] vertices, int[] indices, Vector3 position, Quaternion rotation, Vector3 scale) | |
Create a mesh shape. | |
MeshShape (MeshDrawType drawType, Vector3[] vertices, uint id, Vector3 position, Quaternion rotation, Vector3 scale) | |
Create a mesh shape. | |
MeshShape (MeshDrawType drawType, Vector3[] vertices, int[] indices, uint id, Vector3 position, Quaternion rotation, Vector3 scale) | |
Create a mesh shape. | |
MeshShape (MeshDrawType drawType, Vector3[] vertices, uint id, ushort category, Vector3 position, Quaternion rotation, Vector3 scale) | |
Create a mesh shape. | |
MeshShape (MeshDrawType drawType, Vector3[] vertices, int[] indices, uint id, ushort category, Vector3 position, Quaternion rotation, Vector3 scale) | |
Create a mesh shape. | |
MeshShape (MeshDrawType drawType, Vector3[] vertices, Vector3 position, Quaternion rotation) | |
Create a mesh shape. | |
MeshShape (MeshDrawType drawType, Vector3[] vertices, int[] indices, Vector3 position, Quaternion rotation) | |
Create a mesh shape. | |
MeshShape (MeshDrawType drawType, Vector3[] vertices, Vector3 position) | |
Create a mesh shape. | |
MeshShape (MeshDrawType drawType, Vector3[] vertices, int[] indices, Vector3 position) | |
Create a mesh shape. | |
MeshShape (MeshDrawType drawType, Vector3[] vertices) | |
Create a mesh shape. | |
MeshShape (MeshDrawType drawType, Vector3[] vertices, int[] indices) | |
Create a mesh shape. | |
MeshShape (MeshDrawType drawType, Vector3[] vertices, uint id, Vector3 position, Quaternion rotation) | |
Create a mesh shape. | |
MeshShape (MeshDrawType drawType, Vector3[] vertices, int[] indices, uint id, Vector3 position, Quaternion rotation) | |
Create a mesh shape. | |
MeshShape (MeshDrawType drawType, Vector3[] vertices, uint id, Vector3 position) | |
Create a mesh shape. | |
MeshShape (MeshDrawType drawType, Vector3[] vertices, int[] indices, uint id, Vector3 position) | |
Create a mesh shape. | |
MeshShape (MeshDrawType drawType, Vector3[] vertices, uint id) | |
Create a mesh shape. | |
MeshShape (MeshDrawType drawType, Vector3[] vertices, int[] indices, uint id) | |
Create a mesh shape. | |
MeshShape (MeshDrawType drawType, Vector3[] vertices, uint id, ushort category, Vector3 position, Quaternion rotation) | |
Create a mesh shape. | |
MeshShape (MeshDrawType drawType, Vector3[] vertices, int[] indices, uint id, ushort category, Vector3 position, Quaternion rotation) | |
Create a mesh shape. | |
MeshShape (MeshDrawType drawType, Vector3[] vertices, uint id, ushort category, Vector3 position) | |
Create a mesh shape. | |
MeshShape (MeshDrawType drawType, Vector3[] vertices, int[] indices, uint id, ushort category, Vector3 position) | |
Create a mesh shape. | |
MeshShape (MeshDrawType drawType, Vector3[] vertices, uint id, ushort category) | |
Create a mesh shape. | |
MeshShape (MeshDrawType drawType, Vector3[] vertices, int[] indices, uint id, ushort category) | |
Create a mesh shape. | |
void | SetUniformNormal (Vector3 normal) |
Set a single normal to be applied to all vertices (e.g. | |
override bool | WriteCreate (PacketBuffer packet) |
Overridden to include the triangle count. | |
override int | WriteData (PacketBuffer packet, ref uint progressMarker) |
Overridden to write mesh data. | |
override object | Clone () |
Clone this shape. | |
Static Public Member Functions | |
static int | WriteData (ushort routingID, uint objectID, PacketBuffer packet, ref uint progressMarker, Vector3[] vertices, Vector3[] normals, int[] indices) |
A helper function for writing as many DataMessage messsages as required. | |
Properties | |
bool | CalculateNormals [get, set] |
Reflects the state of the flag MeshShapeFlag.CalculateNormals | |
Vector3[] | Normals [get, set] |
Optional normals access. | |
MeshDrawType | DrawType [get, set] |
Defines the mesh topology. |
Defines a simple mesh shape for remote rendering.
This equates to so called "immediate mode" rendering and should only be used for small data sets.
The shape can be used to render triangles, lines or points. The vertex and/or index data must match the topology. That is, there must be three indices or vertices per triangle.
The shape does support splitting large data sets.
Codes for WriteData(PacketBuffer, ref uint).
Tes::Shapes::MeshShape::MeshShape | ( | MeshDrawType | drawType, |
Vector3[] | vertices, | ||
Vector3 | position, | ||
Quaternion | rotation, | ||
Vector3 | scale | ||
) | [inline] |
Create a mesh shape.
drawType | Mesh topology. |
vertices | Vertex data. |
position | Local position. |
rotation | Local rotation. |
scale | Local scaling. |
Tes::Shapes::MeshShape::MeshShape | ( | MeshDrawType | drawType, |
Vector3[] | vertices, | ||
int[] | indices, | ||
Vector3 | position, | ||
Quaternion | rotation, | ||
Vector3 | scale | ||
) | [inline] |
Create a mesh shape.
drawType | Mesh topology. |
vertices | Vertex data. |
indices | Index data. Must match topology. |
position | Local position. |
rotation | Local rotation. |
scale | Local scaling. |
Tes::Shapes::MeshShape::MeshShape | ( | MeshDrawType | drawType, |
Vector3[] | vertices, | ||
uint | id, | ||
Vector3 | position, | ||
Quaternion | rotation, | ||
Vector3 | scale | ||
) | [inline] |
Create a mesh shape.
drawType | Mesh topology. |
vertices | Vertex data. |
id | The shape ID. Zero for transient shapes. |
position | Local position. |
rotation | Local rotation. |
scale | Local scaling. |
Tes::Shapes::MeshShape::MeshShape | ( | MeshDrawType | drawType, |
Vector3[] | vertices, | ||
int[] | indices, | ||
uint | id, | ||
Vector3 | position, | ||
Quaternion | rotation, | ||
Vector3 | scale | ||
) | [inline] |
Create a mesh shape.
drawType | Mesh topology. |
vertices | Vertex data. |
indices | Index data. Must match topology. |
id | The shape ID. Zero for transient shapes. |
position | Local position. |
rotation | Local rotation. |
scale | Local scaling. |
Tes::Shapes::MeshShape::MeshShape | ( | MeshDrawType | drawType, |
Vector3[] | vertices, | ||
uint | id, | ||
ushort | category, | ||
Vector3 | position, | ||
Quaternion | rotation, | ||
Vector3 | scale | ||
) | [inline] |
Create a mesh shape.
drawType | Mesh topology. |
vertices | Vertex data. |
id | The shape ID. Zero for transient shapes. |
category | Category to which the shape belongs. |
position | Local position. |
rotation | Local rotation. |
scale | Local scaling. |
Tes::Shapes::MeshShape::MeshShape | ( | MeshDrawType | drawType, |
Vector3[] | vertices, | ||
int[] | indices, | ||
uint | id, | ||
ushort | category, | ||
Vector3 | position, | ||
Quaternion | rotation, | ||
Vector3 | scale | ||
) | [inline] |
Create a mesh shape.
drawType | Mesh topology. |
vertices | Vertex data. |
indices | Index data. Must match topology. |
id | The shape ID. Zero for transient shapes. |
category | Category to which the shape belongs. |
position | Local position. |
rotation | Local rotation. |
scale | Local scaling. |
Tes::Shapes::MeshShape::MeshShape | ( | MeshDrawType | drawType, |
Vector3[] | vertices, | ||
Vector3 | position, | ||
Quaternion | rotation | ||
) | [inline] |
Create a mesh shape.
drawType | Mesh topology. |
vertices | Vertex data. |
position | Local position. |
rotation | Local rotation. |
Tes::Shapes::MeshShape::MeshShape | ( | MeshDrawType | drawType, |
Vector3[] | vertices, | ||
int[] | indices, | ||
Vector3 | position, | ||
Quaternion | rotation | ||
) | [inline] |
Create a mesh shape.
drawType | Mesh topology. |
vertices | Vertex data. |
indices | Index data. Must match topology. |
position | Local position. |
rotation | Local rotation. |
Tes::Shapes::MeshShape::MeshShape | ( | MeshDrawType | drawType, |
Vector3[] | vertices, | ||
Vector3 | position | ||
) | [inline] |
Create a mesh shape.
drawType | Mesh topology. |
vertices | Vertex data. |
position | Local position. |
Tes::Shapes::MeshShape::MeshShape | ( | MeshDrawType | drawType, |
Vector3[] | vertices, | ||
int[] | indices, | ||
Vector3 | position | ||
) | [inline] |
Create a mesh shape.
drawType | Mesh topology. |
vertices | Vertex data. |
indices | Index data. Must match topology. |
position | Local position. |
Tes::Shapes::MeshShape::MeshShape | ( | MeshDrawType | drawType, |
Vector3[] | vertices | ||
) | [inline] |
Create a mesh shape.
drawType | Mesh topology. |
vertices | Vertex data. |
Tes::Shapes::MeshShape::MeshShape | ( | MeshDrawType | drawType, |
Vector3[] | vertices, | ||
int[] | indices | ||
) | [inline] |
Create a mesh shape.
drawType | Mesh topology. |
vertices | Vertex data. |
indices | Index data. Must match topology. |
Tes::Shapes::MeshShape::MeshShape | ( | MeshDrawType | drawType, |
Vector3[] | vertices, | ||
uint | id, | ||
Vector3 | position, | ||
Quaternion | rotation | ||
) | [inline] |
Create a mesh shape.
drawType | Mesh topology. |
vertices | Vertex data. |
id | The shape ID. Zero for transient shapes. |
position | Local position. |
rotation | Local rotation. |
Tes::Shapes::MeshShape::MeshShape | ( | MeshDrawType | drawType, |
Vector3[] | vertices, | ||
int[] | indices, | ||
uint | id, | ||
Vector3 | position, | ||
Quaternion | rotation | ||
) | [inline] |
Create a mesh shape.
drawType | Mesh topology. |
vertices | Vertex data. |
indices | Index data. Must match topology. |
id | The shape ID. Zero for transient shapes. |
position | Local position. |
rotation | Local rotation. |
Tes::Shapes::MeshShape::MeshShape | ( | MeshDrawType | drawType, |
Vector3[] | vertices, | ||
uint | id, | ||
Vector3 | position | ||
) | [inline] |
Create a mesh shape.
drawType | Mesh topology. |
vertices | Vertex data. |
id | The shape ID. Zero for transient shapes. |
position | Local position. |
Tes::Shapes::MeshShape::MeshShape | ( | MeshDrawType | drawType, |
Vector3[] | vertices, | ||
int[] | indices, | ||
uint | id, | ||
Vector3 | position | ||
) | [inline] |
Create a mesh shape.
drawType | Mesh topology. |
vertices | Vertex data. |
indices | Index data. Must match topology. |
id | The shape ID. Zero for transient shapes. |
position | Local position. |
Tes::Shapes::MeshShape::MeshShape | ( | MeshDrawType | drawType, |
Vector3[] | vertices, | ||
uint | id | ||
) | [inline] |
Create a mesh shape.
drawType | Mesh topology. |
vertices | Vertex data. |
id | The shape ID. Zero for transient shapes. |
Tes::Shapes::MeshShape::MeshShape | ( | MeshDrawType | drawType, |
Vector3[] | vertices, | ||
int[] | indices, | ||
uint | id | ||
) | [inline] |
Create a mesh shape.
drawType | Mesh topology. |
vertices | Vertex data. |
indices | Index data. Must match topology. |
id | The shape ID. Zero for transient shapes. |
Tes::Shapes::MeshShape::MeshShape | ( | MeshDrawType | drawType, |
Vector3[] | vertices, | ||
uint | id, | ||
ushort | category, | ||
Vector3 | position, | ||
Quaternion | rotation | ||
) | [inline] |
Create a mesh shape.
drawType | Mesh topology. |
vertices | Vertex data. |
id | The shape ID. Zero for transient shapes. |
category | Category to which the shape belongs. |
position | Local position. |
rotation | Local rotation. |
Tes::Shapes::MeshShape::MeshShape | ( | MeshDrawType | drawType, |
Vector3[] | vertices, | ||
int[] | indices, | ||
uint | id, | ||
ushort | category, | ||
Vector3 | position, | ||
Quaternion | rotation | ||
) | [inline] |
Create a mesh shape.
drawType | Mesh topology. |
vertices | Vertex data. |
indices | Index data. Must match topology. |
id | The shape ID. Zero for transient shapes. |
category | Category to which the shape belongs. |
position | Local position. |
rotation | Local rotation. |
Tes::Shapes::MeshShape::MeshShape | ( | MeshDrawType | drawType, |
Vector3[] | vertices, | ||
uint | id, | ||
ushort | category, | ||
Vector3 | position | ||
) | [inline] |
Create a mesh shape.
drawType | Mesh topology. |
vertices | Vertex data. |
id | The shape ID. Zero for transient shapes. |
category | Category to which the shape belongs. |
position | Local position. |
Tes::Shapes::MeshShape::MeshShape | ( | MeshDrawType | drawType, |
Vector3[] | vertices, | ||
int[] | indices, | ||
uint | id, | ||
ushort | category, | ||
Vector3 | position | ||
) | [inline] |
Create a mesh shape.
drawType | Mesh topology. |
vertices | Vertex data. |
indices | Index data. Must match topology. |
id | The shape ID. Zero for transient shapes. |
category | Category to which the shape belongs. |
position | Local position. |
Tes::Shapes::MeshShape::MeshShape | ( | MeshDrawType | drawType, |
Vector3[] | vertices, | ||
uint | id, | ||
ushort | category | ||
) | [inline] |
Create a mesh shape.
drawType | Mesh topology. |
vertices | Vertex data. |
id | The shape ID. Zero for transient shapes. |
category | Category to which the shape belongs. |
Tes::Shapes::MeshShape::MeshShape | ( | MeshDrawType | drawType, |
Vector3[] | vertices, | ||
int[] | indices, | ||
uint | id, | ||
ushort | category | ||
) | [inline] |
Create a mesh shape.
drawType | Mesh topology. |
vertices | Vertex data. |
indices | Index data. Must match topology. |
id | The shape ID. Zero for transient shapes. |
category | Category to which the shape belongs. |
override object Tes::Shapes::MeshShape::Clone | ( | ) | [inline, virtual] |
void Tes::Shapes::MeshShape::SetUniformNormal | ( | Vector3 | normal | ) | [inline] |
Set a single normal to be applied to all vertices (e.g.
for voxels).
normal | The shared normal. |
override bool Tes::Shapes::MeshShape::WriteCreate | ( | PacketBuffer | packet | ) | [inline, virtual] |
Overridden to include the triangle count.
true
on success.packet | Packet to write the message to. |
Reimplemented from Tes::Shapes::Shape.
static int Tes::Shapes::MeshShape::WriteData | ( | ushort | routingID, |
uint | objectID, | ||
PacketBuffer | packet, | ||
ref uint | progressMarker, | ||
Vector3[] | vertices, | ||
Vector3[] | normals, | ||
int[] | indices | ||
) | [inline, static] |
A helper function for writing as many DataMessage messsages as required.
routingID | Routing id for the message being composed. |
objectID | ID of the object to which the data belong. |
packet | Data packet to compose in. |
progressMarker | Progress or pagination marker. |
vertices | Mesh vertex array. |
normals | Mesh normal array. One per vertex or just a single normal to apply to all vertices. |
indices | Mesh indices. |
Call recursively until zero is returned. Packet does not get finalised here.
override int Tes::Shapes::MeshShape::WriteData | ( | PacketBuffer | packet, |
ref uint | progressMarker | ||
) | [inline, virtual] |
Overridden to write mesh data.
packet | Packet to write the message to. |
progressMarker | Progress marker. |
Reimplemented from Tes::Shapes::Shape.
bool Tes::Shapes::MeshShape::CalculateNormals [get, set] |
Reflects the state of the flag MeshShapeFlag.CalculateNormals