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

◆ InitializeDescription() [2/2]

unsafe void Microsoft.Xna.Framework.Graphics.Texture2D.InitializeDescription ( SurfaceFormat? format)
inlineprotected

Definition at line 589 of file Texture2D.cs.

590 {
591 IDirect3DTexture9* ptr = pComPtr;
592 System.Runtime.CompilerServices.Unsafe.SkipInit(out _D3DSURFACE_DESC d3DSURFACE_DESC);
593 int num = ((delegate* unmanaged[Stdcall, Stdcall]<IntPtr, uint, _D3DSURFACE_DESC*, int>)(int)(*(uint*)(*(int*)ptr + 68)))((nint)ptr, 0u, &d3DSURFACE_DESC);
594 if (num < 0)
595 {
596 throw GraphicsHelpers.GetExceptionFromResult((uint)num);
597 }
598 if (!format.HasValue)
599 {
600 format = _003CModule_003E.ConvertWindowsFormatToXna(*(_D3DFORMAT*)(&d3DSURFACE_DESC));
601 }
602 _width = System.Runtime.CompilerServices.Unsafe.As<_D3DSURFACE_DESC, int>(ref System.Runtime.CompilerServices.Unsafe.AddByteOffset(ref d3DSURFACE_DESC, 24));
603 _height = System.Runtime.CompilerServices.Unsafe.As<_D3DSURFACE_DESC, int>(ref System.Runtime.CompilerServices.Unsafe.AddByteOffset(ref d3DSURFACE_DESC, 28));
604 int shouldNotRecreate = ((System.Runtime.CompilerServices.Unsafe.As<_D3DSURFACE_DESC, int>(ref System.Runtime.CompilerServices.Unsafe.AddByteOffset(ref d3DSURFACE_DESC, 12)) == 0) ? 1 : 0);
605 _shouldNotRecreate = (byte)shouldNotRecreate != 0;
606 base.InitializeDescription(format.Value);
607 }
unsafe IDirect3DTexture9 * pComPtr
Definition Texture2D.cs:22

References Microsoft.Xna.Framework.Graphics.Texture2D._height, Microsoft.Xna.Framework.Graphics.Texture2D._shouldNotRecreate, Microsoft.Xna.Framework.Graphics.Texture2D._width, System.format, Microsoft.Xna.Framework.Graphics.GraphicsHelpers.GetExceptionFromResult(), and Microsoft.Xna.Framework.Graphics.Texture2D.pComPtr.

Referenced by Microsoft.Xna.Framework.Graphics.Texture2D.Texture2D(), Microsoft.Xna.Framework.Graphics.Texture2D.Texture2D(), Microsoft.Xna.Framework.Graphics.Texture2D.CreateTexture(), and Microsoft.Xna.Framework.Graphics.Texture2D.OnObjectCreation().