Slashdot Mirror


Is There Life Beyond DirectX?

Zangief asks: "Almost any gamer has, at some point, the idea of making their own game. I am no exception, so I've been playing around with SDL, which appears to be the logical decision over the craziness of DirectX. However I have also noticed that other alternatives, such as ClanLib. There is something else? Are there any other libraries, dev-kits, or tools that would be good for indie developers?"

8 of 79 comments (clear)

  1. CrystalSpace by Aztek · · Score: 5, Informative

    check out http://crystal.sf.net its good library to start you on the road of game programming in 3D

    --
    AZTEK
  2. Allegro by MBCook · · Score: 4, Informative
    I used to program for Allegro, which was nice. I haven't touched it in quite a while (got busy with other stuff), but it does support quite a bit.

    Allegro Homepage

    --
    Comment forecast: Bits of genius surrounded by a sea of mediocrity.
    1. Re:Allegro by i0wnzj005uck4 · · Score: 4, Informative

      Actually, it's been moved here. Also, Allegro's recently gotten a Mac OS X port. If you're only really interested in 2D game creation, Allegro is King in my book. However, its 3D routines are all software-based, and getting OpenGL working with it is a bit of a pain (google for Allegro GL). This will change, I think, as there's been a lot of talk about massive changes in the lib for version 5.

      There's also OpenPTC (don't feel like looking for the link right now), which IIRC is massively cross-platform.

      --
      - Cloud
  3. The best game dev site by Henry+V+.009 · · Score: 4, Informative

    Here is the mother lode: http://www.flipcode.net/

    Really it depends on what sort of game you plan to be developing. If you are going to try out life as a small independant designer, you might want to try out some Flash stuff. I'm serious. Some people crank out a bunch of shareware Flash games. They're fun and easy to distro.

    If you are looking at bigger projects, or trying to learn the coding side to things, you can pick apart one of the game engines in the above site. If you want to learn the real technique behind graphics, then you need to learn DirectX or OpenGL. That is where the real stuff gets done at the moment.

  4. OpenGL Widgets by Tyreth · · Score: 4, Informative
    I highly recommend you check out the GiGi library if you are using OpenGL. It provides you with a set of widgets to use in your OpenGL project. It works very similar to Qt with a slots and signals system.

    GG

    As the sourceforge site says:

    GiGi is a small, efficient, and feature-rich C++ GUI for SDL and OpenGL. It is uses frame-based rendering and has fully customizable graphics, making it ideal for use in low- or high-frame rate applications and games.
  5. Programming Linux Games by Phleg · · Score: 4, Informative

    Check out Programming Linux Games, by a Loki developer by the name of John Hall.

    It goes over SDL in depth, and shows how to integrate OpenGL into it as well. As well, it touches on some other APIs of note, such as SVGALib, GGI, ClanLib, OpenGL, Plib, Glide, Xlib (for video), GTK+, TK, Fltk, Qt, and SDL_gui (for menu widgets), OSS, ALSA, ESD, and OpenAL (for audio), and cl, Guile, and Scheme (for scripting).

    --
    No comment.
  6. Q by Qube Software by CrosbieFitch · · Score: 4, Interesting

    If you're looking for something better than Direct3D, you should check out the Q engine by Qube Software.

    Q 3D Engine
    (FREE DOWNLOAD for Windows & Linux)

    You may be interested to note that this is produced by some of the same engineers who produced Direct3D. Can't be that bad then eh?

    PS I once worked for Qube, so I'm probably biased. :)

  7. Re:Gotta ask by ChaosDiscord · · Score: 4, Insightful
    What's wrong with DirectX?
    1.) Well supported. Works across 98, 2k, and XP. That's MILLIONs of machines there.

    Not well supported. Doesn't work on MacOS, PS2, or GameCube. That's millions more machines. Because it's proprietary, it's unlikely to ever be supported on those playforms.

    2.) DirectX not only handles graphics, but sound and input as well. It's just not somethting you get from OpenGL.

    Apples to oranges. That's like saying, "OpenOffice not only handles word processing, but spreadsheets and presentation graphics as well. It's just not something you get from Microsoft Word."

    DirectX is just a big label covering a number of different technologies (DirectSound, DirectDraw, Direct3D, DirectInput, DirectPlay, and other). The ties between them are minimal. OpenGL's match is Direct3D. If you want a similar package that provides a wide variety of support, look to toolkits like the SDL.

    3.) It's always growing. Supposedly they always have new features and stuff going into DirectX. Can't say I know how that compares with other API's, but it seems like Nvidia and ATI are always doing something with MS there.

    DirectX on the whole has largely stabilized. This is actually good, it means that developers can spend less time worrying about the API of the week a focus on writing games. The only part that is in heavy flux is Direct3D. Direct3D's more open counterpart, OpenGL, is also in heavy flux and manages to keep apace of Direct3D's new functionality.

    Ultimately, the big problem is that DirectX is proprietary. If you want move to another system (like the growing Mac market) your use of DirectX becomes a burden to rewrite.