Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ DynamicIndexBuffer() [1/2]

unsafe Microsoft.Xna.Framework.Graphics.DynamicIndexBuffer.DynamicIndexBuffer ( GraphicsDevice graphicsDevice,
Type indexType,
int indexCount,
BufferUsage usage )
inline

Definition at line 41 of file DynamicIndexBuffer.cs.

42 {
43 try
44 {
45 if (indexCount <= 0)
46 {
47 throw new ArgumentOutOfRangeException("indexCount", FrameworkResources.ResourcesMustBeGreaterThanZeroSize);
48 }
49 _parent = graphicsDevice;
50 uint indexSize = (uint)Marshal.SizeOf(indexType);
51 CreateBuffer((uint)indexCount, indexSize, _003CModule_003E.ConvertXnaBufferUsageToDx(usage) | 0x200u, (_D3DPOOL)0);
52 graphicsDevice.Resources.AddTrackedObject(this, pComPtr, 0u, _internalHandle, ref _internalHandle);
53 return;
54 }
55 catch
56 {
57 //try-fault
58 Dispose(true);
59 throw;
60 }
61 }
unsafe void CreateBuffer(uint indexCount, uint indexSize, uint usage, _D3DPOOL pool)
unsafe IDirect3DIndexBuffer9 * pComPtr
static int SizeOf(object structure)
Definition Marshal.cs:697

References Microsoft.Xna.Framework.Graphics.GraphicsResource._internalHandle, Microsoft.Xna.Framework.Graphics.GraphicsResource._parent, Microsoft.Xna.Framework.Graphics.DeviceResourceManager.AddTrackedObject(), Microsoft.Xna.Framework.Graphics.IndexBuffer.CreateBuffer(), Microsoft.Xna.Framework.Graphics.GraphicsResource.Dispose(), Microsoft.Xna.Framework.Graphics.IndexBuffer.pComPtr, Microsoft.Xna.Framework.Graphics.GraphicsDevice.Resources, Microsoft.Xna.Framework.FrameworkResources.ResourcesMustBeGreaterThanZeroSize, and System.Runtime.InteropServices.Marshal.SizeOf().