Hallo,
with the following 2 patches the menu in "The Elder Scrolls III: Tribunal Morrowind Expansion Pack" version 1.4.1313 german only shows white blocks instead of the menuitems as before.
When IDirect3DImpl_CheckDeviceFormat reports that D3DFMT_DXT3 isn't supported the menuitems will draw correct.
When IDirect3DImpl_CheckDeviceFormat reports that D3DFMT_DXT3 is supported then white blocks appear instead of the menuitems and glCompressedTexImage2D returns the error code 0x502 (GL_INVALID_OPERATION).
Using NVIDIA drivers 1.0-4349 and updating to 1.0-4496 doesn't solve the problem.
Is it the OpenGL implementation which is buggy or the way how wine uses it?
I have attached a log of "wine -debugmsg +loaddll,+d3d_surface Morrowind.exe". The binary is a no-cd version, but the original one behaves the same.
Some parts from my config: ,----- | ... | | [Version] | "Windows" = "win98" | ;"DOS" = "6.22" | | [x11drv] | "AllocSystemColors" = "100" | "PrivateColorMap" = "N" | "UseDGA" = "N" | "UseXShm" = "Y" | "UseXVidMode" = "Y" | "UseTakeFocus" = "Y" | "DXGrab" = "N" | "DesktopDoubleBuffered" = "Y" | "TextCP" = "0" | "Synchronous" = "N" | | [WinMM] | "Drivers" = "wineoss.drv" | ; ... | | ;; Debug, dsound, network are empty | | [DllOverrides] | "*" = "builtin, native" | "msvideo" = "native, builtin" | "msvfw32" = "native, builtin" | "ole32" = "native, builtin" | "oleaut32" = "native, builtin" | "quartz" = "native, builtin" | "rpcrt4" = "native, builtin" | | ... `-----
Will send more details if someone wish.
Michael
When IDirect3DImpl_CheckDeviceFormat reports that D3DFMT_DXT3 is supported then white blocks appear instead of the menuitems and glCompressedTexImage2D returns the error code 0x502 (GL_INVALID_OPERATION).
Can you paste here the output of 'glxinfo' ? If GLX does not support S3TC texture compression, it should not return that 'D3DFMT_DXT3' is supported (at least not before adding software decoding code :-) ).
Lionel
Lionel Ulmer lionel.ulmer@free.fr writes:
When IDirect3DImpl_CheckDeviceFormat reports that D3DFMT_DXT3 is supported then white blocks appear instead of the menuitems and glCompressedTexImage2D returns the error code 0x502 (GL_INVALID_OPERATION).
Can you paste here the output of 'glxinfo' ? If GLX does not support S3TC texture compression, it should not return that 'D3DFMT_DXT3' is supported (at least not before adding software decoding code :-) ).
Here is the output of glxinfo and also of xdpyinfo.
Michael
MichaelGuennewig@gmx.de (Michael Günnewig) writes:
Hallo,
with the following 2 patches the menu in "The Elder Scrolls III: Tribunal Morrowind Expansion Pack" version 1.4.1313 german only shows white blocks instead of the menuitems as before.
Have forgotten to mention the patches, so here they are:
2003-09-02 * dlls/d3d8/d3d8_main.c, dlls/d3d8/directx.c: Jason Edmeades us@the-edmeades.demon.co.uk Use a dummy GL context if one is not available when GetDeviceCaps is called. Remove the compiler warnings introduced in the last DXTn patch.
2003-08-15 * dlls/d3d8/d3d8_main.c, dlls/d3d8/d3d8_private.h, dlls/d3d8/device.c, dlls/d3d8/directx.c, dlls/d3d8/utils.c: Jason Edmeades us@the-edmeades.demon.co.uk DXT1/3/5 support was broken, but unnoticeable since we also indicated it wasn't supported.
The patches themself seem to be okay only that the new if-statement in IDirect3D8Impl_CheckDeviceFormat should be #ifdef GL_EXT_texture_compression_s3tc because if it's not defined we don't have the support as you can see in IDirect3DSurface8Impl_LoadTexture (surface.c:468). So it will lead to white boxes on a system, when at compile-time the constant isn't defined and the system says it support it. But this isn't the case for me because the log show that it definitly calls glCompressedTexImage2D.
Michael