[Bug 39057] Support for Indexed Vertex Blending

wine-bugs at winehq.org wine-bugs at winehq.org
Mon Sep 18 06:20:55 CDT 2017


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

Paul Gofman <gofmanp at gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |gofmanp at gmail.com

--- Comment #88 from Paul Gofman <gofmanp at gmail.com> ---
(In reply to David Gámiz Jiménez from comment #84)
> Hi community,
> 
> And thanks for the efforts to implement vertex skinning animations. Various
> LithTech engine games had this feature and issues in wine.
> 
> I has checked in Die Hard Nakatomi Plaza, LithTech engine 2.x. With
> wine-staging 2.16, that include improve patch for this feature. But this it
> not show the character models correctly. I has added 3 screen-shots, from
> the intro cut-scene(full game last official patch). 
> 
> You can check with a demo version:
> https://www.fileplanet.com/84666/80000/fileinfo/Die-Hard:-Nakatomi-Plaza-Demo
> 
> Thanks in advance,
> 
> David Gámiz Jiménez

I've tested the demo and was able to reproduce the glitch, it can be seen right
on the first cut scene after starting new game.

The glitch is not there with the original patch attached to this bug. The
relevant difference is that original patch always uses maximum supported
indexes regardless of software or hardware vertex processing mode selected
(which does not look like correct behaviour either), while Staging version
supports max index of 7 in HWVP and 255 in SWVP mode only. If to make it use
SWVP mode path only, the glitch goes away (* see note below).

The game uses d3d8 interface and creates mixed vertex processing (MVP) device.
The way of setting SWVP in MVP for d3d8 is done through
D3DRS_SOFTWAREVERTEXPROCESSING render state, unlike d3d9
SetSoftwareVertexProcessing call (which is not there for d3d8). This render
state is not taken into account, but this is not the reason for this glitch
actually: the demo never sets this state. I did not test how many indexes are
de facto supported in MVP mode on Windows, but can guess that it might be
different from what is reported through capabilities.

* The core GL profiles must not be used for indexed vertex blending in Staging
to work, that is, HKEY_CURRENT_USER\Software\Wine\Direct3D\MaxVersionGL
registry entry must not be set or set to something below 3.2. This is due to
glVertex... and similar functions which are used in 'software emulation'
codepath are not supported on opengl 3.2+ core profiles.

-- 
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