93 lines
2.6 KiB
Plaintext
93 lines
2.6 KiB
Plaintext
|
|
Mesa / BeOS Information
|
|
|
|
|
|
|
|
Introduction
|
|
|
|
Mesa 3.1 features a new driver for the BeOS. The new driver implements
|
|
a clone of the BGLView class. This class, derived from BView, allows
|
|
OpenGL rendering into a BeOS window.
|
|
|
|
Any application which uses the BGLView should be able to use Mesa
|
|
instead of Be's OpenGL without changing any code.
|
|
|
|
Since Be's OpenGL implementation (as of R4) is basically just the
|
|
SGI sample implementation, it's pretty slow. You'll see that Mesa
|
|
is considerably faster.
|
|
|
|
|
|
|
|
Source Code
|
|
|
|
The source code for the driver is in Mesa-3.1/src/BeOS/GLView.cpp
|
|
It's not 100% finished at this time but many GLUT-based demos are
|
|
working. Specifically, color index mode isn't implemented at all.
|
|
No optimizations have been made at this time. Any volunteers?
|
|
|
|
|
|
|
|
Compiling
|
|
|
|
Simply cd to the Mesa-3.x directory and type "make beos-r4".
|
|
When it finishes the libMesaGL.so and libMesaGLU.so libraries for
|
|
BeOS will be in the Mesa-3.x/lib/ directory.
|
|
|
|
|
|
|
|
Example Programs
|
|
|
|
Look in the Mesa-3.x/BeOS/ directory for one or two BGLView demo
|
|
programs. They should have been compiled along with the Mesa
|
|
library.
|
|
|
|
|
|
|
|
GLUT
|
|
|
|
It seems that you have to recompile GLUT with libMesaGL.so instead
|
|
of libGL.so in order for everything to work. I'm not sure why.
|
|
|
|
In any case, you'll have to download and compile GLUT for BeOS and
|
|
put libglut.so in the Mesa-3.x/lib/ directory before you can compile
|
|
the demos/, samples/ and book/ programs.
|
|
|
|
GLUT for BeOS can be found at
|
|
http://home.beoscentral.com/jehamby/Glut-3.5-x86.zip
|
|
|
|
This is a special version of GLUT adapted for the BeOS. I don't
|
|
believe Mark Kilgard's normal GLUT distribution includes BeOS
|
|
support.
|
|
|
|
|
|
|
|
Special Features
|
|
|
|
Mesa's implementation of the BGLView class has an extra member
|
|
function: CopySubBufferMESA(). It basically works like SwapBuffers()
|
|
but it only copies a sub region from the back buffer to the front
|
|
buffer. This is a useful optimization for some applications.
|
|
If you use this method in your code be sure that you check at runtime
|
|
that you're actually using Mesa (with glGetString) so you don't
|
|
cause a fatal error when running with Be's OpenGL.
|
|
|
|
|
|
|
|
Old BeOS Driver
|
|
|
|
Mesa 2.6 had an earlier BeOS driver. It was based on Mesa's Off-screen
|
|
rendering interface, not BGLView. If you're interested in the older
|
|
driver you should get Mesa 2.6.
|
|
|
|
|
|
|
|
BeOS and Glide
|
|
|
|
Mesa 3.0 supported the 3Dfx/Glide library on Beos. Download Mesa 3.0
|
|
if interested. Ideally, the 3Dfx/Glide support should be updated to
|
|
work with the new Mesa 3.1 BGLView implementation.
|
|
|
|
|
|
----------------------------------------------------------------------
|
|
$Id: README.BEOS,v 1.4 1999/02/11 03:52:24 brianp Exp $
|