Advertize software emulated Direct3D features?

H. Verbeet hverbeet at gmail.com
Fri Apr 27 02:02:23 CDT 2007


On 27/04/07, Stefan Dösinger <stefan at codeweavers.com> wrote:
> 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).
>
I'd rather not report caps we don't properly support, for the reasons
you just mentioned. As for the pipeline replacement, I don't really
see the issue. There are lots of things that older cards don't
support. If it provides advantages for newer cards, I don't think that
should be held back because older cards don't support it.



More information about the wine-devel mailing list