OpenML, SDL, OpenAL, DirectX, OpenGL

Hi,

I am just starting to learn Media API’s for Linux and other OS. I
wanted to know which API to use.

I searched the internet for a couple of hours and could not find any
information that can compare these API’s.

What is the impact of OpenML to other existing API’s.

James.

Hi,

I am just starting to learn Media API’s for Linux and other OS. I
wanted to know which API to use.

What do you want do do?

I searched the internet for a couple of hours and could not find any
information that can compare these API’s.

I don’t know of any single place where you’d find something like that,
but here’s some basic info, along with common opinions:

OpenAL:	3D audio "rendering". OpenGL style API, which is
	implemented on the most popular platforms. (Don't
	know what people in general think, and I don't use
	it myself.)

OpenGL:	Pretty nice, and available on pretty much anything
	that can do 3D. (If nothing else, there's at least
	software Mesa.) Many prefer this to Direct3D not
	only because it's portable, but also because they
	find the Direct3D API messy and constantly changing.
	Drivers for this API are often slower than those for
	DirectX, but

Direct3D:
	Probably the most popular 3D API on Windows - but
	be warned; you'll probably never see it running on
	anything but Windows! It has two "modes"; immediate
	and retained. The former is lower level than OpenGL,
	and is basically a rasterizing API for 3D engines.
	Immediate mode is higher level than OpenGL, dog
	slow (or so they say...), and *is* a 3D engine,
	more than it is an API around which you would build
	one. Drivers for this API are often faster and more
	up to date than OpenGL drivers for the same
	hardware, especially for low end cards.

DirectDraw:
	The 2D rendering part of DirectX. Supports setting up
	fullscreen video modes and direct access windows, and
	accelerated blits, including color key blits. Alpha
	blending is not supported before DirectX 8.0. It's a
	very, very low level API, and doesn't wrap the
	differences between windowed and fullscreen mode,
	back buffer handling and other "messy" stuff.

Glide:	AFAIK, a low level rasterizing API. It's implemented
	only by 3dfx drivers (and some more or less dodgy
	wrappers...), but used to deliver superior
	performance and control, compared to OpenGL and
	Direct3D. IMHO, forget about this one, unless you're
	going to build custom arcade machines using 3dfx
	hardware or something...

OpenML:	Cover's everything, looks nice, but where's the code?

SDL:	Somewhat like OpenML in theory, but much simler,
	and much more *real*! It wraps various other APIs
	(it's not a driver framework) and handles input
	(keyboard, joystick, mouse etc), audio output, video
	output, threads and more. Can set up display contexts
	for OpenGL rendering. It still has some minor issues,
	but most of them are totally irrelevant to games.
	Never heard of a user not liking this one... :-)

What is the impact of OpenML to other existing API’s.

AFAIK, none whatsoever, so far.

Looks great in theory, though; the standard is open, and covers pretty
much every aspect of audio, video, graphics and other multimedia, and
even supports proper synchronization of all kinds of devices. (Meanwhile,
most drivers can’t even do retrace sync’ed pageflipping… heh)

