Version française
Home     About     Download     Resources     Contact us    

This site is updated infrequently. For up-to-date information, please visit the new OCaml website at

Browse thread
[Caml-list] OpenGL
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: -- (:)
From: Brandon J. Van Every <vanevery@i...>
Subject: RE: [Caml-list] OpenGL
Sorry the following is acerbic.  I'm just trying to save you endless
wasted time.

Brian Hurt wrote:
> I'll admit to not having a lot of experience with OpenGL (or
> any other 3D
> rendering library), and have not given one thought to merging it with
> Ocaml.  But from the reports earlier in this thread, a direct
> mapping of
> the OpenGL interface into Ocaml runs into problems,
> especially in the more
> advanced functions.  Which is what lead me to question wether we were
> thinking inside a box.

You should first understand "the box."  Then you could tell me whether
3D engines that wrap up multiple APIs, such as The Nebula Device, are a
good solution to "the box."  I don't think talking to a C++ 3D engine
will be entirely a picnic, but it sounds better than implementing an
OCaml 3D engine from scratch.  I can count on a goon squad to keep
adding features and fixing bugs in The Nebula Device.  It's a large and
very well run project with a company contributing code.  What do you
have to offer by comparison, just scratching your head wondering about
3D API unification for the first time?  Nothing.  3D engines are a *lot*
of work.  You need a really really really REALLY compelling case before
Not Invented Here sounds like a good idea.  The C++ binding would have
to be pretty horrible before I'd say, screw it, start from scratch.

> I'd love to hear someone who's done real 3D work comparing
> and contrasting OpenGL and Java3D as approaches.

Crank up Google.  It has certainly been discussed by many parties.

If you want to save time, I will tell you the obvious: Java3D sucked,
that is why nobody took it seriously.  If it is starting to "not suck"
now, great, but I don't care.  Real 3D graphics guys have real 3D
graphics work to do with real APIs and engines that have proven their
commercial viability.  You point me at some major commercial app done in
Java3D, then I will change my tune.

> > Moreover, as OpenGL is available on a superset of the
> > platforms for which
> > Direct3D is available, what would be the advantage in using
> > Direct3D as a back end rather than OpenGL?
> Supposedly performance,

Nonsense.  Same HW, and lotsa those NVIDIA guys are ex-SGI folk.  The
drivers do not suck so bad that there's some huge difference between
DirectX and OpenGL.

The main disadvantage is that OpenGL 1.5 only has a shading language as
an ARB extension, not a required part of the API.  That will change with
OpenGL 2.0, but where is 2.0?  If you want a standardized, widely
deployed shader language, DirectX is way ahead of OpenGL.  I am not sure
how big the gap is now, as I don't currently care about shader languages
and haven't been keeping up.

The main disadvantage of DirectX 9 is it has no support for 64-bit
floating point.  I don't know why Microsoft doesn't get on with this
feature.  It would allow DirectX to move into the CAD and scientific
visualization markets and pave the way for finally putting OpenGL under
the table.  Not that I want / need that result, I just don't understand
why MS hasn't done it already.  Maybe it's the XBox politics, not
wanting to make DirectX on the PC get too far ahead of XBox.

Minor points: OpenGL is generally regarded as a cleaner, easier to
initialize API than DirectX.  OpenGL is C, DirectX is C++.  Either of
those is an advantage or disadvantage depending on who you're talking to
and the circumstances.

> but I've never seen hard numbers.

That means you haven't looked.  Start with for some
common benchmarks.  If you look carefully, you will not see any evidence
of either API being inherently faster than the other.  What you will
see, is that some apps were developed with greater OpenGL expertise, and
others with greater DirectX expertise.

Brandon Van Every               Seattle, WA

20% of the world is real.
80% is gobbledygook we make up inside our own heads.

Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (
Version: 6.0.643 / Virus Database: 411 - Release Date: 3/25/2004

To unsubscribe, mail Archives:
Bug reports: FAQ:
Beginner's list: