On Wednesday 23 August 2006 14:32, Timothy Miller wrote: > On 8/22/06, Lourens Veen <[EMAIL PROTECTED]> wrote: > > > > What abstraction should the kernel offer to userspace? > > > > A graphics device is a collection of rectangular grids of a certain > > size. Each cell on a grid has an associated colour which is encoded > > in some way. There are various operations that change these > > colours. At any point in time, one of the grids is designated as > > primary grid. > > Very nice. From the API, you should be able to allocate a virtual > console, which is a viewable surface. Additionally, you can allocate > off-screen surfaces. Everything would be referenced via an opaque > resource handle. > > > Perhaps that's not general enough. For example, with DOT3 > > bumpmapping, a grid cell doesn't store a colour, it stores a normal > > vector. Now we're suddenly approaching the realm of GPGPU. How far > > can we take this? How far do we want to take it? > > That's a good question. We're going to have to build this API in > layers. First, a way to set modes and deal with interrupts. Then a > 2D API suitable for X11 (with compositing). Then a low-level 3D API. > Then high-level 3D. Then programmable shader language. It'll be as > sophisticated as DX10 before we're done.
Actually, the only difference between a grid storing colours and one storing something else is that only a grid storing colours can be the primary grid. If the hardware doesn't support the colour format then it can be converted automatically, in software, or using whatever hardware support there is. But you can not automatically convert from a 3-vector to a colour. Everything else is just more data formats and more advanced (possibly custom, for programmeable shaders) operations. Actually, there should also be grids storing text. If they are made primary, the system could switch to text mode, or render it graphically using a built-in console font, depending on hardware support. In other words, support for text mode would be a form of hardware acceleration. Lourens
pgpkHJ77DyyeL.pgp
Description: PGP signature
_______________________________________________ Open-graphics mailing list [email protected] http://lists.duskglow.com/mailman/listinfo/open-graphics List service provided by Duskglow Consulting, LLC (www.duskglow.com)
