Microsoft DirectX 9.0 SDK Update (October 2004)

Mesh.Mesh Constructor

Language:

Note: This documentation is preliminary and is subject to change.
How Do I...?

Creates a new Mesh instance.

Definition

Visual Basic .NET Public Sub New( _
    ByVal unmanagedObject As IntPtr _
)
C# public Mesh(
    IntPtr unmanagedObject
);
Managed C++ public: Mesh(
    IntPtr unmanagedObject
);
JScript .NET public function Mesh(
    unmanagedObject : IntPtr
);

Parameters

unmanagedObject System.IntPtr. Pointer to an unmanaged Component Object Model (COM) ID3DXMesh interface. This parameter is useful for working with unmanaged applications from managed code. Not supported.

Remarks

Exceptions
InvalidCallException The method call is invalid. For example, a method's parameter might contain an invalid value.
OutOfMemoryException Leave Site Microsoft® Direct3D® could not allocate sufficient memory to complete the call.

How Do I...?

Create a Mesh Object

This example shows how to create a Mesh object.

In the following C# code example, device is assumed to be the rendering Device.

              [C#]
              
int numberVerts = 8; short[] indices = { 0,1,2, // Front Face 1,3,2, // Front Face 4,5,6, // Back Face 6,5,7, // Back Face 0,5,4, // Top Face 0,2,5, // Top Face 1,6,7, // Bottom Face 1,7,3, // Bottom Face 0,6,1, // Left Face 4,6,0, // Left Face 2,3,7, // Right Face 5,2,7 // Right Face }; Mesh mesh = new Mesh(numberVerts * 3, numberVerts, MeshFlags.Managed, CustomVertex.PositionColored.Format, device); using(VertexBuffer vb = mesh.VertexBuffer) { GraphicsStream data = vb.Lock(0, 0, LockFlags.None); data.Write(new CustomVertex.PositionColored(-1.0f, 1.0f, 1.0f, 0x00ff00ff)); data.Write(new CustomVertex.PositionColored(-1.0f, -1.0f, 1.0f, 0x00ff00ff)); data.Write(new CustomVertex.PositionColored(1.0f, 1.0f, 1.0f, 0x00ff00ff)); data.Write(new CustomVertex.PositionColored(1.0f, -1.0f, 1.0f, 0x00ff00ff)); data.Write(new CustomVertex.PositionColored(-1.0f, 1.0f, -1.0f, 0x00ff00ff)); data.Write(new CustomVertex.PositionColored(1.0f, 1.0f, -1.0f, 0x00ff00ff)); data.Write(new CustomVertex.PositionColored(-1.0f, -1.0f, -1.0f, 0x00ff00ff)); data.Write(new CustomVertex.PositionColored(1.0f, -1.0f, -1.0f, 0x00ff00ff)); vb.Unlock(); } using (IndexBuffer ib = mesh.IndexBuffer) { ib.SetData(indices, 0, LockFlags.None); }


© 2004 Microsoft Corporation. All rights reserved. Terms of use.

Feedback? Please provide us with your comments on this topic.
For more help, visit the DirectX Developer Center