Artifact 3663615d3892dfa712893b02b671adb706018487:
- File
src/win32/directx/d3dx10async.d
-
2015-05-05 06:49:05
- part of checkin
[9b639cf2d6]
on branch trunk
- Working version for update to 2.067.
The problem was __gshared. Replacing it with TLS fixed the issue. Remaining problem is that "hack.d"'s CloseHandle hack is not working anymore.
(user: kinaba) [annotate]
-
2015-05-05 06:49:05
- part of checkin
[9b639cf2d6]
on branch trunk
- Working version for update to 2.067.
0000: 2f 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a /*************** 0010: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 0020: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 0030: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 0040: 2a 2a 2a 2a 2a 2a 2a 2a 5c 0d 0a 2a 20 20 20 20 ********\..* 0050: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0060: 20 20 20 20 20 20 20 20 20 64 33 64 78 31 30 61 d3dx10a 0070: 73 79 6e 63 2e 64 20 20 20 20 20 20 20 20 20 20 sync.d 0080: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0090: 20 20 20 2a 0d 0a 2a 20 20 20 20 20 20 20 20 20 *..* 00a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 00b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 00c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 00d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2a 0d *. 00e0: 0a 2a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .* 00f0: 20 20 20 20 20 20 20 20 20 57 69 6e 64 6f 77 73 Windows 0100: 20 41 50 49 20 68 65 61 64 65 72 20 6d 6f 64 75 API header modu 0110: 6c 65 20 20 20 20 20 20 20 20 20 20 20 20 20 20 le 0120: 20 20 20 20 20 20 20 20 20 2a 0d 0a 2a 20 20 20 *..* 0130: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0140: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0150: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0160: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0170: 20 20 20 20 2a 0d 0a 2a 20 20 20 20 20 20 20 20 *..* 0180: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 50 P 0190: 6c 61 63 65 64 20 69 6e 74 6f 20 70 75 62 6c 69 laced into publi 01a0: 63 20 64 6f 6d 61 69 6e 20 20 20 20 20 20 20 20 c domain 01b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2a * 01c0: 0d 0a 5c 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ..\************* 01d0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 01e0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 01f0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 0200: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2f 0d 0a 6d 6f 64 **********/..mod 0210: 75 6c 65 20 77 69 6e 33 32 2e 64 69 72 65 63 74 ule win32.direct 0220: 78 2e 64 33 64 78 31 30 61 73 79 6e 63 3b 0d 0a x.d3dx10async;.. 0230: 0d 0a 70 72 69 76 61 74 65 20 69 6d 70 6f 72 74 ..private import 0240: 20 77 69 6e 33 32 2e 77 69 6e 64 6f 77 73 3b 0d win32.windows;. 0250: 0a 70 72 69 76 61 74 65 20 69 6d 70 6f 72 74 20 .private import 0260: 77 69 6e 33 32 2e 64 69 72 65 63 74 78 2e 64 33 win32.directx.d3 0270: 64 31 30 3b 0d 0a 70 72 69 76 61 74 65 20 69 6d d10;..private im 0280: 70 6f 72 74 20 77 69 6e 33 32 2e 64 69 72 65 63 port win32.direc 0290: 74 78 2e 64 33 64 31 30 73 68 61 64 65 72 3b 0d tx.d3d10shader;. 02a0: 0a 70 72 69 76 61 74 65 20 69 6d 70 6f 72 74 20 .private import 02b0: 77 69 6e 33 32 2e 64 69 72 65 63 74 78 2e 64 33 win32.directx.d3 02c0: 64 31 30 65 66 66 65 63 74 3b 0d 0a 70 72 69 76 d10effect;..priv 02d0: 61 74 65 20 69 6d 70 6f 72 74 20 77 69 6e 33 32 ate import win32 02e0: 2e 64 69 72 65 63 74 78 2e 64 33 64 78 31 30 3b .directx.d3dx10; 02f0: 0d 0a 70 72 69 76 61 74 65 20 69 6d 70 6f 72 74 ..private import 0300: 20 77 69 6e 33 32 2e 64 69 72 65 63 74 78 2e 64 win32.directx.d 0310: 33 64 78 31 30 61 73 79 6e 63 3b 0d 0a 0d 0a 65 3dx10async;....e 0320: 78 74 65 72 6e 28 57 69 6e 64 6f 77 73 29 20 7b xtern(Windows) { 0330: 0d 0a 09 48 52 45 53 55 4c 54 20 44 33 44 58 31 ...HRESULT D3DX1 0340: 30 43 6f 6d 70 69 6c 65 46 72 6f 6d 46 69 6c 65 0CompileFromFile 0350: 41 28 4c 50 43 53 54 52 20 70 53 72 63 46 69 6c A(LPCSTR pSrcFil 0360: 65 2c 20 44 33 44 31 30 5f 53 48 41 44 45 52 5f e, D3D10_SHADER_ 0370: 4d 41 43 52 4f 2a 20 70 44 65 66 69 6e 65 73 2c MACRO* pDefines, 0380: 20 49 44 33 44 31 30 49 6e 63 6c 75 64 65 20 70 ID3D10Include p 0390: 49 6e 63 6c 75 64 65 2c 20 4c 50 43 53 54 52 20 Include, LPCSTR 03a0: 70 46 75 6e 63 74 69 6f 6e 4e 61 6d 65 2c 20 4c pFunctionName, L 03b0: 50 43 53 54 52 20 70 50 72 6f 66 69 6c 65 2c 20 PCSTR pProfile, 03c0: 55 49 4e 54 20 46 6c 61 67 73 31 2c 20 55 49 4e UINT Flags1, UIN 03d0: 54 20 46 6c 61 67 73 32 2c 20 49 44 33 44 58 31 T Flags2, ID3DX1 03e0: 30 54 68 72 65 61 64 50 75 6d 70 20 70 50 75 6d 0ThreadPump pPum 03f0: 70 2c 20 49 44 33 44 31 30 42 6c 6f 62 2a 20 70 p, ID3D10Blob* p 0400: 70 53 68 61 64 65 72 2c 20 49 44 33 44 31 30 42 pShader, ID3D10B 0410: 6c 6f 62 2a 20 70 70 45 72 72 6f 72 4d 73 67 73 lob* ppErrorMsgs 0420: 2c 20 48 52 45 53 55 4c 54 2a 20 70 48 52 65 73 , HRESULT* pHRes 0430: 75 6c 74 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 ult);...HRESULT 0440: 44 33 44 58 31 30 43 6f 6d 70 69 6c 65 46 72 6f D3DX10CompileFro 0450: 6d 46 69 6c 65 57 28 4c 50 43 57 53 54 52 20 70 mFileW(LPCWSTR p 0460: 53 72 63 46 69 6c 65 2c 20 44 33 44 31 30 5f 53 SrcFile, D3D10_S 0470: 48 41 44 45 52 5f 4d 41 43 52 4f 2a 20 70 44 65 HADER_MACRO* pDe 0480: 66 69 6e 65 73 2c 20 49 44 33 44 31 30 49 6e 63 fines, ID3D10Inc 0490: 6c 75 64 65 20 70 49 6e 63 6c 75 64 65 2c 20 4c lude pInclude, L 04a0: 50 43 53 54 52 20 70 46 75 6e 63 74 69 6f 6e 4e PCSTR pFunctionN 04b0: 61 6d 65 2c 20 4c 50 43 53 54 52 20 70 50 72 6f ame, LPCSTR pPro 04c0: 66 69 6c 65 2c 20 55 49 4e 54 20 46 6c 61 67 73 file, UINT Flags 04d0: 31 2c 20 55 49 4e 54 20 46 6c 61 67 73 32 2c 20 1, UINT Flags2, 04e0: 49 44 33 44 58 31 30 54 68 72 65 61 64 50 75 6d ID3DX10ThreadPum 04f0: 70 20 70 50 75 6d 70 2c 20 49 44 33 44 31 30 42 p pPump, ID3D10B 0500: 6c 6f 62 2a 20 70 70 53 68 61 64 65 72 2c 20 49 lob* ppShader, I 0510: 44 33 44 31 30 42 6c 6f 62 2a 20 70 70 45 72 72 D3D10Blob* ppErr 0520: 6f 72 4d 73 67 73 2c 20 48 52 45 53 55 4c 54 2a orMsgs, HRESULT* 0530: 20 70 48 52 65 73 75 6c 74 29 3b 0d 0a 7d 0d 0a pHResult);..}.. 0540: 0d 0a 76 65 72 73 69 6f 6e 28 55 6e 69 63 6f 64 ..version(Unicod 0550: 65 29 20 7b 0d 0a 09 61 6c 69 61 73 20 44 33 44 e) {...alias D3D 0560: 58 31 30 43 6f 6d 70 69 6c 65 46 72 6f 6d 46 69 X10CompileFromFi 0570: 6c 65 57 20 44 33 44 58 31 30 43 6f 6d 70 69 6c leW D3DX10Compil 0580: 65 46 72 6f 6d 46 69 6c 65 3b 0d 0a 7d 20 65 6c eFromFile;..} el 0590: 73 65 20 7b 0d 0a 09 61 6c 69 61 73 20 44 33 44 se {...alias D3D 05a0: 58 31 30 43 6f 6d 70 69 6c 65 46 72 6f 6d 46 69 X10CompileFromFi 05b0: 6c 65 41 20 44 33 44 58 31 30 43 6f 6d 70 69 6c leA D3DX10Compil 05c0: 65 46 72 6f 6d 46 69 6c 65 3b 0d 0a 7d 0d 0a 0d eFromFile;..}... 05d0: 0a 65 78 74 65 72 6e 28 57 69 6e 64 6f 77 73 29 .extern(Windows) 05e0: 20 7b 0d 0a 09 48 52 45 53 55 4c 54 20 44 33 44 {...HRESULT D3D 05f0: 58 31 30 43 6f 6d 70 69 6c 65 46 72 6f 6d 52 65 X10CompileFromRe 0600: 73 6f 75 72 63 65 41 28 48 4d 4f 44 55 4c 45 20 sourceA(HMODULE 0610: 68 53 72 63 4d 6f 64 75 6c 65 2c 20 4c 50 43 53 hSrcModule, LPCS 0620: 54 52 20 70 53 72 63 52 65 73 6f 75 72 63 65 2c TR pSrcResource, 0630: 20 4c 50 43 53 54 52 20 70 53 72 63 46 69 6c 65 LPCSTR pSrcFile 0640: 4e 61 6d 65 2c 20 44 33 44 31 30 5f 53 48 41 44 Name, D3D10_SHAD 0650: 45 52 5f 4d 41 43 52 4f 2a 20 70 44 65 66 69 6e ER_MACRO* pDefin 0660: 65 73 2c 20 49 44 33 44 31 30 49 6e 63 6c 75 64 es, ID3D10Includ 0670: 65 20 70 49 6e 63 6c 75 64 65 2c 20 4c 50 43 53 e pInclude, LPCS 0680: 54 52 20 70 46 75 6e 63 74 69 6f 6e 4e 61 6d 65 TR pFunctionName 0690: 2c 20 4c 50 43 53 54 52 20 70 50 72 6f 66 69 6c , LPCSTR pProfil 06a0: 65 2c 20 55 49 4e 54 20 46 6c 61 67 73 31 2c 20 e, UINT Flags1, 06b0: 55 49 4e 54 20 46 6c 61 67 73 32 2c 20 49 44 33 UINT Flags2, ID3 06c0: 44 58 31 30 54 68 72 65 61 64 50 75 6d 70 20 70 DX10ThreadPump p 06d0: 50 75 6d 70 2c 20 49 44 33 44 31 30 42 6c 6f 62 Pump, ID3D10Blob 06e0: 2a 20 70 70 53 68 61 64 65 72 2c 20 49 44 33 44 * ppShader, ID3D 06f0: 31 30 42 6c 6f 62 2a 20 70 70 45 72 72 6f 72 4d 10Blob* ppErrorM 0700: 73 67 73 2c 20 48 52 45 53 55 4c 54 2a 20 70 48 sgs, HRESULT* pH 0710: 52 65 73 75 6c 74 29 3b 0d 0a 09 48 52 45 53 55 Result);...HRESU 0720: 4c 54 20 44 33 44 58 31 30 43 6f 6d 70 69 6c 65 LT D3DX10Compile 0730: 46 72 6f 6d 52 65 73 6f 75 72 63 65 57 28 48 4d FromResourceW(HM 0740: 4f 44 55 4c 45 20 68 53 72 63 4d 6f 64 75 6c 65 ODULE hSrcModule 0750: 2c 20 4c 50 43 57 53 54 52 20 70 53 72 63 52 65 , LPCWSTR pSrcRe 0760: 73 6f 75 72 63 65 2c 20 4c 50 43 57 53 54 52 20 source, LPCWSTR 0770: 70 53 72 63 46 69 6c 65 4e 61 6d 65 2c 20 44 33 pSrcFileName, D3 0780: 44 31 30 5f 53 48 41 44 45 52 5f 4d 41 43 52 4f D10_SHADER_MACRO 0790: 2a 20 70 44 65 66 69 6e 65 73 2c 20 49 44 33 44 * pDefines, ID3D 07a0: 31 30 49 6e 63 6c 75 64 65 20 70 49 6e 63 6c 75 10Include pInclu 07b0: 64 65 2c 20 4c 50 43 53 54 52 20 70 46 75 6e 63 de, LPCSTR pFunc 07c0: 74 69 6f 6e 4e 61 6d 65 2c 20 4c 50 43 53 54 52 tionName, LPCSTR 07d0: 20 70 50 72 6f 66 69 6c 65 2c 20 55 49 4e 54 20 pProfile, UINT 07e0: 46 6c 61 67 73 31 2c 20 55 49 4e 54 20 46 6c 61 Flags1, UINT Fla 07f0: 67 73 32 2c 20 49 44 33 44 58 31 30 54 68 72 65 gs2, ID3DX10Thre 0800: 61 64 50 75 6d 70 20 70 50 75 6d 70 2c 20 49 44 adPump pPump, ID 0810: 33 44 31 30 42 6c 6f 62 2a 20 70 70 53 68 61 64 3D10Blob* ppShad 0820: 65 72 2c 20 49 44 33 44 31 30 42 6c 6f 62 2a 20 er, ID3D10Blob* 0830: 70 70 45 72 72 6f 72 4d 73 67 73 2c 20 48 52 45 ppErrorMsgs, HRE 0840: 53 55 4c 54 2a 20 70 48 52 65 73 75 6c 74 29 3b SULT* pHResult); 0850: 0d 0a 7d 0d 0a 0d 0a 76 65 72 73 69 6f 6e 28 55 ..}....version(U 0860: 6e 69 63 6f 64 65 29 20 7b 0d 0a 09 61 6c 69 61 nicode) {...alia 0870: 73 20 44 33 44 58 31 30 43 6f 6d 70 69 6c 65 46 s D3DX10CompileF 0880: 72 6f 6d 52 65 73 6f 75 72 63 65 57 20 44 33 44 romResourceW D3D 0890: 58 31 30 43 6f 6d 70 69 6c 65 46 72 6f 6d 52 65 X10CompileFromRe 08a0: 73 6f 75 72 63 65 3b 0d 0a 7d 20 65 6c 73 65 20 source;..} else 08b0: 7b 0d 0a 09 61 6c 69 61 73 20 44 33 44 58 31 30 {...alias D3DX10 08c0: 43 6f 6d 70 69 6c 65 46 72 6f 6d 52 65 73 6f 75 CompileFromResou 08d0: 72 63 65 41 20 44 33 44 58 31 30 43 6f 6d 70 69 rceA D3DX10Compi 08e0: 6c 65 46 72 6f 6d 52 65 73 6f 75 72 63 65 3b 0d leFromResource;. 08f0: 0a 7d 0d 0a 0d 0a 65 78 74 65 72 6e 28 57 69 6e .}....extern(Win 0900: 64 6f 77 73 29 20 7b 0d 0a 09 48 52 45 53 55 4c dows) {...HRESUL 0910: 54 20 44 33 44 58 31 30 43 6f 6d 70 69 6c 65 46 T D3DX10CompileF 0920: 72 6f 6d 4d 65 6d 6f 72 79 28 4c 50 43 53 54 52 romMemory(LPCSTR 0930: 20 70 53 72 63 44 61 74 61 2c 20 53 49 5a 45 5f pSrcData, SIZE_ 0940: 54 20 53 72 63 44 61 74 61 4c 65 6e 2c 20 4c 50 T SrcDataLen, LP 0950: 43 53 54 52 20 70 46 69 6c 65 4e 61 6d 65 2c 20 CSTR pFileName, 0960: 44 33 44 31 30 5f 53 48 41 44 45 52 5f 4d 41 43 D3D10_SHADER_MAC 0970: 52 4f 2a 20 70 44 65 66 69 6e 65 73 2c 20 49 44 RO* pDefines, ID 0980: 33 44 31 30 49 6e 63 6c 75 64 65 20 70 49 6e 63 3D10Include pInc 0990: 6c 75 64 65 2c 20 4c 50 43 53 54 52 20 70 46 75 lude, LPCSTR pFu 09a0: 6e 63 74 69 6f 6e 4e 61 6d 65 2c 20 4c 50 43 53 nctionName, LPCS 09b0: 54 52 20 70 50 72 6f 66 69 6c 65 2c 20 55 49 4e TR pProfile, UIN 09c0: 54 20 46 6c 61 67 73 31 2c 20 55 49 4e 54 20 46 T Flags1, UINT F 09d0: 6c 61 67 73 32 2c 20 49 44 33 44 58 31 30 54 68 lags2, ID3DX10Th 09e0: 72 65 61 64 50 75 6d 70 20 70 50 75 6d 70 2c 20 readPump pPump, 09f0: 49 44 33 44 31 30 42 6c 6f 62 2a 20 70 70 53 68 ID3D10Blob* ppSh 0a00: 61 64 65 72 2c 20 49 44 33 44 31 30 42 6c 6f 62 ader, ID3D10Blob 0a10: 2a 20 70 70 45 72 72 6f 72 4d 73 67 73 2c 20 48 * ppErrorMsgs, H 0a20: 52 45 53 55 4c 54 2a 20 70 48 52 65 73 75 6c 74 RESULT* pHResult 0a30: 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 44 33 44 );...HRESULT D3D 0a40: 58 31 30 43 72 65 61 74 65 45 66 66 65 63 74 46 X10CreateEffectF 0a50: 72 6f 6d 46 69 6c 65 41 28 4c 50 43 53 54 52 20 romFileA(LPCSTR 0a60: 70 46 69 6c 65 4e 61 6d 65 2c 20 44 33 44 31 30 pFileName, D3D10 0a70: 5f 53 48 41 44 45 52 5f 4d 41 43 52 4f 2a 20 70 _SHADER_MACRO* p 0a80: 44 65 66 69 6e 65 73 2c 20 49 44 33 44 31 30 49 Defines, ID3D10I 0a90: 6e 63 6c 75 64 65 20 70 49 6e 63 6c 75 64 65 2c nclude pInclude, 0aa0: 20 4c 50 43 53 54 52 20 70 50 72 6f 66 69 6c 65 LPCSTR pProfile 0ab0: 2c 20 55 49 4e 54 20 48 4c 53 4c 46 6c 61 67 73 , UINT HLSLFlags 0ac0: 2c 20 55 49 4e 54 20 46 58 46 6c 61 67 73 2c 20 , UINT FXFlags, 0ad0: 49 44 33 44 31 30 44 65 76 69 63 65 20 70 44 65 ID3D10Device pDe 0ae0: 76 69 63 65 2c 20 49 44 33 44 31 30 45 66 66 65 vice, ID3D10Effe 0af0: 63 74 50 6f 6f 6c 20 70 45 66 66 65 63 74 50 6f ctPool pEffectPo 0b00: 6f 6c 2c 20 49 44 33 44 58 31 30 54 68 72 65 61 ol, ID3DX10Threa 0b10: 64 50 75 6d 70 20 70 50 75 6d 70 2c 20 49 44 33 dPump pPump, ID3 0b20: 44 31 30 45 66 66 65 63 74 2a 20 70 70 45 66 66 D10Effect* ppEff 0b30: 65 63 74 2c 20 49 44 33 44 31 30 42 6c 6f 62 2a ect, ID3D10Blob* 0b40: 20 70 70 45 72 72 6f 72 73 2c 20 48 52 45 53 55 ppErrors, HRESU 0b50: 4c 54 2a 20 70 48 52 65 73 75 6c 74 29 3b 0d 0a LT* pHResult);.. 0b60: 09 48 52 45 53 55 4c 54 20 44 33 44 58 31 30 43 .HRESULT D3DX10C 0b70: 72 65 61 74 65 45 66 66 65 63 74 46 72 6f 6d 46 reateEffectFromF 0b80: 69 6c 65 57 28 4c 50 43 57 53 54 52 20 70 46 69 ileW(LPCWSTR pFi 0b90: 6c 65 4e 61 6d 65 2c 20 44 33 44 31 30 5f 53 48 leName, D3D10_SH 0ba0: 41 44 45 52 5f 4d 41 43 52 4f 2a 20 70 44 65 66 ADER_MACRO* pDef 0bb0: 69 6e 65 73 2c 20 49 44 33 44 31 30 49 6e 63 6c ines, ID3D10Incl 0bc0: 75 64 65 20 70 49 6e 63 6c 75 64 65 2c 20 4c 50 ude pInclude, LP 0bd0: 43 53 54 52 20 70 50 72 6f 66 69 6c 65 2c 20 55 CSTR pProfile, U 0be0: 49 4e 54 20 48 4c 53 4c 46 6c 61 67 73 2c 20 55 INT HLSLFlags, U 0bf0: 49 4e 54 20 46 58 46 6c 61 67 73 2c 20 49 44 33 INT FXFlags, ID3 0c00: 44 31 30 44 65 76 69 63 65 20 70 44 65 76 69 63 D10Device pDevic 0c10: 65 2c 20 49 44 33 44 31 30 45 66 66 65 63 74 50 e, ID3D10EffectP 0c20: 6f 6f 6c 20 70 45 66 66 65 63 74 50 6f 6f 6c 2c ool pEffectPool, 0c30: 20 49 44 33 44 58 31 30 54 68 72 65 61 64 50 75 ID3DX10ThreadPu 0c40: 6d 70 20 70 50 75 6d 70 2c 20 49 44 33 44 31 30 mp pPump, ID3D10 0c50: 45 66 66 65 63 74 2a 20 70 70 45 66 66 65 63 74 Effect* ppEffect 0c60: 2c 20 49 44 33 44 31 30 42 6c 6f 62 2a 20 70 70 , ID3D10Blob* pp 0c70: 45 72 72 6f 72 73 2c 20 48 52 45 53 55 4c 54 2a Errors, HRESULT* 0c80: 20 70 48 52 65 73 75 6c 74 29 3b 0d 0a 09 48 52 pHResult);...HR 0c90: 45 53 55 4c 54 20 44 33 44 58 31 30 43 72 65 61 ESULT D3DX10Crea 0ca0: 74 65 45 66 66 65 63 74 46 72 6f 6d 4d 65 6d 6f teEffectFromMemo 0cb0: 72 79 28 4c 50 43 56 4f 49 44 20 70 44 61 74 61 ry(LPCVOID pData 0cc0: 2c 20 53 49 5a 45 5f 54 20 44 61 74 61 4c 65 6e , SIZE_T DataLen 0cd0: 67 74 68 2c 20 4c 50 43 53 54 52 20 70 53 72 63 gth, LPCSTR pSrc 0ce0: 46 69 6c 65 4e 61 6d 65 2c 20 44 33 44 31 30 5f FileName, D3D10_ 0cf0: 53 48 41 44 45 52 5f 4d 41 43 52 4f 2a 20 70 44 SHADER_MACRO* pD 0d00: 65 66 69 6e 65 73 2c 20 49 44 33 44 31 30 49 6e efines, ID3D10In 0d10: 63 6c 75 64 65 20 70 49 6e 63 6c 75 64 65 2c 20 clude pInclude, 0d20: 4c 50 43 53 54 52 20 70 50 72 6f 66 69 6c 65 2c LPCSTR pProfile, 0d30: 20 55 49 4e 54 20 48 4c 53 4c 46 6c 61 67 73 2c UINT HLSLFlags, 0d40: 20 55 49 4e 54 20 46 58 46 6c 61 67 73 2c 20 49 UINT FXFlags, I 0d50: 44 33 44 31 30 44 65 76 69 63 65 20 70 44 65 76 D3D10Device pDev 0d60: 69 63 65 2c 20 49 44 33 44 31 30 45 66 66 65 63 ice, ID3D10Effec 0d70: 74 50 6f 6f 6c 20 70 45 66 66 65 63 74 50 6f 6f tPool pEffectPoo 0d80: 6c 2c 20 49 44 33 44 58 31 30 54 68 72 65 61 64 l, ID3DX10Thread 0d90: 50 75 6d 70 20 70 50 75 6d 70 2c 20 49 44 33 44 Pump pPump, ID3D 0da0: 31 30 45 66 66 65 63 74 2a 20 70 70 45 66 66 65 10Effect* ppEffe 0db0: 63 74 2c 20 49 44 33 44 31 30 42 6c 6f 62 2a 20 ct, ID3D10Blob* 0dc0: 70 70 45 72 72 6f 72 73 2c 20 48 52 45 53 55 4c ppErrors, HRESUL 0dd0: 54 2a 20 70 48 52 65 73 75 6c 74 29 3b 0d 0a 09 T* pHResult);... 0de0: 48 52 45 53 55 4c 54 20 44 33 44 58 31 30 43 72 HRESULT D3DX10Cr 0df0: 65 61 74 65 45 66 66 65 63 74 46 72 6f 6d 52 65 eateEffectFromRe 0e00: 73 6f 75 72 63 65 41 28 48 4d 4f 44 55 4c 45 20 sourceA(HMODULE 0e10: 68 4d 6f 64 75 6c 65 2c 20 4c 50 43 53 54 52 20 hModule, LPCSTR 0e20: 70 52 65 73 6f 75 72 63 65 4e 61 6d 65 2c 20 4c pResourceName, L 0e30: 50 43 53 54 52 20 70 53 72 63 46 69 6c 65 4e 61 PCSTR pSrcFileNa 0e40: 6d 65 2c 20 44 33 44 31 30 5f 53 48 41 44 45 52 me, D3D10_SHADER 0e50: 5f 4d 41 43 52 4f 2a 20 70 44 65 66 69 6e 65 73 _MACRO* pDefines 0e60: 2c 20 49 44 33 44 31 30 49 6e 63 6c 75 64 65 20 , ID3D10Include 0e70: 70 49 6e 63 6c 75 64 65 2c 20 4c 50 43 53 54 52 pInclude, LPCSTR 0e80: 20 70 50 72 6f 66 69 6c 65 2c 20 55 49 4e 54 20 pProfile, UINT 0e90: 48 4c 53 4c 46 6c 61 67 73 2c 20 55 49 4e 54 20 HLSLFlags, UINT 0ea0: 46 58 46 6c 61 67 73 2c 20 49 44 33 44 31 30 44 FXFlags, ID3D10D 0eb0: 65 76 69 63 65 20 70 44 65 76 69 63 65 2c 20 49 evice pDevice, I 0ec0: 44 33 44 31 30 45 66 66 65 63 74 50 6f 6f 6c 20 D3D10EffectPool 0ed0: 70 45 66 66 65 63 74 50 6f 6f 6c 2c 20 49 44 33 pEffectPool, ID3 0ee0: 44 58 31 30 54 68 72 65 61 64 50 75 6d 70 20 70 DX10ThreadPump p 0ef0: 50 75 6d 70 2c 20 49 44 33 44 31 30 45 66 66 65 Pump, ID3D10Effe 0f00: 63 74 2a 20 70 70 45 66 66 65 63 74 2c 20 49 44 ct* ppEffect, ID 0f10: 33 44 31 30 42 6c 6f 62 2a 20 70 70 45 72 72 6f 3D10Blob* ppErro 0f20: 72 73 2c 20 48 52 45 53 55 4c 54 2a 20 70 48 52 rs, HRESULT* pHR 0f30: 65 73 75 6c 74 29 3b 0d 0a 09 48 52 45 53 55 4c esult);...HRESUL 0f40: 54 20 44 33 44 58 31 30 43 72 65 61 74 65 45 66 T D3DX10CreateEf 0f50: 66 65 63 74 46 72 6f 6d 52 65 73 6f 75 72 63 65 fectFromResource 0f60: 57 28 48 4d 4f 44 55 4c 45 20 68 4d 6f 64 75 6c W(HMODULE hModul 0f70: 65 2c 20 4c 50 43 57 53 54 52 20 70 52 65 73 6f e, LPCWSTR pReso 0f80: 75 72 63 65 4e 61 6d 65 2c 20 4c 50 43 57 53 54 urceName, LPCWST 0f90: 52 20 70 53 72 63 46 69 6c 65 4e 61 6d 65 2c 20 R pSrcFileName, 0fa0: 44 33 44 31 30 5f 53 48 41 44 45 52 5f 4d 41 43 D3D10_SHADER_MAC 0fb0: 52 4f 2a 20 70 44 65 66 69 6e 65 73 2c 20 49 44 RO* pDefines, ID 0fc0: 33 44 31 30 49 6e 63 6c 75 64 65 20 70 49 6e 63 3D10Include pInc 0fd0: 6c 75 64 65 2c 20 4c 50 43 53 54 52 20 70 50 72 lude, LPCSTR pPr 0fe0: 6f 66 69 6c 65 2c 20 55 49 4e 54 20 48 4c 53 4c ofile, UINT HLSL 0ff0: 46 6c 61 67 73 2c 20 55 49 4e 54 20 46 58 46 6c Flags, UINT FXFl 1000: 61 67 73 2c 20 49 44 33 44 31 30 44 65 76 69 63 ags, ID3D10Devic 1010: 65 20 70 44 65 76 69 63 65 2c 20 49 44 33 44 31 e pDevice, ID3D1 1020: 30 45 66 66 65 63 74 50 6f 6f 6c 20 70 45 66 66 0EffectPool pEff 1030: 65 63 74 50 6f 6f 6c 2c 20 49 44 33 44 58 31 30 ectPool, ID3DX10 1040: 54 68 72 65 61 64 50 75 6d 70 20 70 50 75 6d 70 ThreadPump pPump 1050: 2c 20 49 44 33 44 31 30 45 66 66 65 63 74 2a 20 , ID3D10Effect* 1060: 70 70 45 66 66 65 63 74 2c 20 49 44 33 44 31 30 ppEffect, ID3D10 1070: 42 6c 6f 62 2a 20 70 70 45 72 72 6f 72 73 2c 20 Blob* ppErrors, 1080: 48 52 45 53 55 4c 54 2a 20 70 48 52 65 73 75 6c HRESULT* pHResul 1090: 74 29 3b 0d 0a 7d 0d 0a 0d 0a 76 65 72 73 69 6f t);..}....versio 10a0: 6e 28 55 6e 69 63 6f 64 65 29 20 7b 0d 0a 09 61 n(Unicode) {...a 10b0: 6c 69 61 73 20 44 33 44 58 31 30 43 72 65 61 74 lias D3DX10Creat 10c0: 65 45 66 66 65 63 74 46 72 6f 6d 46 69 6c 65 57 eEffectFromFileW 10d0: 20 44 33 44 58 31 30 43 72 65 61 74 65 45 66 66 D3DX10CreateEff 10e0: 65 63 74 46 72 6f 6d 46 69 6c 65 3b 0d 0a 09 61 ectFromFile;...a 10f0: 6c 69 61 73 20 44 33 44 58 31 30 43 72 65 61 74 lias D3DX10Creat 1100: 65 45 66 66 65 63 74 46 72 6f 6d 52 65 73 6f 75 eEffectFromResou 1110: 72 63 65 57 20 44 33 44 58 31 30 43 72 65 61 74 rceW D3DX10Creat 1120: 65 45 66 66 65 63 74 46 72 6f 6d 52 65 73 6f 75 eEffectFromResou 1130: 72 63 65 3b 0d 0a 7d 20 65 6c 73 65 20 7b 0d 0a rce;..} else {.. 1140: 09 61 6c 69 61 73 20 44 33 44 58 31 30 43 72 65 .alias D3DX10Cre 1150: 61 74 65 45 66 66 65 63 74 46 72 6f 6d 46 69 6c ateEffectFromFil 1160: 65 41 20 44 33 44 58 31 30 43 72 65 61 74 65 45 eA D3DX10CreateE 1170: 66 66 65 63 74 46 72 6f 6d 46 69 6c 65 3b 0d 0a ffectFromFile;.. 1180: 09 61 6c 69 61 73 20 44 33 44 58 31 30 43 72 65 .alias D3DX10Cre 1190: 61 74 65 45 66 66 65 63 74 46 72 6f 6d 52 65 73 ateEffectFromRes 11a0: 6f 75 72 63 65 41 20 44 33 44 58 31 30 43 72 65 ourceA D3DX10Cre 11b0: 61 74 65 45 66 66 65 63 74 46 72 6f 6d 52 65 73 ateEffectFromRes 11c0: 6f 75 72 63 65 3b 0d 0a 7d 0d 0a 0d 0a 65 78 74 ource;..}....ext 11d0: 65 72 6e 28 57 69 6e 64 6f 77 73 29 20 7b 0d 0a ern(Windows) {.. 11e0: 09 48 52 45 53 55 4c 54 20 44 33 44 58 31 30 43 .HRESULT D3DX10C 11f0: 72 65 61 74 65 45 66 66 65 63 74 50 6f 6f 6c 46 reateEffectPoolF 1200: 72 6f 6d 46 69 6c 65 41 28 4c 50 43 53 54 52 20 romFileA(LPCSTR 1210: 70 46 69 6c 65 4e 61 6d 65 2c 20 44 33 44 31 30 pFileName, D3D10 1220: 5f 53 48 41 44 45 52 5f 4d 41 43 52 4f 2a 20 70 _SHADER_MACRO* p 1230: 44 65 66 69 6e 65 73 2c 20 49 44 33 44 31 30 49 Defines, ID3D10I 1240: 6e 63 6c 75 64 65 20 70 49 6e 63 6c 75 64 65 2c nclude pInclude, 1250: 20 4c 50 43 53 54 52 20 70 50 72 6f 66 69 6c 65 LPCSTR pProfile 1260: 2c 20 55 49 4e 54 20 48 4c 53 4c 46 6c 61 67 73 , UINT HLSLFlags 1270: 2c 20 55 49 4e 54 20 46 58 46 6c 61 67 73 2c 20 , UINT FXFlags, 1280: 49 44 33 44 31 30 44 65 76 69 63 65 20 70 44 65 ID3D10Device pDe 1290: 76 69 63 65 2c 20 49 44 33 44 58 31 30 54 68 72 vice, ID3DX10Thr 12a0: 65 61 64 50 75 6d 70 20 70 50 75 6d 70 2c 20 49 eadPump pPump, I 12b0: 44 33 44 31 30 45 66 66 65 63 74 50 6f 6f 6c 2a D3D10EffectPool* 12c0: 20 70 70 45 66 66 65 63 74 50 6f 6f 6c 2c 20 49 ppEffectPool, I 12d0: 44 33 44 31 30 42 6c 6f 62 2a 20 70 70 45 72 72 D3D10Blob* ppErr 12e0: 6f 72 73 2c 20 48 52 45 53 55 4c 54 2a 20 70 48 ors, HRESULT* pH 12f0: 52 65 73 75 6c 74 29 3b 0d 0a 09 48 52 45 53 55 Result);...HRESU 1300: 4c 54 20 44 33 44 58 31 30 43 72 65 61 74 65 45 LT D3DX10CreateE 1310: 66 66 65 63 74 50 6f 6f 6c 46 72 6f 6d 46 69 6c ffectPoolFromFil 1320: 65 57 28 4c 50 43 57 53 54 52 20 70 46 69 6c 65 eW(LPCWSTR pFile 1330: 4e 61 6d 65 2c 20 44 33 44 31 30 5f 53 48 41 44 Name, D3D10_SHAD 1340: 45 52 5f 4d 41 43 52 4f 2a 20 70 44 65 66 69 6e ER_MACRO* pDefin 1350: 65 73 2c 20 49 44 33 44 31 30 49 6e 63 6c 75 64 es, ID3D10Includ 1360: 65 20 70 49 6e 63 6c 75 64 65 2c 20 4c 50 43 53 e pInclude, LPCS 1370: 54 52 20 70 50 72 6f 66 69 6c 65 2c 20 55 49 4e TR pProfile, UIN 1380: 54 20 48 4c 53 4c 46 6c 61 67 73 2c 20 55 49 4e T HLSLFlags, UIN 1390: 54 20 46 58 46 6c 61 67 73 2c 20 49 44 33 44 31 T FXFlags, ID3D1 13a0: 30 44 65 76 69 63 65 20 70 44 65 76 69 63 65 2c 0Device pDevice, 13b0: 20 49 44 33 44 58 31 30 54 68 72 65 61 64 50 75 ID3DX10ThreadPu 13c0: 6d 70 20 70 50 75 6d 70 2c 20 49 44 33 44 31 30 mp pPump, ID3D10 13d0: 45 66 66 65 63 74 50 6f 6f 6c 2a 20 70 70 45 66 EffectPool* ppEf 13e0: 66 65 63 74 50 6f 6f 6c 2c 20 49 44 33 44 31 30 fectPool, ID3D10 13f0: 42 6c 6f 62 2a 20 70 70 45 72 72 6f 72 73 2c 20 Blob* ppErrors, 1400: 48 52 45 53 55 4c 54 2a 20 70 48 52 65 73 75 6c HRESULT* pHResul 1410: 74 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 44 33 t);...HRESULT D3 1420: 44 58 31 30 43 72 65 61 74 65 45 66 66 65 63 74 DX10CreateEffect 1430: 50 6f 6f 6c 46 72 6f 6d 4d 65 6d 6f 72 79 28 4c PoolFromMemory(L 1440: 50 43 56 4f 49 44 20 70 44 61 74 61 2c 20 53 49 PCVOID pData, SI 1450: 5a 45 5f 54 20 44 61 74 61 4c 65 6e 67 74 68 2c ZE_T DataLength, 1460: 20 4c 50 43 53 54 52 20 70 53 72 63 46 69 6c 65 LPCSTR pSrcFile 1470: 4e 61 6d 65 2c 20 44 33 44 31 30 5f 53 48 41 44 Name, D3D10_SHAD 1480: 45 52 5f 4d 41 43 52 4f 2a 20 70 44 65 66 69 6e ER_MACRO* pDefin 1490: 65 73 2c 20 49 44 33 44 31 30 49 6e 63 6c 75 64 es, ID3D10Includ 14a0: 65 20 70 49 6e 63 6c 75 64 65 2c 20 4c 50 43 53 e pInclude, LPCS 14b0: 54 52 20 70 50 72 6f 66 69 6c 65 2c 20 55 49 4e TR pProfile, UIN 14c0: 54 20 48 4c 53 4c 46 6c 61 67 73 2c 20 55 49 4e T HLSLFlags, UIN 14d0: 54 20 46 58 46 6c 61 67 73 2c 20 49 44 33 44 31 T FXFlags, ID3D1 14e0: 30 44 65 76 69 63 65 20 70 44 65 76 69 63 65 2c 0Device pDevice, 14f0: 20 49 44 33 44 58 31 30 54 68 72 65 61 64 50 75 ID3DX10ThreadPu 1500: 6d 70 20 70 50 75 6d 70 2c 20 49 44 33 44 31 30 mp pPump, ID3D10 1510: 45 66 66 65 63 74 50 6f 6f 6c 2a 20 70 70 45 66 EffectPool* ppEf 1520: 66 65 63 74 50 6f 6f 6c 2c 20 49 44 33 44 31 30 fectPool, ID3D10 1530: 42 6c 6f 62 2a 20 70 70 45 72 72 6f 72 73 2c 20 Blob* ppErrors, 1540: 48 52 45 53 55 4c 54 2a 20 70 48 52 65 73 75 6c HRESULT* pHResul 1550: 74 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 44 33 t);...HRESULT D3 1560: 44 58 31 30 43 72 65 61 74 65 45 66 66 65 63 74 DX10CreateEffect 1570: 50 6f 6f 6c 46 72 6f 6d 52 65 73 6f 75 72 63 65 PoolFromResource 1580: 41 28 48 4d 4f 44 55 4c 45 20 68 4d 6f 64 75 6c A(HMODULE hModul 1590: 65 2c 20 4c 50 43 53 54 52 20 70 52 65 73 6f 75 e, LPCSTR pResou 15a0: 72 63 65 4e 61 6d 65 2c 20 4c 50 43 53 54 52 20 rceName, LPCSTR 15b0: 70 53 72 63 46 69 6c 65 4e 61 6d 65 2c 20 44 33 pSrcFileName, D3 15c0: 44 31 30 5f 53 48 41 44 45 52 5f 4d 41 43 52 4f D10_SHADER_MACRO 15d0: 2a 20 70 44 65 66 69 6e 65 73 2c 20 49 44 33 44 * pDefines, ID3D 15e0: 31 30 49 6e 63 6c 75 64 65 20 70 49 6e 63 6c 75 10Include pInclu 15f0: 64 65 2c 20 4c 50 43 53 54 52 20 70 50 72 6f 66 de, LPCSTR pProf 1600: 69 6c 65 2c 20 55 49 4e 54 20 48 4c 53 4c 46 6c ile, UINT HLSLFl 1610: 61 67 73 2c 20 55 49 4e 54 20 46 58 46 6c 61 67 ags, UINT FXFlag 1620: 73 2c 20 49 44 33 44 31 30 44 65 76 69 63 65 20 s, ID3D10Device 1630: 70 44 65 76 69 63 65 2c 20 49 44 33 44 58 31 30 pDevice, ID3DX10 1640: 54 68 72 65 61 64 50 75 6d 70 20 70 50 75 6d 70 ThreadPump pPump 1650: 2c 20 49 44 33 44 31 30 45 66 66 65 63 74 50 6f , ID3D10EffectPo 1660: 6f 6c 2a 20 70 70 45 66 66 65 63 74 50 6f 6f 6c ol* ppEffectPool 1670: 2c 20 49 44 33 44 31 30 42 6c 6f 62 2a 20 70 70 , ID3D10Blob* pp 1680: 45 72 72 6f 72 73 2c 20 48 52 45 53 55 4c 54 2a Errors, HRESULT* 1690: 20 70 48 52 65 73 75 6c 74 29 3b 0d 0a 09 48 52 pHResult);...HR 16a0: 45 53 55 4c 54 20 44 33 44 58 31 30 43 72 65 61 ESULT D3DX10Crea 16b0: 74 65 45 66 66 65 63 74 50 6f 6f 6c 46 72 6f 6d teEffectPoolFrom 16c0: 52 65 73 6f 75 72 63 65 57 28 48 4d 4f 44 55 4c ResourceW(HMODUL 16d0: 45 20 68 4d 6f 64 75 6c 65 2c 20 4c 50 43 57 53 E hModule, LPCWS 16e0: 54 52 20 70 52 65 73 6f 75 72 63 65 4e 61 6d 65 TR pResourceName 16f0: 2c 20 4c 50 43 57 53 54 52 20 70 53 72 63 46 69 , LPCWSTR pSrcFi 1700: 6c 65 4e 61 6d 65 2c 20 44 33 44 31 30 5f 53 48 leName, D3D10_SH 1710: 41 44 45 52 5f 4d 41 43 52 4f 2a 20 70 44 65 66 ADER_MACRO* pDef 1720: 69 6e 65 73 2c 20 49 44 33 44 31 30 49 6e 63 6c ines, ID3D10Incl 1730: 75 64 65 20 70 49 6e 63 6c 75 64 65 2c 20 4c 50 ude pInclude, LP 1740: 43 53 54 52 20 70 50 72 6f 66 69 6c 65 2c 20 55 CSTR pProfile, U 1750: 49 4e 54 20 48 4c 53 4c 46 6c 61 67 73 2c 20 55 INT HLSLFlags, U 1760: 49 4e 54 20 46 58 46 6c 61 67 73 2c 20 49 44 33 INT FXFlags, ID3 1770: 44 31 30 44 65 76 69 63 65 20 70 44 65 76 69 63 D10Device pDevic 1780: 65 2c 20 49 44 33 44 58 31 30 54 68 72 65 61 64 e, ID3DX10Thread 1790: 50 75 6d 70 20 70 50 75 6d 70 2c 20 49 44 33 44 Pump pPump, ID3D 17a0: 31 30 45 66 66 65 63 74 50 6f 6f 6c 2a 20 70 70 10EffectPool* pp 17b0: 45 66 66 65 63 74 50 6f 6f 6c 2c 20 49 44 33 44 EffectPool, ID3D 17c0: 31 30 42 6c 6f 62 2a 20 70 70 45 72 72 6f 72 73 10Blob* ppErrors 17d0: 2c 20 48 52 45 53 55 4c 54 2a 20 70 48 52 65 73 , HRESULT* pHRes 17e0: 75 6c 74 29 3b 0d 0a 7d 0d 0a 0d 0a 76 65 72 73 ult);..}....vers 17f0: 69 6f 6e 28 55 6e 69 63 6f 64 65 29 20 7b 0d 0a ion(Unicode) {.. 1800: 09 61 6c 69 61 73 20 44 33 44 58 31 30 43 72 65 .alias D3DX10Cre 1810: 61 74 65 45 66 66 65 63 74 50 6f 6f 6c 46 72 6f ateEffectPoolFro 1820: 6d 46 69 6c 65 57 20 44 33 44 58 31 30 43 72 65 mFileW D3DX10Cre 1830: 61 74 65 45 66 66 65 63 74 50 6f 6f 6c 46 72 6f ateEffectPoolFro 1840: 6d 46 69 6c 65 3b 0d 0a 09 61 6c 69 61 73 20 44 mFile;...alias D 1850: 33 44 58 31 30 43 72 65 61 74 65 45 66 66 65 63 3DX10CreateEffec 1860: 74 50 6f 6f 6c 46 72 6f 6d 52 65 73 6f 75 72 63 tPoolFromResourc 1870: 65 57 20 44 33 44 58 31 30 43 72 65 61 74 65 45 eW D3DX10CreateE 1880: 66 66 65 63 74 50 6f 6f 6c 46 72 6f 6d 52 65 73 ffectPoolFromRes 1890: 6f 75 72 63 65 3b 0d 0a 7d 20 65 6c 73 65 20 7b ource;..} else { 18a0: 0d 0a 09 61 6c 69 61 73 20 44 33 44 58 31 30 43 ...alias D3DX10C 18b0: 72 65 61 74 65 45 66 66 65 63 74 50 6f 6f 6c 46 reateEffectPoolF 18c0: 72 6f 6d 46 69 6c 65 41 20 44 33 44 58 31 30 43 romFileA D3DX10C 18d0: 72 65 61 74 65 45 66 66 65 63 74 50 6f 6f 6c 46 reateEffectPoolF 18e0: 72 6f 6d 46 69 6c 65 3b 0d 0a 09 61 6c 69 61 73 romFile;...alias 18f0: 20 44 33 44 58 31 30 43 72 65 61 74 65 45 66 66 D3DX10CreateEff 1900: 65 63 74 50 6f 6f 6c 46 72 6f 6d 52 65 73 6f 75 ectPoolFromResou 1910: 72 63 65 41 20 44 33 44 58 31 30 43 72 65 61 74 rceA D3DX10Creat 1920: 65 45 66 66 65 63 74 50 6f 6f 6c 46 72 6f 6d 52 eEffectPoolFromR 1930: 65 73 6f 75 72 63 65 3b 0d 0a 7d 0d 0a 0d 0a 65 esource;..}....e 1940: 78 74 65 72 6e 28 57 69 6e 64 6f 77 73 29 20 7b xtern(Windows) { 1950: 0d 0a 09 48 52 45 53 55 4c 54 20 44 33 44 58 31 ...HRESULT D3DX1 1960: 30 50 72 65 70 72 6f 63 65 73 73 53 68 61 64 65 0PreprocessShade 1970: 72 46 72 6f 6d 46 69 6c 65 41 28 4c 50 43 53 54 rFromFileA(LPCST 1980: 52 20 70 46 69 6c 65 4e 61 6d 65 2c 20 44 33 44 R pFileName, D3D 1990: 31 30 5f 53 48 41 44 45 52 5f 4d 41 43 52 4f 2a 10_SHADER_MACRO* 19a0: 20 70 44 65 66 69 6e 65 73 2c 20 49 44 33 44 31 pDefines, ID3D1 19b0: 30 49 6e 63 6c 75 64 65 20 70 49 6e 63 6c 75 64 0Include pInclud 19c0: 65 2c 20 49 44 33 44 58 31 30 54 68 72 65 61 64 e, ID3DX10Thread 19d0: 50 75 6d 70 20 70 50 75 6d 70 2c 20 49 44 33 44 Pump pPump, ID3D 19e0: 31 30 42 6c 6f 62 2a 20 70 70 53 68 61 64 65 72 10Blob* ppShader 19f0: 54 65 78 74 2c 20 49 44 33 44 31 30 42 6c 6f 62 Text, ID3D10Blob 1a00: 2a 20 70 70 45 72 72 6f 72 4d 73 67 73 2c 20 48 * ppErrorMsgs, H 1a10: 52 45 53 55 4c 54 2a 20 70 48 52 65 73 75 6c 74 RESULT* pHResult 1a20: 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 44 33 44 );...HRESULT D3D 1a30: 58 31 30 50 72 65 70 72 6f 63 65 73 73 53 68 61 X10PreprocessSha 1a40: 64 65 72 46 72 6f 6d 46 69 6c 65 57 28 4c 50 43 derFromFileW(LPC 1a50: 57 53 54 52 20 70 46 69 6c 65 4e 61 6d 65 2c 20 WSTR pFileName, 1a60: 44 33 44 31 30 5f 53 48 41 44 45 52 5f 4d 41 43 D3D10_SHADER_MAC 1a70: 52 4f 2a 20 70 44 65 66 69 6e 65 73 2c 20 49 44 RO* pDefines, ID 1a80: 33 44 31 30 49 6e 63 6c 75 64 65 20 70 49 6e 63 3D10Include pInc 1a90: 6c 75 64 65 2c 20 49 44 33 44 58 31 30 54 68 72 lude, ID3DX10Thr 1aa0: 65 61 64 50 75 6d 70 20 70 50 75 6d 70 2c 20 49 eadPump pPump, I 1ab0: 44 33 44 31 30 42 6c 6f 62 2a 20 70 70 53 68 61 D3D10Blob* ppSha 1ac0: 64 65 72 54 65 78 74 2c 20 49 44 33 44 31 30 42 derText, ID3D10B 1ad0: 6c 6f 62 2a 20 70 70 45 72 72 6f 72 4d 73 67 73 lob* ppErrorMsgs 1ae0: 2c 20 48 52 45 53 55 4c 54 2a 20 70 48 52 65 73 , HRESULT* pHRes 1af0: 75 6c 74 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 ult);...HRESULT 1b00: 44 33 44 58 31 30 50 72 65 70 72 6f 63 65 73 73 D3DX10Preprocess 1b10: 53 68 61 64 65 72 46 72 6f 6d 4d 65 6d 6f 72 79 ShaderFromMemory 1b20: 28 4c 50 43 53 54 52 20 70 53 72 63 44 61 74 61 (LPCSTR pSrcData 1b30: 2c 20 53 49 5a 45 5f 54 20 53 72 63 44 61 74 61 , SIZE_T SrcData 1b40: 53 69 7a 65 2c 20 4c 50 43 53 54 52 20 70 46 69 Size, LPCSTR pFi 1b50: 6c 65 4e 61 6d 65 2c 20 44 33 44 31 30 5f 53 48 leName, D3D10_SH 1b60: 41 44 45 52 5f 4d 41 43 52 4f 2a 20 70 44 65 66 ADER_MACRO* pDef 1b70: 69 6e 65 73 2c 20 49 44 33 44 31 30 49 6e 63 6c ines, ID3D10Incl 1b80: 75 64 65 20 70 49 6e 63 6c 75 64 65 2c 20 49 44 ude pInclude, ID 1b90: 33 44 58 31 30 54 68 72 65 61 64 50 75 6d 70 20 3DX10ThreadPump 1ba0: 70 50 75 6d 70 2c 20 49 44 33 44 31 30 42 6c 6f pPump, ID3D10Blo 1bb0: 62 2a 20 70 70 53 68 61 64 65 72 54 65 78 74 2c b* ppShaderText, 1bc0: 20 49 44 33 44 31 30 42 6c 6f 62 2a 20 70 70 45 ID3D10Blob* ppE 1bd0: 72 72 6f 72 4d 73 67 73 2c 20 48 52 45 53 55 4c rrorMsgs, HRESUL 1be0: 54 2a 20 70 48 52 65 73 75 6c 74 29 3b 0d 0a 09 T* pHResult);... 1bf0: 48 52 45 53 55 4c 54 20 44 33 44 58 31 30 50 72 HRESULT D3DX10Pr 1c00: 65 70 72 6f 63 65 73 73 53 68 61 64 65 72 46 72 eprocessShaderFr 1c10: 6f 6d 52 65 73 6f 75 72 63 65 41 28 48 4d 4f 44 omResourceA(HMOD 1c20: 55 4c 45 20 68 4d 6f 64 75 6c 65 2c 20 4c 50 43 ULE hModule, LPC 1c30: 53 54 52 20 70 52 65 73 6f 75 72 63 65 4e 61 6d STR pResourceNam 1c40: 65 2c 20 4c 50 43 53 54 52 20 70 53 72 63 46 69 e, LPCSTR pSrcFi 1c50: 6c 65 4e 61 6d 65 2c 20 44 33 44 31 30 5f 53 48 leName, D3D10_SH 1c60: 41 44 45 52 5f 4d 41 43 52 4f 2a 20 70 44 65 66 ADER_MACRO* pDef 1c70: 69 6e 65 73 2c 20 49 44 33 44 31 30 49 6e 63 6c ines, ID3D10Incl 1c80: 75 64 65 20 70 49 6e 63 6c 75 64 65 2c 20 49 44 ude pInclude, ID 1c90: 33 44 58 31 30 54 68 72 65 61 64 50 75 6d 70 20 3DX10ThreadPump 1ca0: 70 50 75 6d 70 2c 20 49 44 33 44 31 30 42 6c 6f pPump, ID3D10Blo 1cb0: 62 2a 20 70 70 53 68 61 64 65 72 54 65 78 74 2c b* ppShaderText, 1cc0: 20 49 44 33 44 31 30 42 6c 6f 62 2a 20 70 70 45 ID3D10Blob* ppE 1cd0: 72 72 6f 72 4d 73 67 73 2c 20 48 52 45 53 55 4c rrorMsgs, HRESUL 1ce0: 54 2a 20 70 48 52 65 73 75 6c 74 29 3b 0d 0a 09 T* pHResult);... 1cf0: 48 52 45 53 55 4c 54 20 44 33 44 58 31 30 50 72 HRESULT D3DX10Pr 1d00: 65 70 72 6f 63 65 73 73 53 68 61 64 65 72 46 72 eprocessShaderFr 1d10: 6f 6d 52 65 73 6f 75 72 63 65 57 28 48 4d 4f 44 omResourceW(HMOD 1d20: 55 4c 45 20 68 4d 6f 64 75 6c 65 2c 20 4c 50 43 ULE hModule, LPC 1d30: 57 53 54 52 20 70 52 65 73 6f 75 72 63 65 4e 61 WSTR pResourceNa 1d40: 6d 65 2c 20 4c 50 43 57 53 54 52 20 70 53 72 63 me, LPCWSTR pSrc 1d50: 46 69 6c 65 4e 61 6d 65 2c 20 44 33 44 31 30 5f FileName, D3D10_ 1d60: 53 48 41 44 45 52 5f 4d 41 43 52 4f 2a 20 70 44 SHADER_MACRO* pD 1d70: 65 66 69 6e 65 73 2c 20 49 44 33 44 31 30 49 6e efines, ID3D10In 1d80: 63 6c 75 64 65 20 70 49 6e 63 6c 75 64 65 2c 20 clude pInclude, 1d90: 49 44 33 44 58 31 30 54 68 72 65 61 64 50 75 6d ID3DX10ThreadPum 1da0: 70 20 70 50 75 6d 70 2c 20 49 44 33 44 31 30 42 p pPump, ID3D10B 1db0: 6c 6f 62 2a 20 70 70 53 68 61 64 65 72 54 65 78 lob* ppShaderTex 1dc0: 74 2c 20 49 44 33 44 31 30 42 6c 6f 62 2a 20 70 t, ID3D10Blob* p 1dd0: 70 45 72 72 6f 72 4d 73 67 73 2c 20 48 52 45 53 pErrorMsgs, HRES 1de0: 55 4c 54 2a 20 70 48 52 65 73 75 6c 74 29 3b 0d ULT* pHResult);. 1df0: 0a 7d 0d 0a 0d 0a 76 65 72 73 69 6f 6e 28 55 6e .}....version(Un 1e00: 69 63 6f 64 65 29 20 7b 0d 0a 09 61 6c 69 61 73 icode) {...alias 1e10: 20 44 33 44 58 31 30 50 72 65 70 72 6f 63 65 73 D3DX10Preproces 1e20: 73 53 68 61 64 65 72 46 72 6f 6d 46 69 6c 65 57 sShaderFromFileW 1e30: 20 44 33 44 58 31 30 50 72 65 70 72 6f 63 65 73 D3DX10Preproces 1e40: 73 53 68 61 64 65 72 46 72 6f 6d 46 69 6c 65 3b sShaderFromFile; 1e50: 0d 0a 09 61 6c 69 61 73 20 44 33 44 58 31 30 50 ...alias D3DX10P 1e60: 72 65 70 72 6f 63 65 73 73 53 68 61 64 65 72 46 reprocessShaderF 1e70: 72 6f 6d 52 65 73 6f 75 72 63 65 57 20 44 33 44 romResourceW D3D 1e80: 58 31 30 50 72 65 70 72 6f 63 65 73 73 53 68 61 X10PreprocessSha 1e90: 64 65 72 46 72 6f 6d 52 65 73 6f 75 72 63 65 3b derFromResource; 1ea0: 0d 0a 7d 20 65 6c 73 65 20 7b 0d 0a 09 61 6c 69 ..} else {...ali 1eb0: 61 73 20 44 33 44 58 31 30 50 72 65 70 72 6f 63 as D3DX10Preproc 1ec0: 65 73 73 53 68 61 64 65 72 46 72 6f 6d 46 69 6c essShaderFromFil 1ed0: 65 41 20 44 33 44 58 31 30 50 72 65 70 72 6f 63 eA D3DX10Preproc 1ee0: 65 73 73 53 68 61 64 65 72 46 72 6f 6d 46 69 6c essShaderFromFil 1ef0: 65 3b 0d 0a 09 61 6c 69 61 73 20 44 33 44 58 31 e;...alias D3DX1 1f00: 30 50 72 65 70 72 6f 63 65 73 73 53 68 61 64 65 0PreprocessShade 1f10: 72 46 72 6f 6d 52 65 73 6f 75 72 63 65 41 20 44 rFromResourceA D 1f20: 33 44 58 31 30 50 72 65 70 72 6f 63 65 73 73 53 3DX10PreprocessS 1f30: 68 61 64 65 72 46 72 6f 6d 52 65 73 6f 75 72 63 haderFromResourc 1f40: 65 3b 0d 0a 7d 0d 0a 0d 0a 65 78 74 65 72 6e 28 e;..}....extern( 1f50: 57 69 6e 64 6f 77 73 29 20 7b 0d 0a 09 48 52 45 Windows) {...HRE 1f60: 53 55 4c 54 20 44 33 44 58 31 30 43 72 65 61 74 SULT D3DX10Creat 1f70: 65 41 73 79 6e 63 43 6f 6d 70 69 6c 65 72 50 72 eAsyncCompilerPr 1f80: 6f 63 65 73 73 6f 72 28 4c 50 43 53 54 52 20 70 ocessor(LPCSTR p 1f90: 46 69 6c 65 4e 61 6d 65 2c 20 44 33 44 31 30 5f FileName, D3D10_ 1fa0: 53 48 41 44 45 52 5f 4d 41 43 52 4f 2a 20 70 44 SHADER_MACRO* pD 1fb0: 65 66 69 6e 65 73 2c 20 49 44 33 44 31 30 49 6e efines, ID3D10In 1fc0: 63 6c 75 64 65 20 70 49 6e 63 6c 75 64 65 2c 20 clude pInclude, 1fd0: 4c 50 43 53 54 52 20 70 46 75 6e 63 74 69 6f 6e LPCSTR pFunction 1fe0: 4e 61 6d 65 2c 20 4c 50 43 53 54 52 20 70 50 72 Name, LPCSTR pPr 1ff0: 6f 66 69 6c 65 2c 20 55 49 4e 54 20 46 6c 61 67 ofile, UINT Flag 2000: 73 31 2c 20 55 49 4e 54 20 46 6c 61 67 73 32 2c s1, UINT Flags2, 2010: 20 49 44 33 44 31 30 42 6c 6f 62 2a 20 70 70 43 ID3D10Blob* ppC 2020: 6f 6d 70 69 6c 65 64 53 68 61 64 65 72 2c 20 49 ompiledShader, I 2030: 44 33 44 31 30 42 6c 6f 62 2a 20 70 70 45 72 72 D3D10Blob* ppErr 2040: 6f 72 42 75 66 66 65 72 2c 20 49 44 33 44 58 31 orBuffer, ID3DX1 2050: 30 44 61 74 61 50 72 6f 63 65 73 73 6f 72 2a 20 0DataProcessor* 2060: 70 70 50 72 6f 63 65 73 73 6f 72 29 3b 0d 0a 09 ppProcessor);... 2070: 48 52 45 53 55 4c 54 20 44 33 44 58 31 30 43 72 HRESULT D3DX10Cr 2080: 65 61 74 65 41 73 79 6e 63 45 66 66 65 63 74 43 eateAsyncEffectC 2090: 72 65 61 74 65 50 72 6f 63 65 73 73 6f 72 28 4c reateProcessor(L 20a0: 50 43 53 54 52 20 70 46 69 6c 65 4e 61 6d 65 2c PCSTR pFileName, 20b0: 20 44 33 44 31 30 5f 53 48 41 44 45 52 5f 4d 41 D3D10_SHADER_MA 20c0: 43 52 4f 2a 20 70 44 65 66 69 6e 65 73 2c 20 49 CRO* pDefines, I 20d0: 44 33 44 31 30 49 6e 63 6c 75 64 65 20 70 49 6e D3D10Include pIn 20e0: 63 6c 75 64 65 2c 20 4c 50 43 53 54 52 20 70 50 clude, LPCSTR pP 20f0: 72 6f 66 69 6c 65 2c 20 55 49 4e 54 20 46 6c 61 rofile, UINT Fla 2100: 67 73 2c 20 55 49 4e 54 20 46 58 46 6c 61 67 73 gs, UINT FXFlags 2110: 2c 20 49 44 33 44 31 30 44 65 76 69 63 65 20 70 , ID3D10Device p 2120: 44 65 76 69 63 65 2c 20 49 44 33 44 31 30 45 66 Device, ID3D10Ef 2130: 66 65 63 74 50 6f 6f 6c 20 70 50 6f 6f 6c 2c 20 fectPool pPool, 2140: 49 44 33 44 31 30 42 6c 6f 62 2a 20 70 70 45 72 ID3D10Blob* ppEr 2150: 72 6f 72 42 75 66 66 65 72 2c 20 49 44 33 44 58 rorBuffer, ID3DX 2160: 31 30 44 61 74 61 50 72 6f 63 65 73 73 6f 72 2a 10DataProcessor* 2170: 20 70 70 50 72 6f 63 65 73 73 6f 72 29 3b 0d 0a ppProcessor);.. 2180: 09 48 52 45 53 55 4c 54 20 44 33 44 58 31 30 43 .HRESULT D3DX10C 2190: 72 65 61 74 65 41 73 79 6e 63 45 66 66 65 63 74 reateAsyncEffect 21a0: 50 6f 6f 6c 43 72 65 61 74 65 50 72 6f 63 65 73 PoolCreateProces 21b0: 73 6f 72 28 4c 50 43 53 54 52 20 70 46 69 6c 65 sor(LPCSTR pFile 21c0: 4e 61 6d 65 2c 20 44 33 44 31 30 5f 53 48 41 44 Name, D3D10_SHAD 21d0: 45 52 5f 4d 41 43 52 4f 2a 20 70 44 65 66 69 6e ER_MACRO* pDefin 21e0: 65 73 2c 20 49 44 33 44 31 30 49 6e 63 6c 75 64 es, ID3D10Includ 21f0: 65 20 70 49 6e 63 6c 75 64 65 2c 20 4c 50 43 53 e pInclude, LPCS 2200: 54 52 20 70 50 72 6f 66 69 6c 65 2c 20 55 49 4e TR pProfile, UIN 2210: 54 20 46 6c 61 67 73 2c 20 55 49 4e 54 20 46 58 T Flags, UINT FX 2220: 46 6c 61 67 73 2c 20 49 44 33 44 31 30 44 65 76 Flags, ID3D10Dev 2230: 69 63 65 20 70 44 65 76 69 63 65 2c 20 49 44 33 ice pDevice, ID3 2240: 44 31 30 42 6c 6f 62 2a 20 70 70 45 72 72 6f 72 D10Blob* ppError 2250: 42 75 66 66 65 72 2c 20 49 44 33 44 58 31 30 44 Buffer, ID3DX10D 2260: 61 74 61 50 72 6f 63 65 73 73 6f 72 2a 20 70 70 ataProcessor* pp 2270: 50 72 6f 63 65 73 73 6f 72 29 3b 0d 0a 09 48 52 Processor);...HR 2280: 45 53 55 4c 54 20 44 33 44 58 31 30 43 72 65 61 ESULT D3DX10Crea 2290: 74 65 41 73 79 6e 63 53 68 61 64 65 72 50 72 65 teAsyncShaderPre 22a0: 70 72 6f 63 65 73 73 50 72 6f 63 65 73 73 6f 72 processProcessor 22b0: 28 4c 50 43 53 54 52 20 70 46 69 6c 65 4e 61 6d (LPCSTR pFileNam 22c0: 65 2c 20 44 33 44 31 30 5f 53 48 41 44 45 52 5f e, D3D10_SHADER_ 22d0: 4d 41 43 52 4f 2a 20 70 44 65 66 69 6e 65 73 2c MACRO* pDefines, 22e0: 20 49 44 33 44 31 30 49 6e 63 6c 75 64 65 20 70 ID3D10Include p 22f0: 49 6e 63 6c 75 64 65 2c 20 49 44 33 44 31 30 42 Include, ID3D10B 2300: 6c 6f 62 2a 20 70 70 53 68 61 64 65 72 54 65 78 lob* ppShaderTex 2310: 74 2c 20 49 44 33 44 31 30 42 6c 6f 62 2a 20 70 t, ID3D10Blob* p 2320: 70 45 72 72 6f 72 42 75 66 66 65 72 2c 20 49 44 pErrorBuffer, ID 2330: 33 44 58 31 30 44 61 74 61 50 72 6f 63 65 73 73 3DX10DataProcess 2340: 6f 72 2a 20 70 70 50 72 6f 63 65 73 73 6f 72 29 or* ppProcessor) 2350: 3b 0d 0a 09 48 52 45 53 55 4c 54 20 44 33 44 58 ;...HRESULT D3DX 2360: 31 30 43 72 65 61 74 65 41 73 79 6e 63 46 69 6c 10CreateAsyncFil 2370: 65 4c 6f 61 64 65 72 57 28 4c 50 43 57 53 54 52 eLoaderW(LPCWSTR 2380: 20 70 46 69 6c 65 4e 61 6d 65 2c 20 49 44 33 44 pFileName, ID3D 2390: 58 31 30 44 61 74 61 4c 6f 61 64 65 72 2a 20 70 X10DataLoader* p 23a0: 70 44 61 74 61 4c 6f 61 64 65 72 29 3b 0d 0a 09 pDataLoader);... 23b0: 48 52 45 53 55 4c 54 20 44 33 44 58 31 30 43 72 HRESULT D3DX10Cr 23c0: 65 61 74 65 41 73 79 6e 63 46 69 6c 65 4c 6f 61 eateAsyncFileLoa 23d0: 64 65 72 41 28 4c 50 43 53 54 52 20 70 46 69 6c derA(LPCSTR pFil 23e0: 65 4e 61 6d 65 2c 20 49 44 33 44 58 31 30 44 61 eName, ID3DX10Da 23f0: 74 61 4c 6f 61 64 65 72 2a 20 70 70 44 61 74 61 taLoader* ppData 2400: 4c 6f 61 64 65 72 29 3b 0d 0a 09 48 52 45 53 55 Loader);...HRESU 2410: 4c 54 20 44 33 44 58 31 30 43 72 65 61 74 65 41 LT D3DX10CreateA 2420: 73 79 6e 63 4d 65 6d 6f 72 79 4c 6f 61 64 65 72 syncMemoryLoader 2430: 28 4c 50 43 56 4f 49 44 20 70 44 61 74 61 2c 20 (LPCVOID pData, 2440: 53 49 5a 45 5f 54 20 63 62 44 61 74 61 2c 20 49 SIZE_T cbData, I 2450: 44 33 44 58 31 30 44 61 74 61 4c 6f 61 64 65 72 D3DX10DataLoader 2460: 2a 20 70 70 44 61 74 61 4c 6f 61 64 65 72 29 3b * ppDataLoader); 2470: 0d 0a 09 48 52 45 53 55 4c 54 20 44 33 44 58 31 ...HRESULT D3DX1 2480: 30 43 72 65 61 74 65 41 73 79 6e 63 52 65 73 6f 0CreateAsyncReso 2490: 75 72 63 65 4c 6f 61 64 65 72 57 28 48 4d 4f 44 urceLoaderW(HMOD 24a0: 55 4c 45 20 68 53 72 63 4d 6f 64 75 6c 65 2c 20 ULE hSrcModule, 24b0: 4c 50 43 57 53 54 52 20 70 53 72 63 52 65 73 6f LPCWSTR pSrcReso 24c0: 75 72 63 65 2c 20 49 44 33 44 58 31 30 44 61 74 urce, ID3DX10Dat 24d0: 61 4c 6f 61 64 65 72 2a 20 70 70 44 61 74 61 4c aLoader* ppDataL 24e0: 6f 61 64 65 72 29 3b 0d 0a 09 48 52 45 53 55 4c oader);...HRESUL 24f0: 54 20 44 33 44 58 31 30 43 72 65 61 74 65 41 73 T D3DX10CreateAs 2500: 79 6e 63 52 65 73 6f 75 72 63 65 4c 6f 61 64 65 yncResourceLoade 2510: 72 41 28 48 4d 4f 44 55 4c 45 20 68 53 72 63 4d rA(HMODULE hSrcM 2520: 6f 64 75 6c 65 2c 20 4c 50 43 53 54 52 20 70 53 odule, LPCSTR pS 2530: 72 63 52 65 73 6f 75 72 63 65 2c 20 49 44 33 44 rcResource, ID3D 2540: 58 31 30 44 61 74 61 4c 6f 61 64 65 72 2a 20 70 X10DataLoader* p 2550: 70 44 61 74 61 4c 6f 61 64 65 72 29 3b 0d 0a 7d pDataLoader);..} 2560: 0d 0a 0d 0a 76 65 72 73 69 6f 6e 28 55 6e 69 63 ....version(Unic 2570: 6f 64 65 29 20 7b 0d 0a 09 61 6c 69 61 73 20 44 ode) {...alias D 2580: 33 44 58 31 30 43 72 65 61 74 65 41 73 79 6e 63 3DX10CreateAsync 2590: 46 69 6c 65 4c 6f 61 64 65 72 57 20 44 33 44 58 FileLoaderW D3DX 25a0: 31 30 43 72 65 61 74 65 41 73 79 6e 63 46 69 6c 10CreateAsyncFil 25b0: 65 4c 6f 61 64 65 72 3b 0d 0a 09 61 6c 69 61 73 eLoader;...alias 25c0: 20 44 33 44 58 31 30 43 72 65 61 74 65 41 73 79 D3DX10CreateAsy 25d0: 6e 63 52 65 73 6f 75 72 63 65 4c 6f 61 64 65 72 ncResourceLoader 25e0: 57 20 44 33 44 58 31 30 43 72 65 61 74 65 41 73 W D3DX10CreateAs 25f0: 79 6e 63 52 65 73 6f 75 72 63 65 4c 6f 61 64 65 yncResourceLoade 2600: 72 3b 0d 0a 7d 20 65 6c 73 65 20 7b 0d 0a 09 61 r;..} else {...a 2610: 6c 69 61 73 20 44 33 44 58 31 30 43 72 65 61 74 lias D3DX10Creat 2620: 65 41 73 79 6e 63 46 69 6c 65 4c 6f 61 64 65 72 eAsyncFileLoader 2630: 41 20 44 33 44 58 31 30 43 72 65 61 74 65 41 73 A D3DX10CreateAs 2640: 79 6e 63 46 69 6c 65 4c 6f 61 64 65 72 3b 0d 0a yncFileLoader;.. 2650: 09 61 6c 69 61 73 20 44 33 44 58 31 30 43 72 65 .alias D3DX10Cre 2660: 61 74 65 41 73 79 6e 63 52 65 73 6f 75 72 63 65 ateAsyncResource 2670: 4c 6f 61 64 65 72 41 20 44 33 44 58 31 30 43 72 LoaderA D3DX10Cr 2680: 65 61 74 65 41 73 79 6e 63 52 65 73 6f 75 72 63 eateAsyncResourc 2690: 65 4c 6f 61 64 65 72 3b 0d 0a 7d 0d 0a 0d 0a 65 eLoader;..}....e 26a0: 78 74 65 72 6e 28 57 69 6e 64 6f 77 73 29 20 7b xtern(Windows) { 26b0: 0d 0a 09 48 52 45 53 55 4c 54 20 44 33 44 58 31 ...HRESULT D3DX1 26c0: 30 43 72 65 61 74 65 41 73 79 6e 63 54 65 78 74 0CreateAsyncText 26d0: 75 72 65 50 72 6f 63 65 73 73 6f 72 28 49 44 33 ureProcessor(ID3 26e0: 44 31 30 44 65 76 69 63 65 20 70 44 65 76 69 63 D10Device pDevic 26f0: 65 2c 20 44 33 44 58 31 30 5f 49 4d 41 47 45 5f e, D3DX10_IMAGE_ 2700: 4c 4f 41 44 5f 49 4e 46 4f 2a 20 70 4c 6f 61 64 LOAD_INFO* pLoad 2710: 49 6e 66 6f 2c 20 49 44 33 44 58 31 30 44 61 74 Info, ID3DX10Dat 2720: 61 50 72 6f 63 65 73 73 6f 72 2a 20 70 70 44 61 aProcessor* ppDa 2730: 74 61 50 72 6f 63 65 73 73 6f 72 29 3b 0d 0a 09 taProcessor);... 2740: 48 52 45 53 55 4c 54 20 44 33 44 58 31 30 43 72 HRESULT D3DX10Cr 2750: 65 61 74 65 41 73 79 6e 63 54 65 78 74 75 72 65 eateAsyncTexture 2760: 49 6e 66 6f 50 72 6f 63 65 73 73 6f 72 28 44 33 InfoProcessor(D3 2770: 44 58 31 30 5f 49 4d 41 47 45 5f 49 4e 46 4f 2a DX10_IMAGE_INFO* 2780: 20 70 49 6d 61 67 65 49 6e 66 6f 2c 20 49 44 33 pImageInfo, ID3 2790: 44 58 31 30 44 61 74 61 50 72 6f 63 65 73 73 6f DX10DataProcesso 27a0: 72 2a 20 70 70 44 61 74 61 50 72 6f 63 65 73 73 r* ppDataProcess 27b0: 6f 72 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 44 or);...HRESULT D 27c0: 33 44 58 31 30 43 72 65 61 74 65 41 73 79 6e 63 3DX10CreateAsync 27d0: 53 68 61 64 65 72 52 65 73 6f 75 72 63 65 56 69 ShaderResourceVi 27e0: 65 77 50 72 6f 63 65 73 73 6f 72 28 49 44 33 44 ewProcessor(ID3D 27f0: 31 30 44 65 76 69 63 65 20 70 44 65 76 69 63 65 10Device pDevice 2800: 2c 20 44 33 44 58 31 30 5f 49 4d 41 47 45 5f 4c , D3DX10_IMAGE_L 2810: 4f 41 44 5f 49 4e 46 4f 2a 20 70 4c 6f 61 64 49 OAD_INFO* pLoadI 2820: 6e 66 6f 2c 20 49 44 33 44 58 31 30 44 61 74 61 nfo, ID3DX10Data 2830: 50 72 6f 63 65 73 73 6f 72 2a 20 70 70 44 61 74 Processor* ppDat 2840: 61 50 72 6f 63 65 73 73 6f 72 29 3b 0d 0a 7d 0d aProcessor);..}. 2850: 0a .