Anyway, I’m sticking with SDL + OpenGL for now, and I don’t expect that
to change for a good while. (By the time SDL 1.3 gets usable, there might
be no reason whatsoever to use other APIs. :slight_smile:

//David Olofson — Programmer, Reologica Instruments AB

.- M A I A -------------------------------------------------.
| Multimedia Application Integration Architecture |
| A Free/Open Source Plugin API for Professional Multimedia |
----------------------------> http://www.linuxdj.com/maia -' .- David Olofson -------------------------------------------. | Audio Hacker - Open Source Advocate - Singer - Songwriter |-------------------------------------> http://olofson.net -'On Friday 05 October 2001 22:43, James Monteath wrote:

Starting with DX8, Direct3D and DirectDraw are now one system called
DirectXGraphics. There’s also no longer an immediate and retained mode.
There is only one mode now, and its pretty much closest to retained mode.
Anything 2D must be done with D3D calls.Basically for 2D you would create a
"flat" rectangle and texture map your graphic onto it.

– Anthony> ----- Original Message -----

From: david.olofson@reologica.se (David Olofson)
To:
Sent: Friday, October 05, 2001 6:47 PM
Subject: Re: [SDL] OpenML, SDL, OpenAL, DirectX, OpenGL

Direct3D:
Probably the most popular 3D API on Windows - but
be warned; you’ll probably never see it running on
anything but Windows! It has two “modes”; immediate
and retained. The former is lower level than OpenGL,
and is basically a rasterizing API for 3D engines.
Immediate mode is higher level than OpenGL, dog
slow (or so they say…), and is a 3D engine,
more than it is an API around which you would build
one. Drivers for this API are often faster and more
up to date than OpenGL drivers for the same
hardware, especially for low end cards.

DirectDraw:
The 2D rendering part of DirectX. Supports setting up
fullscreen video modes and direct access windows, and
accelerated blits, including color key blits. Alpha
blending is not supported before DirectX 8.0. It’s a
very, very low level API, and doesn’t wrap the
differences between windowed and fullscreen mode,
back buffer handling and other “messy” stuff.

FYI - Isn’t D3D just immediate mode now? - retained mode was basically a
scenegraph API that was dropped??

Anyway, I prefer SDL/OpenGL myself, since Linux is superior to WinBlows…

C/R Anthony Thomasel wrote in message
news:mailman.1002343922.12627.sdl at libsdl.org

Starting with DX8, Direct3D and DirectDraw are now one system called
DirectXGraphics. There’s also no longer an immediate and retained mode.
There is only one mode now, and its pretty much closest to retained mode.
Anything 2D must be done with D3D calls.Basically for 2D you would create
a> “flat” rectangle and texture map your graphic onto it.

– Anthony

----- Original Message -----
From: “David Olofson” <david.olofson at reologica.se>
To:
Sent: Friday, October 05, 2001 6:47 PM
Subject: Re: [SDL] OpenML, SDL, OpenAL, DirectX, OpenGL

Direct3D:
Probably the most popular 3D API on Windows - but
be warned; you’ll probably never see it running on
anything but Windows! It has two “modes”; immediate
and retained. The former is lower level than OpenGL,
and is basically a rasterizing API for 3D engines.
Immediate mode is higher level than OpenGL, dog
slow (or so they say…), and is a 3D engine,
more than it is an API around which you would build
one. Drivers for this API are often faster and more
up to date than OpenGL drivers for the same
hardware, especially for low end cards.

DirectDraw:
The 2D rendering part of DirectX. Supports setting up
fullscreen video modes and direct access windows, and
accelerated blits, including color key blits. Alpha
blending is not supported before DirectX 8.0. It’s a
very, very low level API, and doesn’t wrap the
differences between windowed and fullscreen mode,
back buffer handling and other “messy” stuff.

Hiya,

BC> FYI - Isn’t D3D just immediate mode now? - retained mode was basically a
BC> scenegraph API that was dropped??

FYI ;), yes, it’s just immediate mode now.

BC> Anyway, I prefer SDL/OpenGL myself, since Linux is superior to WinBlows…

Thank you for your input, I will delete this operating system now
which has many more users, I’ll forget about the support - and I will
also start using a server OS instead of a desktop OS because that’s
the kind of zany guy I am!

WTF is it with you people? Will you stop giving out your opinions
about how Linux is better or how Windows is better? If you want to
use it, use it. If you don’t, don’t. JUST SHUT THE HELL UP ABOUT IT!
This is NOT the damned place for it and I, for one, am getting sick
of it!

Thank you for your time. :stuck_out_tongue:

Neil.

WTF is it with you people? Will you stop giving out your opinions
about how Linux is better or how Windows is better? If you want to
use it, use it. If you don’t, don’t. JUST SHUT THE HELL UP ABOUT IT!
This is NOT the damned place for it and I, for one, am getting sick
of it!

Can I move that we not have this argument here?

Not that I disagree, but I’d like to preemptively halt the flood of flame
mail that I will no doubt be seeing shortly.

–ryan.

Hi,

This is NOT the damned place for it and I, for one, am getting sick
of it!

RCG> Can I move that we not have this argument here?

That’s what I said. :wink:

That wasn’t aimed specifically at Bob Cober, but I am truly getting
sick of the completely off-topic mail about OS’ here. This is not the
place for such discussions, this is for discussing SDL.

We are all programmers here and I’d hope we have our own reasons for
running our own OS’. Can we stop this incessant OS bashing and discuss
what this mailing list is actually set up for?

If I want to run Linux, let me. BeOS? Let me. Windows? Let me. Keep
your own preference to yourself because the OS you use is a personal
choice.

RCG> Not that I disagree, but I’d like to preemptively halt the flood of flame
RCG> mail that I will no doubt be seeing shortly.

I’m kind of hoping most people are with me in that they don’t want to
see this completely pointless “Linux is great!” or “Windows is the
best!” messages. I’ve been on the list for quite a few months now,
replying when I feel I can help, but this absolute crap that keeps
flooding into my inbox is completely pointless.

Neil.

I agree with you both. It was not my intention to ignite this. SDL is the
purpose of this newsgroup, and I will refrain from using the W or L words
again in any post.

Bob

Neil Griffiths <n.griffiths at virgin.net> wrote in message
news:mailman.1002412323.2272.sdl at libsdl.org

Hi,

This is NOT the damned place for it and I, for one, am getting sick
of it!

RCG> Can I move that we not have this argument here?

That’s what I said. :wink:

That wasn’t aimed specifically at Bob Cober, but I am truly getting
sick of the completely off-topic mail about OS’ here. This is not the
place for such discussions, this is for discussing SDL.

We are all programmers here and I’d hope we have our own reasons for
running our own OS’. Can we stop this incessant OS bashing and discuss
what this mailing list is actually set up for?

If I want to run Linux, let me. BeOS? Let me. Windows? Let me. Keep
your own preference to yourself because the OS you use is a personal
choice.

RCG> Not that I disagree, but I’d like to preemptively halt the flood of
flame> RCG> mail that I will no doubt be seeing shortly.

I’m kind of hoping most people are with me in that they don’t want to
see this completely pointless “Linux is great!” or “Windows is the
best!” messages. I’ve been on the list for quite a few months now,
replying when I feel I can help, but this absolute crap that keeps
flooding into my inbox is completely pointless.

Neil.

I dropped DX7 programming because of the confusion due to the two different
modes, sorry for stating the wrong one here.

And for the record I didn’t state any preference here.
Also, I’m using Windows 2000 Server and Linux on a desktop PC… guess I’m
doubly zany?

– Anthony T.> ----- Original Message -----

From: n.griffiths@virgin.net (Neil Griffiths)
To: “Bob Cober”
Sent: Saturday, October 06, 2001 4:23 PM
Subject: Re[2]: [SDL] OpenML, SDL, OpenAL, DirectX, OpenGL

Hiya,

BC> FYI - Isn’t D3D just immediate mode now? - retained mode was
basically a
BC> scenegraph API that was dropped??

FYI ;), yes, it’s just immediate mode now.

BC> Anyway, I prefer SDL/OpenGL myself, since Linux is superior to
WinBlows…

Thank you for your input, I will delete this operating system now
which has many more users, I’ll forget about the support - and I will
also start using a server OS instead of a desktop OS because that’s
the kind of zany guy I am!

WTF is it with you people? Will you stop giving out your opinions
about how Linux is better or how Windows is better? If you want to
use it, use it. If you don’t, don’t. JUST SHUT THE HELL UP ABOUT IT!
This is NOT the damned place for it and I, for one, am getting sick
of it!

Thank you for your time. :stuck_out_tongue:

Neil.


SDL mailing list
SDL at libsdl.org
http://www.libsdl.org/mailman/listinfo/sdl