[PATCH 1/2] d3dx9_36: Implemented D3DXSaveVolumeToFile including DDS files

Sergey Isakov isakov-sl at bk.ru
Sun Jun 7 15:02:23 CDT 2015


I decided to improve builtin d3dx9_36 library with support of more file formats, texture formats, volume textures.
The original test gives the result:
——
$ wine c:/tests/d3dx9_36_test.exe.so texture
fixme:ole:RemUnknown_QueryInterface No interface for iid {00000019-0000-0000-c000-000000000046}
fixme:win:EnumDisplayDevicesW ((null),0,0x32f4e8,0x00000000), stub!
texture.c:177: Tests skipped: Hardware only supports pow2 textures
texture.c:244: Tests skipped: Skipping some tests, npot2 textures unsupported
texture.c:584: Test marked todo: Returned format 861165636, expected 21
texture.c:615: Tests skipped: No D3DUSAGE_AUTOGENMIPMAP support for volume textures
texture.c:682: Tests skipped: Hardware only supports pow2 textures
fixme:d3dx:D3DXFillTexture Unsupported texture format 0x31545844
texture.c:1198: Test marked todo: D3DXFillTexture returned 0x8876086c, expected 0
fixme:d3dx:D3DXCreateTextureFromFileInMemoryEx Unrecognized file format, returning failure.
fixme:d3dx:D3DXLoadSurfaceFromMemory Format conversion missing 0x35545844 -> 0x35545844
fixme:d3dx:D3DXCreateTextureFromFileInMemoryEx Texture filtering failed.
texture.c:1501: Test failed: D3DXCreateTextureFromFileInMemory returned 0x80004001, expected 0.
fixme:d3dx:D3DXLoadSurfaceFromMemory Format conversion missing 0x33545844 -> 0x33545844
fixme:d3dx:D3DXCreateTextureFromFileInMemoryEx Texture filtering failed.
texture.c:1529: Test failed: D3DXCreateTextureFromFileInMemory returned 0x80004001, expected 0.
fixme:d3dx:D3DXCreateCubeTextureFromFileInMemoryEx Generation of mipmaps for compressed pixel formats is not supported yet.
texture.c:1732: Test marked todo: GetLevelCount returned 1, expected 3
texture.c:1788: Test marked todo: D3DXCreateVolumeTextureFromFileInMemory returned 0x8876086c, expected 0
texture.c:1862: Test succeeded inside todo block: D3DXSaveTextureToFileInMemory returned 0, expected 0
texture.c:1868: Test succeeded inside todo block: D3DXGetImageInfoFromFileInMemory returned 0, expected 0
texture.c:1870: Test succeeded inside todo block: Got width 256, expected 256
texture.c:1871: Test succeeded inside todo block: Got height 256, expected 256
texture.c:1872: Test marked todo: Got miplevels 1, expected 9
texture.c:1873: Test succeeded inside todo block: Got resource type 0x3, expected 0x3
texture.c:1874: Test succeeded inside todo block: Got file format 0x4, expected 0x4
texture.c:1934: Test succeeded inside todo block: D3DXSaveTextureToFileInMemory returned 0, expected 0
texture.c:1940: Test succeeded inside todo block: D3DXGetImageInfoFromFileInMemory returned 0, expected 0
texture.c:1942: Test succeeded inside todo block: Got width 256, expected 256
texture.c:1943: Test succeeded inside todo block: Got height 256, expected 256
texture.c:1944: Test marked todo: Got miplevels 1, expected 9
texture.c:1945: Test marked todo: Got resource type 0x3, expected 0x5
texture.c:1946: Test succeeded inside todo block: Got file format 0x4, expected 0x4
fixme:d3dx:D3DXSaveTextureToFileInMemory Volume textures supported only to dds file format
texture.c:1963: Test marked todo: D3DXSaveTextureToFileInMemory returned 0x80004001, expected 0
texture.c:1981: Test succeeded inside todo block: D3DXSaveTextureToFileInMemory returned 0, expected 0
texture.c:1987: Test succeeded inside todo block: D3DXGetImageInfoFromFileInMemory returned 0, expected 0
texture.c:1989: Test succeeded inside todo block: Got width 256, expected 256
texture.c:1990: Test succeeded inside todo block: Got height 256, expected 256
texture.c:1991: Test succeeded inside todo block: Got depth 256, expected 256
texture.c:1992: Test succeeded inside todo block: Got miplevels 9, expected 9
texture.c:1993: Test succeeded inside todo block: Got resource type 0x4, expected 0x4
texture.c:1994: Test succeeded inside todo block: Got file format 0x4, expected 0x4
texture: 744 tests executed (8 marked as todo, 21 failures), 4 skipped.

Wineskin Command Line Wine Test
——
Adding DXTN compression support will improve the result. For now I made a stub for the conversion function
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.winehq.org/pipermail/wine-patches/attachments/20150607/3328783e/attachment-0002.html>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: 0001-d3dx9_36-Implement_save_volume.txt
URL: <http://www.winehq.org/pipermail/wine-patches/attachments/20150607/3328783e/attachment-0001.txt>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.winehq.org/pipermail/wine-patches/attachments/20150607/3328783e/attachment-0003.html>


More information about the wine-patches mailing list