Ich bin ein normaler Programmierer mit ungefähr 3 Jahren Erfahrung, der daran interessiert ist, in die Spieleentwicklung einzusteigen. Das Problem, mit dem ich konfrontiert bin, ist, dass die meisten dieser "Anfänger" -Bücher grundlegende Programmierkenntnisse vermitteln und ich nicht die Geduld habe, sie durchzusitzen oder für sinnvoll zu halten. Aber wenn ich mir fortgeschrittenere Bücher ansehe, sind sie über meinem Kopf und für mich wieder einmal fruchtlos. Was ich suche, sind Bücher, die das Wesentliche von Spielen erklären, aber auf einer vernünftigeren Ebene.
Zum Beispiel kenne ich mich mit allen Arten von Datenstrukturen (Hashes, Bäume, verknüpfte Listen) und mit vielen gängigen Algorithmen (Sortieren, Suchen) aus, aber ich würde nicht wissen, wie man Kollisionserkennung effektiv umsetzt. Ich habe auch Erfahrung mit fremden Bibliotheken, daher kann ich Dokumentation zum Erlernen einer API verwenden, sodass ich auch kein Buch zum Erlernen der Verwendung von X benötige.
Persönlich ist es mir egal, welche Plattformen / Sprachen / Bibliotheken in den Büchern verwendet werden, da ich mich in vielen Sprachen wohl fühle, aber das Spiel, das ich mir vorstelle, würde Javascript und die HTML5-Zeichenfläche verwenden.
Irgendwelche Vorschläge? Alle, die kostenlos sind?
PS Ich sollte beachten, dass mein Niveau in Mathematik und Physik relativ niedrig ist, und ein Buch, das diese Dinge sanft integriert, wäre ein Plus.
EDIT: Ich sollte erwähnen, dass ich mich für 2D-Programmierung interessiere und mich an dieser Stelle noch nicht wirklich für 3D interessiere.
Antworten:
Haben Sie sich die Game Programming Gems- Reihe angesehen? Es könnte Ihnen die Einzelheiten geben, nach denen Sie zu fragen scheinen. Es gibt nicht viele Bücher auf HTML5 / Canvas, da es ziemlich neu ist, besonders wenn es um Spieleprogrammierung geht.
quelle
What aspect of game programming are you curious about? There's quite a few books that discuss specific aspects of game programming. Getting a game up and running is not difficult, and any game logic is just like how you'd manage data for any other application, perhaps a little more concerned with speed of execution. Getting into stuff like graphics programming though, can be something else entirely. Start with a basic framework of a game, then focus on one area you're interested in, like designing a robust combat system, or synchronizing animation, or shaders.
General-info type books that I've found useful:
You're probably at the stage where you'll get the most information by looking at various tutorial postings for specific engines online. There's also a decent enough number of open source games you can check out.
One interesting thing to study might be the Monocle Engine.
Edit:
With regards to math, I'm also a little shaky on my foundations. A good resource for these general subject areas is Khan Academy.
For other free stuff, just browse GameDev.net, and possibly the MSDN articles for XNA.
quelle
If you're confident with object-oriented programming, you should make sure you pick up something which covers component-oriented design. It's a programming approach within OOP that is very powerful in games development and has become a standard approach within the last decade.
Two resources that contributed massively to my understanding of COD:
There is an answer on Stack Overflow that contains an incredible list of resources: Component-based software engineering in game literature.
Note: COD isn't used solely in games development. You may find resources that explain COD in completely different contexts, which won't necessarily be helpful at all for understanding the role it plays in games (YMMV).
quelle
I'll add to the deluge of titles here:
Game Engine Architecture by Jason Gregory (Naughty Dog) for general game engine overview at a reasonably detailed level.
Real-time Collision Detection by Christer Ericson (God of War) for an in-depth and comprehensive overview of collision detection systems.
Real-time Rendering by Tomas Moller and Eric Haines for a similarly in-depth treatment of rendering.
quelle
I recommend Introduction to Game Programming with DirectX 9.0c: A Shader Approach by Frank Luna. It's also available for D3D10 if you're curious. The book assumes basic C++ knowledge but nothing game-specific and no COM, and begins with various mathematical foundations like vectors and matrices, and fairly gently guides the user through setting up games from basic to the intermediate. What's notable of course is that as time goes on, then things change- for example, he doesn't teach hardware instancing or other optimizations that are relatively new.
quelle
I just found a publisher with what seems to be a great list of possible books: http://www.courseptr.com/Courses.aspx?MenuId=8&MenuSubId=0 - they're the publishers of the Game Programming Gems series.
quelle