Game Programming Book/Articles Advice

Discussion in 'Mac Programming' started by MorphingDragon, May 16, 2010.

  1. MorphingDragon macrumors 603

    MorphingDragon

    Joined:
    Mar 27, 2009
    Location:
    The World Inbetween
    #1
    And before you say it, I've searched. I want something a bit more specific.

    Where I want to end up at is making console games(Or anything better than managing Windows/Linux servers for the rest of my life...), but I hope that I can make money during Uni by making small games.

    So at the moment, I'm juggling learning C#, Obj-C, Flash (Interesting experience) Obj-C is personal study, the other two are Uni papers.

    There are umpti millions of Mac OSX/iPhone books, but what would be better suited for learning game orientated programming?

    Also, what are some good OpenGL books? (The more they spell out stuff the better) (We cover C++(I think) and DirectX in latter papers)

    Another Area that I'm interested in is OS design, but that interest is mainly in GUI design.

    EDIT: And if it matters this is the paper list
    http://www.cs.waikato.ac.nz/teaching/
     
  2. chown33 macrumors 604

    Joined:
    Aug 9, 2009
    #2
    What did you search for, where did you search, and what did you find that was unsuitable?

    Be as specific as possible.

    For example, I entered game programming into Amazon's search box, and it came up with quite a few books on game programming. If those are unsuitable, then explain what you want in more detail. If those are suitable, then you should probably do what I did, and then read the reviews of each book.

    Game programming isn't about one single computer language. It isn't even about any computer language most of the time. Game design is the hard part. If you have a good design you can write it in any language that has acceptable performance. Or you can even change your design to match a particular language or set of circumstances.

    For example, you can tailor a game to work on puny machines, a small display, or with a low bandwidth connection. A good game will still be a good game. That doesn't mean you can do a fully rendered 3D action game with a 2 MHz 6502 and a 300 baud connection. It just means that good gaming starts with a foundation of a good game design, and then matches that design to the technology.
     
  3. MorphingDragon thread starter macrumors 603

    MorphingDragon

    Joined:
    Mar 27, 2009
    Location:
    The World Inbetween
    #3
    No I meant MacRumours search, as some people here seem to be iffy about people not using it.

    I know game design just inst about a single language.


    Thats just the thing, there a umpti millions of books, you need advice to find the good ones.

    I cant exactly just stroll into my nearest Amazon outlet and browse at some.
     
  4. Cromulent macrumors 603

    Cromulent

    Joined:
    Oct 2, 2006
    Location:
    The Land of Hope and Glory
    #4
    Anything. Python, C++, Java. Whatever floats your boat basically. Most graphics engines are written in C++ though so using that might simplify your library interfaces.

    If you want an actual book the learn I think you'd be better off getting specific for book for the area you are working on. I.e a book on physics for the physics engine, a book on audio for the audio engine etc etc. One huge volume will inevitably miss out on some fundamentals.

    Red book.
    Orange book.
     
  5. chown33 macrumors 604

    Joined:
    Aug 9, 2009
    #5
    The world of game design is far larger than MacRumors search. What else have you tried?

    Have you tried designing a simple game? If so, what? If not, why not?

    You don't have to create a full-scale blockbuster production. Something as simple as a target shooting game would do. Start with stationary targets and no windage or bullet drop. Then add windage. Or make the targets move. Read about other games that have shooting targets as a fundamental element (Duck Hunt, Space Invaders, etc.). Search Wikipedia. You can find lots of stuff by looking closely at older games written when the technology was much simpler, so the games were necessarily simpler, too. That meant the game-play itself had to be more engaging, because you couldn't count on whiz-bang special effects to get players immersed.

    How about breaking down an existing game into it's component elements? If you want to understand how to make something, it can't hurt to start by taking it apart.

    Step 1 would be to read the book reviews on Amazon.com. The search results have a number that shows how many reviews there are for a given book. A 5-star rating with 2 reviews is much less impressive than a 4-star rating with 47 reviews.

    Step 2 might be to try the search terms game design instead of game programming, and see if any other things come up.

    You could, but reading the book reviews on Amazon.com first might be a better starting point. Then you'd stroll into a bookstore with a prioritized list of what books to look at more closely. You should still look at any other related books they have on hand, because you never know what you'll see until you look.

    Then visit your public library, because they may have books you can borrow, even if the subject isn't game design. Game design is a lot more than programming. It has elements of psychology, theatre, narrative, and visual arts, in addition to the programming and math.


    It sounds like you're expecting someone else to hand you a fully formed answer, arranged as a complete course of study from basic to intermediate to advanced game design. Or you're at least expecting someone else to hand you a list of books, tutorials, or other resources arranged in sequential order. I don't think that's reasonable, mainly because game design isn't that formalized. If learning it means that much to you, then do your homework. Or more to the point, start your own course of independent study, which means your first task is almost certainly going to be evaluating existing books and other resources in the field. You should also look at online courses, or even university courses, and see what order they have for studies, and what subjects.

    If I were teaching a game design course, one of the things I'd do is have the students do a homework assignment of evaluating and summarizing 5 books in the field based on reading reviews and collecting general opinions from various sources. Be prepared to discuss in class next week.

    I'd probably make that assignment due after having the students break down one game (or part of one game) into its component elements, and describe why those things work together to make a good (or bad) game element, within the context of the overall game play.
     
  6. MorphingDragon thread starter macrumors 603

    MorphingDragon

    Joined:
    Mar 27, 2009
    Location:
    The World Inbetween
    #6
    You misunderstand me.

    I want some basic books I can go through as a starting point for the needed technologies, so I can go on from there. I realise a game is so much more than code. Its just how I learn best, someone to guide me through the basics so I can research the advanced stuff myself.

    I tend to avoid online shop reviews. I've been burned by them before. I think its far better to ask people directly who work in that area.
     
  7. chrono1081 macrumors 604

    chrono1081

    Joined:
    Jan 26, 2008
    Location:
    Isla Nublar
    #7
    I'm not sure what your level of experience is so I will base it off of what I see in the post.

    Even though you eventually want to program for consoles, which would involve C++ and assembler, its more important to learn about how to make a game.

    Even simple games are tough for a beginner. Most people like to take the "Tetris challenge" and design tetris. Its much harder then it looks but its well worth it to do when starting out.

    Aside from that I would say keep on learning Objective-C and Cocoa, and then jump to this book:

    http://apress.com/book/view/1430225998

    I am only part way through it but it looks pretty good. It covers pretty much everything you'd need to know for a wide variety of games.

    Getting the concepts down is the most important, once you have that then hopping from language to language is pretty easy. This is why I'd suggest sticking with Objective-C, learn Cocoa, and then jump to this book. Just be warned APress books move a little fast for some.
     
  8. MorphingDragon thread starter macrumors 603

    MorphingDragon

    Joined:
    Mar 27, 2009
    Location:
    The World Inbetween
    #8
    I was looking at the iPhone Apress books, but I couldn't actually find a decent review or know anybody who owns one.

    Thanks.
     
  9. Putzi360 macrumors newbie

    Joined:
    Mar 30, 2010
    #9
    Some years back I loved the books by Andre Lamothe. Its not the perfect way to learn Mac style game programming, but it gives you lots of basic ideas what is necessary start, like programming and lots of easy math.
     
  10. mdatwood macrumors 6502a

    Joined:
    Mar 14, 2010
    Location:
    Denver, CO
    #10
    Sites to start at:

    http://www.gamedev.net/
    http://nehe.gamedev.net/ --great ogl tutorials

    If you're going to use OGL just pick a language that you're good at and get going. The language you use will not matter much (as long as it has OGL bindings and most do) until you start getting into games that are performance limited. I've done a bit with Python + Pygame and it works well to learn the basics of gameplay the game loop, timing, etc...

    There are soooo many facets to a game. You have the engine, art work, models, physics, game play, etc... Someone above mentioned Tetris. Heck, start with Pong and build from there.
     

Share This Page