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

◆ RecreateAndPopulateObject() [1/2]

unsafe override int Microsoft.Xna.Framework.Graphics.DynamicVertexBuffer.RecreateAndPopulateObject ( )
inlinepackagevirtual

Reimplemented from Microsoft.Xna.Framework.Graphics.VertexBuffer.

Definition at line 109 of file DynamicVertexBuffer.cs.

110 {
111 if (pComPtr != null)
112 {
113 return -2147467259;
114 }
115 if (_size == 0)
116 {
117 return -2147467259;
118 }
119 fixed (IDirect3DVertexBuffer9** ptr2 = &pComPtr)
120 {
121 GraphicsDevice parent = _parent;
122 IDirect3DDevice9* ptr = parent.pComPtr;
123 GraphicsDevice graphicsDevice = parent;
124 int num = *(int*)ptr + 104;
125 int num2 = ((delegate* unmanaged[Stdcall, Stdcall]<IntPtr, uint, uint, uint, _D3DPOOL, IDirect3DVertexBuffer9**, void**, int>)(int)(*(uint*)num))((nint)ptr, _size, graphicsDevice.GetBufferUsage(_usage) | 0x200u, 0u, (_D3DPOOL)0, ptr2, null);
126 if (num2 >= 0)
127 {
129 }
130 return num2;
131 }
132 }
unsafe void AddTrackedObject(object managedObject, void *pComPtr, uint resourceManagementMode, ulong handle, ref ulong updatedHandle)
unsafe IDirect3DVertexBuffer9 * pComPtr

References Microsoft.Xna.Framework.Graphics.GraphicsResource._internalHandle, Microsoft.Xna.Framework.Graphics.GraphicsResource._parent, Microsoft.Xna.Framework.Graphics.VertexBuffer._size, Microsoft.Xna.Framework.Graphics.VertexBuffer._usage, Microsoft.Xna.Framework.Graphics.DeviceResourceManager.AddTrackedObject(), Microsoft.Xna.Framework.Graphics.GraphicsDevice.GetBufferUsage(), Microsoft.Xna.Framework.Graphics.GraphicsDevice.pComPtr, Microsoft.Xna.Framework.Graphics.VertexBuffer.pComPtr, and Microsoft.Xna.Framework.Graphics.GraphicsDevice.Resources.

Referenced by Microsoft.Xna.Framework.Graphics.DynamicVertexBuffer.RecreateAndPopulateObject().