Advertize software emulated Direct3D features?

Stefan Dösinger stefan at codeweavers.com
Thu Apr 26 19:32:11 CDT 2007


I am working on vertex blending support for WineD3D. First I implemented it 
using GL_ARB_vertex_blend in hardware, an extension that is unfortunately 
only supported by ati cards, and not nvidia. So I took Frank Richter's 
started software emulation for vertex blending, with that it works 
everywhere.

The question is wether we should report support for this feature in our d3d 
caps. Because it is software emulated it forces wined3d into the 
drawStridedSlow path which is, well, slow. Enabling this may cause a game to 
choose this slower render path over something else, like vertex shaders. On 
the other hand it can get applications run that wouldn't work without this 
feature.

For vertex blending it doesn't matter much. Its hardly used, and all games 
using it provide a vertex shader path too and prefer it(exception are the dx 
sdk demos). The other alternative the apps have is to either disable the 
feature entirely, thus have lower graphics quality, or calculate it 
themselves, which won't be slower than wined3d doing it. So I think we should 
advertize vertex blending, but the general question remains.

What do you think?

PS: Ideally we'd have a vertex pipeline replacement in form of a vertex 
shader, but that wouldn't invalidate the point of this since not all cards 
support vertex shaders. (And I personally dislike the idea of a pipeline 
replacement for this reason).
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : http://www.winehq.org/pipermail/wine-devel/attachments/20070427/7823c5b0/attachment.pgp


More information about the wine-devel mailing list