[Mesa-dev] Gallium3D and Glide

Roland Scheidegger sroland at vmware.com
Tue Mar 1 09:51:59 PST 2011


Am 01.03.2011 16:23, schrieb Brian Paul:
> On 03/01/2011 04:18 AM, 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.
> 
> The issue isn't converting fixed-function GL rendering (e.g. 1.x 
> functionality) into shaders, it's converting Gallium shaders into 
> Glide/3dfx fixed-function.

But he was only talking about implementing a glide state tracker hence I
can't see why he'd need to do that.
So I think conceptually this would work just fine.
Still, it might not be something terribly useful. For one, if you'd want
to run this with windows, while gallium is OS-independent, the hw
drivers surely are not. Hence you'd also need to write a d3d or ogl
backend driver for gallium if you'd want it to run hw-accelerated with
windows. Also, for this really old glide api, opengl wrappers are
probably just fine - noone is going to write new glide apps anyway.

Roland

> 
> 
>> 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.
> 
> Keith's debugger/diff driver is a great idea.
> 
> -Brian
> 
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev



More information about the mesa-dev mailing list