2056 {
2057 int num = 0;
2061 CubeMapFace cubeMapFace =
array[
index]._cubeMapFace;
2062 renderTarget.isActiveRenderTarget = false;
2063 if (renderTarget.GetComPtr() == null)
2064 {
2065 return;
2066 }
2068 {
2069 IDirect3DDevice9* intPtr =
pComPtr;
2070 ((delegate* unmanaged[Stdcall, Stdcall]<
IntPtr,
int>)(
int)(*(uint*)(*(
int*)intPtr + 168)))((nint)intPtr);
2071 }
2072 IDirect3DSurface9* ptr = renderTargetHelper.GetDestinationSurface(cubeMapFace, 0);
2073 IDirect3DSurface9* pRenderTargetSurface = renderTargetHelper.pRenderTargetSurface;
2074 if (pRenderTargetSurface != null)
2075 {
2076 IDirect3DSurface9* ptr2 = pRenderTargetSurface;
2077 IDirect3DDevice9* ptr3 =
pComPtr;
2078 int num2 = ((delegate* unmanaged[Stdcall, Stdcall]<
IntPtr, IDirect3DSurface9*, tagRECT*, IDirect3DSurface9*, tagRECT*, _D3DTEXTUREFILTERTYPE,
int>)(
int)(*(uint*)(*(
int*)ptr3 + 136)))((nint)ptr3, ptr2,
null, ptr,
null, (_D3DTEXTUREFILTERTYPE)2);
2079 if (num2 >= 0)
2080 {
2081 num = num2;
2082 }
2083 else
2084 {
2085 IDirect3DDevice9* ptr4 =
pComPtr;
2086 int num3 = ((delegate* unmanaged[Stdcall, Stdcall]<
IntPtr, IDirect3DSurface9*, tagRECT*, IDirect3DSurface9*, tagRECT*, _D3DTEXTUREFILTERTYPE,
int>)(
int)(*(uint*)(*(
int*)ptr4 + 136)))((nint)ptr4, ptr2,
null, ptr,
null, (_D3DTEXTUREFILTERTYPE)0);
2087 num = ((num3 < 0) ? _003CModule_003E.D3DXLoadSurfaceFromSurface(ptr, null, null, ptr2, null, null, uint.MaxValue, 0u) : num3);
2088 }
2089 }
2090 uint levelCount = (uint)renderTarget.LevelCount;
2091 uint num4 = 1u;
2092 if (1 < levelCount)
2093 {
2094 do
2095 {
2096 if (num >= 0)
2097 {
2098 IDirect3DSurface9* destinationSurface = renderTargetHelper.GetDestinationSurface(cubeMapFace, (int)num4);
2099 IDirect3DDevice9* ptr5 =
pComPtr;
2100 int num5 = ((delegate* unmanaged[Stdcall, Stdcall]<
IntPtr, IDirect3DSurface9*, tagRECT*, IDirect3DSurface9*, tagRECT*, _D3DTEXTUREFILTERTYPE,
int>)(
int)(*(uint*)(*(
int*)ptr5 + 136)))((nint)ptr5, ptr,
null, destinationSurface,
null, (_D3DTEXTUREFILTERTYPE)2);
2101 if (num5 >= 0)
2102 {
2103 num = num5;
2104 }
2105 else
2106 {
2108 num5 = ((delegate* unmanaged[Stdcall, Stdcall]<
IntPtr, IDirect3DSurface9*, tagRECT*, IDirect3DSurface9*, tagRECT*, _D3DTEXTUREFILTERTYPE,
int>)(
int)(*(uint*)(*(
int*)ptr5 + 136)))((nint)ptr5, ptr,
null, destinationSurface,
null, (_D3DTEXTUREFILTERTYPE)0);
2109 num = ((num5 < 0) ? _003CModule_003E.D3DXLoadSurfaceFromSurface(destinationSurface, null, null, ptr, null, null, uint.MaxValue, 0u) : num5);
2110 }
2111 if (ptr != null)
2112 {
2113 IDirect3DSurface9* intPtr2 = ptr;
2114 ((delegate* unmanaged[Stdcall, Stdcall]<
IntPtr, uint>)(
int)(*(uint*)(*(
int*)intPtr2 + 8)))((nint)intPtr2);
2115 }
2116 ptr = destinationSurface;
2117 }
2118 num4++;
2119 }
2120 while (num4 < levelCount);
2121 }
2122 if (ptr != null)
2123 {
2124 IDirect3DSurface9* intPtr3 = ptr;
2125 ((delegate* unmanaged[Stdcall, Stdcall]<
IntPtr, uint>)(
int)(*(uint*)(*(
int*)intPtr3 + 8)))((nint)intPtr3);
2126 }
2128 {
2129 IDirect3DDevice9* intPtr4 =
pComPtr;
2130 ((delegate* unmanaged[Stdcall, Stdcall]<
IntPtr,
int>)(
int)(*(uint*)(*(
int*)intPtr4 + 164)))((nint)intPtr4);
2131 }
2132 if (num < 0)
2133 {
2134 throw GraphicsHelpers.GetExceptionFromResult((uint)num);
2135 }
2136 }
RenderTargetBinding[] currentRenderTargetBindings
unsafe IDirect3DDevice9 * pComPtr
RenderTargetHelper[] currentRenderTargets