A mesh made up of a dynamic number of "blocks". Each block always consists of two triangles and 4 vertices. This is used for displaying the content in 3D with a single mesh.
Public Member Functions | |
DynamicMesh (UIBatch batch) | |
Creates a new dynamic mesh which uses the hybrid shader and a texture atlas. More... | |
void | SetFontAtlas (TextureAtlas atlas) |
Changes the font atlas used by the default material. More... | |
void | SetGraphicsAtlas (TextureAtlas atlas) |
Sets a default material to this mesh. More... | |
void | SetGlobalMaterial () |
void | SetMaterial (Material material) |
Applies the given material to this mesh. More... | |
void | RequireNormals () |
Let the mesh know that normals are required. More... | |
void | RequireTangents () |
Let the mesh know that tangents are required. More... | |
void | ChangeParent () |
Called to update the parenting of this mesh. More... | |
void | SetPhysicsMode (bool physics) |
Called to tell this mesh to update which input mode its working in. E.g. this may revert this mesh from screen mode to physics mode, or vice versa. More... | |
void | PrepareForLayout () |
Let the mesh know it's about to undergo a layout routine. PowerUI.Renderman.Layout. More... | |
void | CompletedLayout () |
Let the mesh know a layout routine was completed. PowerUI.Renderman.Layout. More... | |
MeshBlock | Allocate () |
Allocates a block from this mesh. The block can then have its vertices/triangles edited. Changes will be outputted visually when PowerUI.DynamicMesh.Flush is called. More... | |
void | Flush () |
Outputs all the verts/triangles etc to the underlying unity mesh. More... | |
void | Destroy () |
Permanently destroys this mesh. More... | |
Public Attributes | |
UIBatch | Batch |
The batch this mesh belongs to. More... | |
int | BlockCount |
The number of blocks that have been allocated. More... | |
Mesh | OutputMesh |
The unity mesh that this will be flushed into. More... | |
Material | Material |
The material to use when rendering. More... | |
MeshBlock | LastBlock |
The tail of the linked list of all allocated blocks. More... | |
MeshBlock | FirstBlock |
The head of the linked list of all allocated blocks. More... | |
Transform | OutputTransform |
The transform of this mesh. More... | |
GameObject | OutputGameObject |
The gameobjec that holds this mesh. More... | |
FixedSizeBuffer< Vector2 > | UV |
An array of uv coordinates. More... | |
FixedSizeBuffer< Vector2 > | UV2 |
An array of uv coordinates. More... | |
FixedSizeBuffer< int > | Triangles |
An array of triangles. More... | |
FixedSizeBuffer< Color > | Colours |
An array of vertex colours. More... | |
FixedSizeBuffer< Vector3 > | Normals |
An array of normals. More... | |
FixedSizeBuffer< Vector3 > | Vertices |
An array of vertex coordinates. More... | |
FixedSizeBuffer< Vector4 > | Tangents |
An array of tangent values. More... | |
MeshCollider | FullPhysicsModeCollider |
The collider that receives clicks in physics mode. More... | |
Static Public Attributes | |
static Shader | UIShader |
The Hybrid GUI Shader. Set on demand. More... | |
Private Member Functions | |
void | Setup () |
Called only by constructors. This creates the actual mesh and the buffers for verts/tris etc. More... | |
Private Attributes | |
int | LastBlockCount |
The number of blocks that were allocated last UI update. More... | |
MeshRenderer | Renderer |
The renderer being used to layout the blocks. More... | |
Material | GlobalMaterial |
The material used by this mesh when it is using an atlas. More... | |
|
inline |
Creates a new dynamic mesh which uses the hybrid shader and a texture atlas.
|
inline |
Allocates a block from this mesh. The block can then have its vertices/triangles edited. Changes will be outputted visually when PowerUI.DynamicMesh.Flush is called.
|
inline |
Called to update the parenting of this mesh.
|
inline |
Let the mesh know a layout routine was completed. PowerUI.Renderman.Layout.
|
inline |
Permanently destroys this mesh.
|
inline |
Outputs all the verts/triangles etc to the underlying unity mesh.
|
inline |
Let the mesh know it's about to undergo a layout routine. PowerUI.Renderman.Layout.
|
inline |
Let the mesh know that normals are required.
|
inline |
Let the mesh know that tangents are required.
|
inline |
Changes the font atlas used by the default material.
|
inline |
|
inline |
Sets a default material to this mesh.
|
inline |
Applies the given material to this mesh.
material | The material to apply. |
|
inline |
Called to tell this mesh to update which input mode its working in. E.g. this may revert this mesh from screen mode to physics mode, or vice versa.
|
inlineprivate |
Called only by constructors. This creates the actual mesh and the buffers for verts/tris etc.
UIBatch PowerUI.DynamicMesh.Batch |
The batch this mesh belongs to.
int PowerUI.DynamicMesh.BlockCount |
The number of blocks that have been allocated.
FixedSizeBuffer<Color> PowerUI.DynamicMesh.Colours |
An array of vertex colours.
MeshBlock PowerUI.DynamicMesh.FirstBlock |
The head of the linked list of all allocated blocks.
MeshCollider PowerUI.DynamicMesh.FullPhysicsModeCollider |
The collider that receives clicks in physics mode.
|
private |
The material used by this mesh when it is using an atlas.
MeshBlock PowerUI.DynamicMesh.LastBlock |
The tail of the linked list of all allocated blocks.
|
private |
The number of blocks that were allocated last UI update.
Material PowerUI.DynamicMesh.Material |
The material to use when rendering.
FixedSizeBuffer<Vector3> PowerUI.DynamicMesh.Normals |
An array of normals.
GameObject PowerUI.DynamicMesh.OutputGameObject |
The gameobjec that holds this mesh.
Mesh PowerUI.DynamicMesh.OutputMesh |
The unity mesh that this will be flushed into.
Transform PowerUI.DynamicMesh.OutputTransform |
The transform of this mesh.
|
private |
The renderer being used to layout the blocks.
FixedSizeBuffer<Vector4> PowerUI.DynamicMesh.Tangents |
An array of tangent values.
FixedSizeBuffer<int> PowerUI.DynamicMesh.Triangles |
An array of triangles.
|
static |
The Hybrid GUI Shader. Set on demand.
FixedSizeBuffer<Vector2> PowerUI.DynamicMesh.UV |
An array of uv coordinates.
FixedSizeBuffer<Vector2> PowerUI.DynamicMesh.UV2 |
An array of uv coordinates.
FixedSizeBuffer<Vector3> PowerUI.DynamicMesh.Vertices |
An array of vertex coordinates.