On Wed, Aug 20, 2003 at 04:34:04PM -0700, Jon Smirl wrote:
> I'm working on a similar system for Linux. My plan is to make OpenGL the base
> API. I'm doing this via the Embedded Mesa project. Right now Embedded Mesa is
> up on all Radeons and Matrox. I'm working on Rage support currently. Bringing
> up new cards isn't too hard since you can use the XFree drivers with minimal
> Once I get OpenGL up the plan is to write the 3D window manager. Apps draw into
> pbuffers and then are composited by the window manager. I've got to make a few
> minor changes to the DRI drivers to make pbuffers work.
> Next step is to get a rootless X working on a per window basis using the OpenGL
> API instead of XAA. XFree's 2D subsystem and window manager is not used.
> The idea behind making OpenGL (plus a few GLX like calls) the base API is to
> provide an easy target for our closed source friends at NVidia and ATI. OpenGL
> is also a high level API with lots of room for taking advantage of future
> hardware improvements. Non-3D hardware is handled via software Mesa.
> This is a different philosophy than DirectFB, I don't want any low level
> framebuffer calls to exist. Keeping things at the OpenGL level makes a remote
> protocol easier and allows things like scalable windows. You can always
> allocate a pbuffer and bit twiddle it if you want.
> Of course this is a lot of work, anyone want to help?
cool! i had exactly the same idea, i'am coding an "engine" to do that,
but i am not yet in the video part (opengl), currently i'm working on:
- loadable objects (at runtime) for 5 different subsystems:
+ video (via embedded mesa, or in the future someone port it to sdl,etc.)
+ audio (via openal [via alsa] -- 3d audio for 3d video coordinates)
+ input (via new 2.6 input layer)
+ system configuration (via sysfs -- that's why edid on sysfs is instrumental ;)
+ network (via libc)
- engine control:
+ every subsystem exists in a thread.
+ sync between subsystems.
+ visual objects management (aka window manager).
Maybe we can use this "engine" to do your 3d video stuff...
I'm tired of seeing macosx/longhorn capabilities and none for linux.