how about hardware transparent under X as well (using Glide)
Nope, not unless you figure out how to use Glide as a framebuffer.
-Sam Lantinga (slouken at devolution.com)
I’d like to say again what I think of an intergration of
any 3d library into SDL or even using them together.
- 3d graphics are quite much work! Although it was possible to
do good 3d graphics with only the cpu, it isn’t any more since there
are hardware accelerators today (have anyone seen Bleifuss Fun?
fantasic graphics and runs on a Cx686 P150+ on 640x480 fast!)
- As hardware acceleration is avaiable on many PCs today, it would
be wasted time to make any 3d stuff avaiable with only software
- One of the most popular 3d accelerators is the 3dfx Voodoo (2) card.
If a game supports 3d acceleration, it must support it, too since it’s the
most popular one. This card REPLACES the video signal from the video
card and shows only its own signal. It does have an own video memory,
too. This is why Voodoo (no-rush-no-banshee) cards can never be used
in windowed mode. This would actually break compatiblity.
- Another problem with this is: SDL gives you a framebuffer. If it uses the
framebuffer of the video card when the voodoo is on, the changes aren’t
display as the signal is being replaced by the voodoo. It is possible,
at least with Glide, to support a frame buffer to the memory on the 3d
board, but that’s terribly slow: my own tests just used the voodoo memory
instead of the video ram and the frame rate dropped from 40fps to 10 fps.
So what clever programmers do is use textures for ANYTHING.
Ergo, if you’d like to draw a text on the screen, you upload the font as a
into the texture memory and then put a textured triangle. Programs using
obviously not compatible with programs not having a 3d card.
- The only platform that is avaiable on all SDL platforms is OpenGL. OpenGL
must be nice to use but isn’t supported well by almost any 3d card.
It is, from what I’ve heard, not possible to write a functions wrapper that
OpenGL, Glide and Direct3d together, at least that would not fit into the
- Some people said on this list: hey just give me our window handle and
renders into it or into some buffer or something like that. 3D accelerators
don’t like rendering into a buffer at all! So the only thing possible,
be software rendering. And - I don’t think that would be portable, either.
These are a few arguments against love and marriage of SDL and 3D.
You may be right, I may be crazy (as Mr. Billy Joel said) but you may be
that’s all I know, and I may be right.
Note that it can be possible to do some things like these under some
circumstances but that wouldn’t be portable, and I think portabiliy is the
of SDL that most people use it for.
this I tell you brother
— Paulus Esterhazy (@Paulus_Esterhazy)