WarpMesaGL
Port to OS/2 PM of
by Brian Paul
Mesa is a 3D multiplatform graphics library with an API which is very
similar to that of OpenGL.
"WarpMesaGL" is current work name for port of original Mesa
3D Graphics Library .
The name "Mesa" in OS/2 is currently used for well-known spreadsheet
under name "Mesa Spreadsheet"or
"Mesa
2 Spreadsheet" and logo ,
so "WarpMesaGL" is used to eliminate misunderstanding.
Pirmary goal of this project is to use OpenGL 3D in
scientific and industrial CAD/CAM realtime applications.
Current state: vers. alpha minus 1.6
Original Mesa version: 3.3 beta
WarpMesaGL can work:
-
in single buffer mode WarpMesaGL via PM GPI and GpiMove/GpiLine/GpiSetPel
etc. , and so it is very slow
-
in double buffer mode WarpMesaGL as via PM GPI and GpiBitBlt
as via DIVE and DiveBlitImage
PM GPI will work at any videomode, but I can't test all of them (hmm, I
haven't seen CGA or mono Hercules with Warp ;-) . DIVE support
needs dive.dll as minimum, and may have problems in some videomodes
such as 32K colors. DIVE is a bit faster and PM GPI is a bit reliablier
Internal color representation is 24bit RGB in most cases and 32bit RGB
for Matrox drivers
sphere - Spheremap test.
|
AApoly test
|
Morph3D demo
|
Hardware support: there is no hardware support, but it
is possible. If you know how to implement it with existing videodrivers
or you are driver's developer, then mail to me.
Tested: primary - at Matrox G200 videocard with both Matrox and
SDD7.01 videodrivers,
non-regular - at S3-clones.
Current limitations:
-
WarpMesaGL works only in GLUT_RGB mode, index mode needs too much efforts
for all that palette's functions and you'll gain too poor results. GpiBitBlt
and DiveBlitImage with dithering is well enough.
-
GLUT support is only partial, and I am not sure that full support of GLUT
functions is really needed. We have PM, haven't we ?
-
DIVE yet doesn't care of window overlapping
-
GLU support is in the same dll, as GLUT
Near future plans (alpha minus 1.5):
-
built first PM programm with glut child window and so make GLUT more
usable
-
support windows overlapping for DIVE
Where to find it:
ftp.os2.spb.ru/pub/evg/WarpMesa-1.6
and
WWW page for WarpMesaGL
Comparison and small benchmark
of WarpMesaGL's and IBM's OpenGL in different videomodes.
Bencnmark TriSPD
Changes:
a-1.6
-
correct work in 24bit color internal mode (bug fixed)
-
tested for S3 adapters & drivers
-
more working samples
a-1.7a
-
work in 24bit color mode both under Matrox driver and SDD7 (DiveCaps.ulDepth
= 32 for Matrox and 24 for SDD7, I prefer 32bits per pixel
- the code for 32 bits is faster and straightforward )
a-1.7
-
support for 256 colors in PM GPI and DIVE
-
tested under SDD7
-
read/write span optimization
-
more working samples and documentation
Useful links:
port author info: Evgeny Kotsuba laser.nictl@relcom.ru
Page was updated: 28 Mar 2000