On Tue, 22 Feb 2000, James A Simmons wrote:

> 
> > There is a GGI Glide target, but it's 2D.  What's wanted is accellerated
> > hardware 3D..  Something that CAN render 3 screens of Quake at a decent
> > FPS.  =>
> 
> I agree. So where do we start? 

1: Make the basic LibGGI Glide target do everything it can do within the
LibGGI control scope.  Map all regions into DirectBuffers, support the
ResourceAcquire() family of functions on all exposed resources, etc.  I
think that Marcus has already done a lot of this.  This stuff will be
needed if LibGGI and its extensions are to be able to concurrently access
the same Glide instance properly.

2: Write a GGIMesa Glide targfet which does nothing except load itself
properly when it is detected that LibGGI is using a Glide target. Examples
of GGIMesa targets which do this (fbdev and genkgi) are already available
in the current GGIMesa sources.

3: Port the existing FXMesa sources over to the Glide GGIMesa target.
Almost all the code should be unchanged, so although there is a lot of
FXMesa source code I think that the changes needed to turn it into a
GGIMesa Glide target should be quite minimal.

> First voodoo cards like many cards are
> triangle bases. Any triangle support? 

        There are triangle primitives supported in LibGGI2D, but LibGGI2D
has not been worked on as far as target extension is concerned.  GGIMesa
is not yet perfect in this regard, but it is a LOT farther along.

> The next thing is how to program
> the libggi target to use things like textures, alpha blending and depth
> buffering.  

        I think that most of those type of features will be mapped into
resources or directbuffers by the libggi target code, but the LibGGI API
itself does not handle such things:

* Texturing == LibGGI2D and GGIMesa
* Alpha == LibGGI2D, GGIMesa and possibly LibGWT
* Depth buffering == GGIMesa

Jon

---
'Cloning and the reprogramming of DNA is the first serious step in 
becoming one with God.'
        - Scientist G. Richard Seed

Reply via email to