Mailing list for all users of the OCaml language and system.
 help / color / mirror / Atom feed
From: "Brandon J. Van Every" <vanevery@indiegamedesign.com>
To: <caml-list@inria.fr>
Subject: RE: [Caml-list] OpenGL
Date: Fri, 9 Apr 2004 21:32:37 -0700	[thread overview]
Message-ID: <OOEALCJCKEBJBIJHCNJDGEMPHAAB.vanevery@indiegamedesign.com> (raw)
In-Reply-To: <Pine.LNX.4.44.0404091101220.25700-100000@localhost.localdomain>

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 www.tomshardware.com 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.


Cheers,                         www.indiegamedesign.com
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 (http://www.grisoft.com).
Version: 6.0.643 / Virus Database: 411 - Release Date: 3/25/2004

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


  reply	other threads:[~2004-04-10  4:24 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-04-08 15:11 Jon Harrop
2004-04-07 16:07 ` Issac Trotts
2004-04-08 16:35   ` Jon Harrop
2004-04-08 20:19     ` Issac Trotts
2004-04-08 20:46       ` [Caml-list] Re: Triangle (was: OpenGL) Christophe TROESTLER
2004-04-08 22:25       ` [Caml-list] OpenGL Jon Harrop
2004-04-09  1:45         ` Brian Hurt
2004-04-09  2:57           ` Brandon J. Van Every
2004-04-09 10:57           ` Jon Harrop
2004-04-09 16:12             ` Brian Hurt
2004-04-10  4:32               ` Brandon J. Van Every [this message]
2004-04-10  4:59                 ` Kenneth Knowles
2004-04-10  8:17                 ` Nicolas Cannasse
2004-04-11  6:20                 ` Brian Hurt
2004-04-11  8:10                   ` skaller
2004-04-11  9:23                   ` Brandon J. Van Every
2004-04-11 12:08                     ` Jon Harrop
2004-04-11 12:01                   ` Jon Harrop
2004-04-09 12:52         ` Issac Trotts
2004-04-08 16:37   ` Anil Madhavapeddy

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=OOEALCJCKEBJBIJHCNJDGEMPHAAB.vanevery@indiegamedesign.com \
    --to=vanevery@indiegamedesign.com \
    --cc=caml-list@inria.fr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox