Slashdot Mirror


Linux Game Programming

Craig Maloney writes the review below of Linux Game Programming. From the sound of it, there may be a considerable market need for more books on programming the fun stuff for GNU/Linux. This one may even suit your needs, but earns some harsh words from Craig.

Linux Game Programming author Mark "Nurgle" Collins et al. pages 331 publisher Prima Tech rating 3 reviewer Craig Maloney ISBN 0-7615-3255-2 summary A hastily compiled book with some useful tidbits, but no main course.

Overview There are precious few books which mention programming games under Linux. There even fewer that cover programming games under Linux exclusively. Linux Game Programming is the first published book exclusively dedicated to programming games under Linux. Unfortunately this book was rushed to the publishers just to obtain the dubious distinction of being the first. Worse, this book has many errors and a CD which is next to worthless.

What's good? It's very hard to find anything that's really outstanding in this book. The chapters offer what amounts to little more than a starting point for learning, with just enough to get the reader interested in the topic before moving on to the next topic. The sections on Artifical Intelligence and Porting stick out in my mind as some of the books strong sections, but even those could use some more elaboration. What's Bad? In trying to cover as many aspects of Linux game development, the book ends up giving little more than a synopsis of the material. Also, some of the choices are curious. Why have a chapter on SDL which only deals with using SDL for the input methods? There seems to be a lack of focus for the overall book for what it wishes to accomplish. Also, dedicating whole chapters printing out open source licenses (GPL, LGPL, Artistic, BSD, and Mozilla) is nothing more than fluff for a book like this (although the author does include a chapter discussing the benefits and drawbacks to chosing an open-source license verses a closed source approach.) The code is not complete, and doesn't show how to use it in a full program. Worse, there are no complete working game programs, either in the book or on the CD.

The CD is incomplete and a waste. It includes the examples from the book. Unfortunately, the examples are all in MSDOS format, so the reader will have to convert them in order to get them to run (if they'll even run at all. I had a hard time getting some to even compile). Also included on the CD is the SDL 1.1.8 kit in source and RPM format (the development RPM is missing, though, so you'll need to pick that up as well in order to actually DEVELOP SDL games). There are also source tar files for Mesa3D, OpenAL, and SVGALib. Also included is the Indrema SDK, which might be of interest for some people. There are also some strange additions on the CD. The first weird addition is the Linux Source for kernels 2.2.18, 2.4.0, and 2.4.1. Why include these on a CD for Linux game development? The second odd addition is a directory for PrettyPoly. The software is packaged as a tarball of the author's CVS root directory. How this made it onto the CD in this format is almost as inexplicable as having MSDOS formatted files destined for a Linux machine.

Conclusion This book could have been so much more. If the authors had taken the time to describe designing and developing several Linux games from the ground up, this book would have been better for it. As it is, it's barely good as a reference for what it does cover. I am very disappointed in this book. It could have been so much more, but falls way short of its potential.

There's one gripe I want to air about this series as well. Why does Andre LaMothe get his picture on the back cover of every one of these books as the 'Series Editor'? Also on the spine, his name is at the top. I'll admit that I like LaMothe's writing, but giving him top billing on the Prima Tech Game Developers series seems pretentious to me.

Table of Contents

  • Introduction
  1. Introduction to Game Development
  2. Linux Development Tools
  3. The Structure of a Game
  4. 2D Graphics Under Linux
  5. Input with SDL
  6. 3D Graphics for Linux Games
  7. Using OpenGL in Games
  8. Sound Under Linux
  9. Networking
  10. Artificial Intelligence
  11. OpenSource: Friend or Foe?
  1. OpenSource License Agreements
  2. Porting
  3. References
  4. Glossary
  5. What's on the CD-ROM

You can purchase this book at Fatbrain.

8 of 91 comments (clear)

  1. Yeah Well... by Anonymous Coward · · Score: 4
    The problem is that this book tries to cover too much, but I think this is a problem with Linux itself, not the book. Linux multimedia SDKs have been in flux for a long time, and it doesn't look like this is going to settle. "Settle" as in : pick this one, single, SDK, and rest assured that virtually all popular hardware is going to have a driver for it, that all major distributions are going to support it out of the box, and that the SDK is large enough to have good documentation and samples for it.

    Case in point : the simple choice between two SDKs, Direct3D and OpenGL, has delayed advances in 3D technologies on the Windows platform for a very long time, because developers feared the difficulties of supporting them both in their games, but at the same time feared that building everything with D3D would obsolete their whole codebase if OGL won after all -- or vice versa. Imagine the doubts in game developers minds when they read about the dozen SDKs in this book.

    In short, choice is bad for things like this. Competition is a great thing when you're trying to improve things for the customers, but when those customers are actually developers, you want to remove all their doubts by offering one very-well-supported environment rather than ten weak ones (Also see : desktops; component models; IDEs; etc.)

    Linux needs to make cold choices and finish them up. Only then will it be possible to write meaningful books about game development / desktop development / component development / etc..

  2. Re:How About Loki's Book? by woggo · · Score: 4

    You can find out -- the fatbrain link he gives is actually to the Loki book. Here is a fatbrain link to the book he actually reviewed.

  3. I must concur by sdaemon · · Score: 4

    I spent around 30 minutes poking through this book last weekend at B&N, and my opinion of it is that it is yet another hastily thrown together book attempting to capitalize on the fact that the market is buzzing for more books on Linux at the moment. The topic of games programming under Linux does need to be worked on more, granted, but I think readers are best waiting until there's an O'Reilly book on the subject, honestly.

  4. Sounds like the SDL website would be more helpful. by BadmanX · · Score: 5
    That's at http://www.libsdl.org. If you're writing games for Linux, it should always be your first stop.

    If you want to learn OpenGL, your next stop should be NeHe's tutorials on Gamedev.Net.

    http://nehe.gamedev.net/

    GameDev itself is helpful...

    http://www.gamedev.net/

    As is Flipcode...

    http://www.flipcode.com/

    If you're interested in writing a good game, you should learn from those that came before you. Check them out using emulators from Zophar's Domain...

    http://www.zophar.net/

    Also, no game developer worth his salt can ignore the virtual treasure trove of information archived at GamaSutra...

    http://www.gamasutra.com/

    And finally, you'll want some cool free video game tunes to listen to while you code. The two best sites for video game remixes are Bart Klepka's remixes and Remix at Overclocked.org:

    http://bart.overclocked.org/
    http://remix.overclocked.org/

    Go to it. I hope to play your games soon.

  5. this is the problem with linux users by CrudPuppy · · Score: 5

    I love linux, but here we face one of the most
    common problems:

    someone wants to play the latest games on the
    latest hardware, and doesnt mind using Wine or
    VMware to do it, or even binary-only games...

    the logical conclusion is that if you are one
    of these people, the time has not yet come for
    you to give up windows! dual-boot or get another
    machine if you want to run linux that badly.

    one day, linux will probably be able to do all
    of these things, but in the meantime, dont pick
    up a hammer when you need a screwdriver!

    my $0.02

    --
    A year spent in artificial intelligence is enough to make one believe in God.
  6. How About Loki's Book? by kdgarris · · Score: 4

    Hopefully, Loki's book, Programming Linux Games will be a lot better.

    Does anyone know of any early reviews of this book? It's due to be relesed in August.

    -Karl

  7. I wish there was an SDL-focused game dev book by StandardDeviant · · Score: 4

    using SDL for input, as a graphics substrate for 2D games and for OpenGL-based 3D games, etc. Throw in some coverage of OpenAL as well as generally applicable topics such as AI, Maths, and the like. Garnish with touches of the 'other side' of game development (plot, characterization, artwork) so the code monkeys understand what the writers and artists are talking about.

    Result: a book teaching folks how to make games that run on Linux. And windows. And any other platform SDL, OpenGL, and OpenAL work on. If it can be pointed out to the development community that these tools are viable and easy to use, further that they get portability almost for free using them thus expanding their market for low marginal cost, more games might come out that Linux, MacOS, BeOS, *BSD, etc. could play.

    Plus SDL is just cool. :-)

    Only question in my mind is would O'Reilly publish a book like this; if so what animal would it be? (would a woodcut of Pac-Man work?)


    --
    News for geeks in Austin: www.geekaustin.org
  8. Entry Route by squaretorus · · Score: 4

    I doubt I'm alone in being led down the coders path by the desire to write better games than I could buy at the time.
    I must have bought a dozen 'write games in..' books and found every one of them to be too light on detail, too thinly spread, and too badly written to be of use - so ended up buying a couple of 'proper' programming books and just working out the game bits later.
    Personally, I think for the many folk that gave up before going to the proper books, there SHOULD be books with 'write games' in the title that start at about 'hello world' move on through 'pong' and end up somewhere about 'quake'. They'd have to do it over a few volumes, but if they were well written (like the OLD animal books) and not £80 a pop I reckon they'd be onto a winner.