[Mesa-dev] Project ideas [was Re: Gallium3D and Glide]

Keith Whitwell keithw at vmware.com
Tue Mar 1 05:36:52 PST 2011


On Tue, 2011-03-01 at 13:18 +0100, Blaž Tomažič wrote:
> On Mon, 2011-02-28 at 16:39 -0800, Brian Paul wrote: 
> > On Mon, Feb 28, 2011 at 4:13 PM, Blaž Tomažič <blaz.tomazic at gmail.com> wrote:
> > > Hi Mesa developers,
> > >
> > > I am really interested in Gallium3D and I'm thinking about a project for
> > > my diploma (I think this is the same as bachelor's degree) on a computer
> > > university. I'm thinking about writing a Glide state tracker for
> > > Gallium3D. I know that Glide hasn't been used for a decade, but I think
> > > it would be relatively "easy" to implement an old 3D API and a great way
> > > to learn a part of Gallium3D on the way.
> > >
> > > Some old games (only Glide: Need for Speed 2; Glide and OpenGL: Unreal,
> > > Quake 2) used Glide API for rendering and Gallium3D could therefore
> > > accelerate them on newer hardware and more importantly, render them with
> > > nicer graphics instead of software rendering as is with some glide only
> > > games. I don't know if there were any Linux games, but Gallium3D works
> > > on Windows too if I'm not mistaken.
> > >
> > > So I have a few question for you:
> > >  - How hard and how much work would be involved in implementing such an
> > > API? (Any help on implementing it would be welcomed and appreciated of
> > > course)
> > >  - Are Glide to OpenGL wrappers a better solution because of changing
> > > nature of Gallium3D interface? (Personally I think they are, but I would
> > > like to work directly on Gallium)
> > >  - Do you think this project would fit well in Gallium3D or do you have
> > > any other/better proposals for a project including Gallium3D?
> > 
> > I don't mean to discourage you, but I this probably wouldn't be a very
> > good project.
> > 
> > The Glide API and 3dfx hardware is lacking in a number of areas,
> > particularly shaders.  Gallium was intended for newer hardware so it
> > wouldn't be a good fit for this older technology.
> > 
> > I'm sure there are other projects you could do related to
> > OpenGL/gallium if that's where your interest lies.  Other people on
> > this list might have some ideas.  I could probably come up with a few
> > otherwise.  What do you think?
> > 
> > -Brian
> 
> I know that Glide is an old technology and probably I should test this
> games if they even run on newer OSs. But still, Gallium supports OpenGL
> 1.x functionality and Glide is a subset of it. Fixed-pipe  functionality
> is easily implemented with shaders so I think that it could be
> implemented.
> I agree that some other project using current technology would be much
> better. Even if Glide would be implemented for Gallium it would be of
> almost no use and there would be almost no purpose maintaining it.
> Nevertheless, I thought it would be a great way to learn Gallium and in
> the process contribute something small to the community. And then, when
> I would know more about Gallium, contribute something more useful maybe.
> 
> Then Glide is not a good idea but I don't have any other. I'm open for
> any suggestions you and other list members might have then.

Create an automated bug-finder for gallium drivers.  

Step one: create a "split and compare" gallium driver (perhaps based on
failover) which runs the same set of commands on two different gallium
drivers (eg softpipe and r600g).  At each frame, compare the two images
and see if there are differences.

Step two: as above, but save the command stream each frame so that you
can bisect into it to find the actual draw call which caused the
failure.

Keith



More information about the mesa-dev mailing list