[Bug 38274] White water in Heroes VI

wine-bugs at winehq.org wine-bugs at winehq.org
Tue Apr 28 04:51:03 CDT 2015


https://bugs.winehq.org/show_bug.cgi?id=38274

--- Comment #7 from Stefan Dösinger <stefan at codeweavers.com> ---
(In reply to Sergey Isakov from comment #5)
> > Yes, it is possible that this game needs compressed volumes. What are its
> > minimum requirements? Is it supposed to work on a Geforce 7 card?
> No this game installed on computer with Radeon card
I meant if the game is supposed to work when you run it with a Geforce 7 GPU.
According to
http://www.game-debate.com/games/index.php?g_id=742&game=Heroes%20of%20Might%20and%20Magic%20VI
it needs at least a geforce 8, which is d3d10 capable. This card may have DXTn
volume support.

> Strange but the testing utility DxTex.exe from DirectxSDK is not working on
> this computer with any wine version, may be there is my mistake.
It's been a while since I looked at DxTex.exe, but if my memory serves me right
it tries to use ddraw blits to convert compress and decompress DXTn textures.
We don't implement this because the compression and decompression algorithms
are covered by U.S. patent 5956431. All we can do is pass the data to the
OpenGL implementation and let the GPU vendor deal with the patent.

There may also be other problems that prevent DxTex from working. A long time
ago it had problems with child window d3d rendering, and the ddraw version of
this utility had problems with our DDSCAPS_* handling when loading / saving
compressed textures. Child window d3d should work these days, and I don't know
if the version from the last dx sdk still uses ddraw.dll for handling .dds
files.

(In reply to Sergey Isakov from comment #6)
> I propose to make uncompress volume_textures before send
>         GL_EXTCALL(glTexImage3D(GL_TEXTURE_3D, volume->texture_level,
>                 srgb ? format->glGammaInternal : format->glInternal,
>                 volume->resource.width, volume->resource.height, volume->
>  resource.depth,
>                0, format->glFormat, format->glType, mem));
>        checkGLcall("glTexImage3D");
Patches are welcome. Properly integrating conversion like this is a challenge
of course. You can also try to re-order the 2D blocks into 3D blocks that make
GL_NV_texture_compression_vtc happy. The format conversion infrastructure in
utils.c is a good place to start, but you'll have to add the ability to limit
conversion to volumes.

-- 
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.


More information about the wine-bugs mailing list