[osg-users] [Fwd: Mesa and gldirect]
jean-sebastien.guay at cm-labs.com
Mon Mar 23 13:03:50 PDT 2009
> Honestly, I think this will be counterproductive. It will only give
> companies an excuse to neglect OpenGL support further or to drop it
> completely ("You can use the emulation!"). The latter would be
> disastrous for all non-Microsoft platforms.
Since the OpenGL over Direct3D layer will only work on Microsoft
platforms for obvious reasons, I don't see how this will affect other
platforms at all. If some developer wants to do 3D on Linux, they have
to use OpenGL.
Basically, this is a follow-up to an earlier discussion (a rather long
and heated one as I recall) saying that there were two ways to improve
the OSG experience on Windows platforms or for ATI/AMD hardware, where
OpenGL drivers are pretty bad compared to nVidia:
1. Demand better OpenGL support in drivers (which may be hard and does
not depend on us, i.e. we can ask but we have no control over the result)
2. Create a technological solution, of which an OpenGL over Direct3D
layer is one example.
Of course, it would be much preferable if vendors would, out of their
own volition, improve OpenGL driver quality on Windows. However, since
most games run on Direct3D, there is little incentive for them to do
this. In most markets where OpenGL support is important, the software is
already cross-platform, and thus moving to Linux is less of an issue.
This means that the situation with OpenGL driver quality on Windows is
likely to get worse as developers who depend on OpenGL move to other
platforms and stop demanding good OpenGL driver quality.
> I fail to see the benefits of such move - why to run OpenGL on top of
> Direct3D? Is there *any* usable hardware that has only D3D drivers and
> does not support OpenGL?
Perhaps not, but for most hardware which has Direct3D support, the
Direct3D driver quality is higher than the OpenGL driver quality on
Windows (either in speed, number of serious/show-stopper bugs, etc.).
There's a big difference between supporting OpenGL and supporting it
*well*, and since there are no enforced conformance tests, vendors can
support it only partly if they want...
Basically, I'm trying to find a way so that OpenGL apps can run well on
Windows, independent of what vendor made the graphics card. Since there
is a large pool of Direct3D applications on Windows, making OpenGL calls
go through Direct3D before getting to the video card driver might be one
way of doing that.
Of course, this is all theoretical, we can't know what the trade-offs
are until we get a prototype running. And in any case, I'm just relaying
info I got, seeing as this discussion was raised before. If the majority
of people don't see the benefit, nothing will come of it and it'll just
die, and we'll just go on as we have in the past.
Jean-Sebastien Guay jean-sebastien.guay at cm-labs.com
More information about the osg-users