|
In the past I wrote a few blog articles here on TL about game programming with the goal of introducing the idea to new people. I had been a bit unorganized and didn't really seem to get clear ideas out there to readers. So I've decided to try yet again except this time in the form of a TL KnowHow. I'm sharing this blog for two reasons; firstly it'd be cool to generate a little bit of hype! Be aware that I've taken great pains to write the entire article in such a way that it can easily be consumed by someone that has little to no programming experience at all; I explain a lot of concepts and provide a lot of high-level descriptions and ideas that aren't written in "programmer speak". I'd like anyone new and interested in learning something about programming, especially game programming as a profession, to be able to take something away.
Take a look at my table of contents for the KnowHow:
+ Show Spoiler [Crazyiest ToC Ever] +Introduction Goal of this Article Game Programming and Software Development The Hobbyist Professional Programming Real-Time Applications Memory intensive Computation intensive Prerequisites Variables, Keywords and Identifiers Basic formatted input/output Control structures Arrays Functions Pointers Structures Classes Quick Refresher Stack and Heap Bits and Bytes Arrays Second class type Sizeof Pointers Address of Indirection Pass by value References Pointers and Arrays Pointer arithmetic Pointer to pointer Preprocessor #define #include #ifdef, #endif, #undef Compiling and Linking Code Organization for Large Projects Coupling Source files Header files Macros Prototypes Multiple Include protection Circular inclusion Forward Declarations Extern Data structures and program design Linked lists Ordered list Array std::vector Hash table Messaging Game Engine Architecture Overview Systems Main Loop Display Input Memory Management Object Management Game logic Physics AI Component Based Design Component Based Game Objects Factory Data driven composition Additional isolated topics Finite State Machines ActionList Improved Messaging Generic programming Bitmasks User Interface by Sean Reilly Game User Interface From Scratch Preexisting Library Editor User Interface In-Game External External with Game Embedded
The second reason I've written this blog is to ask, just in case, if there's anyone who would like to request a specific topic (related to software engineering and/or game programming). If I have knowledge of the topic, or know someone who does, I might get it in before the KnowHow goes live.
As for what the various sections look like, here's a tiny snippet of the very beginning:
IntroductionHello! My name is Randy Gaul, and I am a computer science student. I study at DigiPen Institute of Technology, and am majoring in Real-Time Interactive Simulation (a fancy way of saying game programming). I’d like to share my know-how in the ways of game programming as a profession for anyone interested in learning. I encourage anyone interested in programming or creating games, no matter how little knowledge you have in either topic, to check out this article. Goal of this ArticleBefore my studies at university I had spent a good deal of time trying to learn what it is like to create a piece of useful software from scratch. I spent many hours studying the basics of programming such as control structures, program design and even abstract data types. I however was very hardpressed to find any high-level information on how to piece together the smaller tools of programming in order to make a project of my own. This article aims at bridging the gap between the realm of a beginning programmer, straight into and through the intermediate level. ...
I hope anyone who reads this looks forward to the new KnowHow that will be coming very soon!
|
Ooh I'm excited for this !
I however was very hardpressed to find any high-level information on how to piece together the smaller tools of programming in order to make a project of my own.
This in particular is currently my own dilemma as well.
|
Super excited for this.
"Goal of this article" section is music to my ears.
|
ALLEYCAT BLUES49035 Posts
I am so looking forward to this.
|
This is awesome! I just recently switched to Computer Science so I would love this!
|
How about threads/multithreads and sockets/networking. I've made some simple games myself in my spare time but I've never been able to create a functional server client system since it's so damn confusing to me.
Like everyone else I'm really excited for this.
|
Godspeed! I always wanted to learn more about game programming
|
CecilSunkure delivers once again!
|
As someone learning C with an interest in game development, as well as a former Protoss player, I'm pretty sure you're just the world's greatest person, Cecil.
|
Russian Federation823 Posts
I bookmarked your blogs and cannot wait for your new blog.
|
Canada863 Posts
Oh shit your blog has a section on collision. Excellent excellent. Gonna pad my resume with programming projects this winter. Thanks for the info
|
Right on, will be reading this for sure.
|
On October 24 2012 15:22 Rhaegar99 wrote:How about threads/multithreads and sockets/networking. I've made some simple games myself in my spare time but I've never been able to create a functional server client system since it's so damn confusing to me. Like everyone else I'm really excited for this. To second this, I'd really like a section on sockets/networking too. Other than that, looking forward to reading this! :D
|
On October 24 2012 15:22 Rhaegar99 wrote:How about threads/multithreads and sockets/networking. I've made some simple games myself in my spare time but I've never been able to create a functional server client system since it's so damn confusing to me. Like everyone else I'm really excited for this. I'm about to do that for a programming assignment :d Threads can be a bitch if you don't lock things properly
|
On October 24 2012 17:40 Krikan wrote:Show nested quote +On October 24 2012 15:22 Rhaegar99 wrote:How about threads/multithreads and sockets/networking. I've made some simple games myself in my spare time but I've never been able to create a functional server client system since it's so damn confusing to me. Like everyone else I'm really excited for this. To second this, I'd really like a section on sockets/networking too. Other than that, looking forward to reading this! :D Definitely won't be covering any networking. As for threading, I will consider a section on that. Although if I do it will be about higher level concepts rather than nitty details of a specific implementation (as is the rest of the KnowHow).
|
This looks very much like it will be all about C++. I don't particularly like giving people the impression that you can read a rather short piece about C++ and be ready to properly work on a medium or large scale program. I generally support the article of course, but you should make sure that you make people aware that C++ is pretty much the Broodwar among the programming languages. Your article cannot possibly replace reading good books like The C++ Programming Language, Effective C++ and so on. A medium/large C++ project without a deep understanding of the language is extremely error prone and very hard to maintain.
Personally, I'd rather do an article purely on Game Programming, without talking about specific programming languages. For beginners, languages like C# or Java are suited so much better anyways. Game Programming by itself is still a broad topic.
|
On October 24 2012 17:56 CecilSunkure wrote:Show nested quote +On October 24 2012 17:40 Krikan wrote:On October 24 2012 15:22 Rhaegar99 wrote:How about threads/multithreads and sockets/networking. I've made some simple games myself in my spare time but I've never been able to create a functional server client system since it's so damn confusing to me. Like everyone else I'm really excited for this. To second this, I'd really like a section on sockets/networking too. Other than that, looking forward to reading this! :D Definitely won't be covering any networking. As for threading, I will consider a section on that. Although if I do it will be about higher level concepts rather than nitty details of a specific implementation (as is the rest of the KnowHow).
To be honest, I really think you should reconsider including networking-- it's really intimidating for people who aren't familiar with sockets to get started, but if you can show even just how to get a simple UDP client/server up and running it'll be much easier for those interested to continue on from there.
Most hobbyist games really don't gain anything by using threading, but simple networking can make a small project really cool! If it doesn't fit with how you've got the articles planned then don't worry about it of course, but if it's at all possible I think a lot of people would benefit from an article or two on the subject.
EDIT:
On October 24 2012 18:17 spinesheath wrote: This looks very much like it will be all about C++. I don't particularly like giving people the impression that you can read a rather short piece about C++ and be ready to properly work on a medium or large scale program. I generally support the article of course, but you should make sure that you make people aware that C++ is pretty much the Broodwar among the programming languages. Your article cannot possibly replace reading good books like The C++ Programming Language, Effective C++ and so on. A medium/large C++ project without a deep understanding of the language is extremely error prone and very hard to maintain.
Personally, I'd rather do an article purely on Game Programming, without talking about specific programming languages. For beginners, languages like C# or Java are suited so much better anyways. Game Programming by itself is still a broad topic.
I disagree with this-- it's very easy to have a decent idea of how to program in C++ without knowing how to translate that into making a simple game. Personally, I don't think using C++ for small projects like what I assume the articles will be covering is significantly more difficult or risky than using Java/C#.
|
Italy12246 Posts
Dat toc is impressive holy crap :O Are you doing the whole thing by yourself?
|
On October 24 2012 19:06 Teoita wrote: Dat toc is impressive holy crap :O Are you doing the whole thing by yourself? I had some help
|
On October 24 2012 18:17 spinesheath wrote: This looks very much like it will be all about C++. I don't particularly like giving people the impression that you can read a rather short piece about C++ and be ready to properly work on a medium or large scale program. I generally support the article of course, but you should make sure that you make people aware that C++ is pretty much the Broodwar among the programming languages. Your article cannot possibly replace reading good books like The C++ Programming Language, Effective C++ and so on. A medium/large C++ project without a deep understanding of the language is extremely error prone and very hard to maintain.
Personally, I'd rather do an article purely on Game Programming, without talking about specific programming languages. For beginners, languages like C# or Java are suited so much better anyways. Game Programming by itself is still a broad topic.
This was the exact feeling I got looking at the contents aswell. C++ and game programming are very big topics on their own, putting both together...seems very ambitious.
Might be easier to focus on a managed language, with minimal input on programming itself, and go deeper into the game programming side of it. In that way your article could help people who are kinda new to programming but also want to learn about game dev. People who already program (in c++ or otherwise) can easily grasp concepts about programming in general, and can learn of it.
|
Being a CS student myself I'm looking forward to this article. I've always wondered how the hell programmers create huge games from just pages of code and what not. I've written small simple programs that you supposedly could call a game however it's nothing on the scale of broodwar or even super mario for that matter lol.
|
Looks like a great article, I will be very interested in reading it! thanks!
|
I'm doing little bits of programming in college with multiple languages. I do think i have some (very) basic understanding of those languages, so i'm very looking forward to this. This might give me some inspiration for my own programming assignments.
|
So this is where you've been hiding Cecil? As someone who did a very brief foray into pseudo-programming (AS3) I would be very interested to see how this article turns out, and what it discusses.
Also, that ToC formatting looks strikingly familiar to something I've seen before.
|
|
I can already tell this is going to be my favorite tl know how, awesome idea!
|
Like others before me. C++ pretty ambitious and interesting choice for programming language to use to teach game programming. Granted a lot of big companies are still using it, most are making the switch to Java or C# (if they use non-proprietary game engines). That being said, C++ one of the most powerful languages out there, and if you know what you're doing, runs faster than Java, Python, and all scripting languages. I have a bit of knowledge of game programming and design concepts, but can definitely look to learn more. I will be following this. Good luck!
|
On October 25 2012 04:06 inn5013orecl wrote: Like others before me. C++ pretty ambitious and interesting choice for programming language to use to teach game programming. Granted a lot of big companies are still using it, most are making the switch to Java or C# (if they use non-proprietary game engines). That being said, C++ one of the most powerful languages out there, and if you know what you're doing, runs faster than Java, Python, and all scripting languages. I have a bit of knowledge of game programming and design concepts, but can definitely look to learn more. I will be following this. Good luck! For high end games, C++ definitely is still one of the best languages, and likely will stay that way until fast inherently parallel languages are established. Which might still take a while.
But a beginner can't make good use the strengths of C++ for such cases (he won't be writing a high end game anyways), and will most likely run into problems with the disadvantages of C++. There's a lot of problems to be expected when it comes to C++ memory management, especially if you lack understanding of RAII. Pointer magic also seems to be unreasonably attractive to beginners (been there, done that, seen it from countless people).
Languages like C# and Java just force you into not comitting these kinds of mistakes, and they are easily powerful and fast enough for almost any kind of low budget games.
On the plus side: Once you are good with C++, any procedural language is a piece of cake. Well maybe not the esoteric ones.
|
Just wondering, are you gonna be using libraries like SFML or do you intend to do explain everything from ground up? And are you going to cover cross-platform compatibility as well?
I think C++ is a good choice, it is my favourite language anyways
Looking forward to this.
|
On October 25 2012 04:23 spinesheath wrote:Show nested quote +On October 25 2012 04:06 inn5013orecl wrote: Like others before me. C++ pretty ambitious and interesting choice for programming language to use to teach game programming. Granted a lot of big companies are still using it, most are making the switch to Java or C# (if they use non-proprietary game engines). That being said, C++ one of the most powerful languages out there, and if you know what you're doing, runs faster than Java, Python, and all scripting languages. I have a bit of knowledge of game programming and design concepts, but can definitely look to learn more. I will be following this. Good luck! For high end games, C++ definitely is still one of the best languages, and likely will stay that way until fast inherently parallel languages are established. Which might still take a while. But a beginner can't make good use the strengths of C++ for such cases (he won't be writing a high end game anyways), and will most likely run into problems with the disadvantages of C++. There's a lot of problems to be expected when it comes to C++ memory management, especially if you lack understanding of RAII. Pointer magic also seems to be unreasonably attractive to beginners (been there, done that, seen it from countless people). Languages like C# and Java just force you into not comitting these kinds of mistakes, and they are easily powerful and fast enough for almost any kind of low budget games. On the plus side: Once you are good with C++, any procedural language is a piece of cake. Well maybe not the esoteric ones.
Yeah I agree with this, there's just no reason to really invest into C++ unless you are interested in working on more advanced 3d graphics and/or CPU heavy games (or want to be a career programmer as C++'s concepts are important to understanding how things work in managed languages)..
When you look at indie games that are on C++ and need to be there it's a short list of things like Dwarf Fortress and complex 3d games. Even games as complete and competitive as Minecraft can avoid using C++.
Not that it makes the article any less useful or anything.
|
Wow, subscribing, i know basics of c++ (like i made a program calculating harmonic series sum of given n). Hope it helps me extend my skills!
|
As I'm about to start a programming course... timing couldn't be better :D
|
Oh yes, this article-to-be sounds very interesting
|
On October 25 2012 04:41 Lorizean wrote:Just wondering, are you gonna be using libraries like SFML or do you intend to do explain everything from ground up? And are you going to cover cross-platform compatibility as well? I think C++ is a good choice, it is my favourite language anyways Looking forward to this. It's not a comprehensive article from the ground up with code examples everywhere to show how it's done. I don't have the time to write an entire novel
Instead many of the topics are explained from a high-level point of view in order to provide the reader a clear sense of how an entire game project may look like.
As for all the people saying C++ is ambitious, I don't really agree. Being afraid of memory management and pointers isn't something I feel a professional software engineer (especially one that wants to work on game development) should ever be afraid of. Starting to learn by running straight into both C and C++, I feel, are great ways to build a strong programming foundation. Though I do specialize in C++ and my experience come from there, the article talks a lot about architecture and concepts and ideas that aren't language specific.
|
oh you tease you NEED MOAR!!!
i love all kinds of programming and am always eager to read what better minds have to say on the subject
|
On the subject of C#/Java vs C++:
I would say that C++ may require learning more of the language itself before you get to a point where you can comfortably create something a bit larger than the usual starter programs, but when you get to that point, you may have a better grasp of overall programming concepts than someone who just jumps into C#/Java.
I started off learning C++, and moved to Java and C# later on. I'm thankful I learned some C++ to begin because although it was a bit harder for me to understand at first (I was 14 when I started learning C++); the understanding of what a pointer was and how they worked really made it easier to understand some of the inner workings of C# and Java and gave me a better overall view of things in the first place.
One of the aspects that nobody mentioned yet is that C# and Java don't have all the libraries that C++ has. There are certainly some ports, but sometimes the ports may be relatively different from the C++ port, may be unfinished, or may require some.... interesting... code to interface with it (example: calling unmanaged functions from C#, specifically, ones involving pointers and such). C++ has an extremely mature set of libraries for damn near anything you would ever want.
All in all, I think that the only barrier to applying knowledge from one programming language to another is how well a person truly understands something. If you truly understand what is being done, there is no reason you should have much trouble doing it in another language. Learning one language shouldn't suddenly make you only program in that language. I've dabbled in Python, PHP, Assembly, C#, Java, Turing (lol), Haskell, and VB... I'm also currently learning to design hardware in VHDL... I have little trouble switching between languages once I learn the syntax of the language I'm working in. After that, the only stuff you really need to learn is little stuff (say the language you're learning is strongly typed, and you came from a weakly typed language, and suddenly you need to learn how to convert between types.... that is pretty minor compared to learning what a for loop is.)
The sort of thing I'd like to see in a TL-Knowhow on programming a game is more generalized things like structural approaches, how to create a decent resource management system, maybe how and where to integrate pathfinding, and other architectural design stuff. I know that stuff is rather advanced for the topic of creating a game, but there are very few articles covering things like that while also dealing with actual code, and sometimes it's nice to see a slightly more concrete implementation of a generalized idea.
|
Can't wait to check this out
|
My take on C#/Java vs C++:
I myself have learned C#, together with the XNA engine it's really easy to make games. In C# you don't have to understand what's under the hood, you can just focus on making a game/program.
Whereas with C++ you have to take care of multiple things yourself, such as garbage collection (removing pointers that aren't reachable anymore etc.).
So, as people have said before, when you want to make simple games that don't require much resources (CPU/Memory) C# is the better one to use. But if you're working on really big games (such as game companies do), you want to optimize your game as much as possible. And this can only be done (properly) with C++.
I don't know how in depth this guide is, but can't most things be explained in pseudo code? In that case there shouldn't be too much difference between a C++ and C#/Java background. Although, some concepts may be very much related to the programming language you're using, such as making a game engine.
|
Well I have a fair bit of C understanding, and I was going to be working as best I could this summer break (winter for you americans) on a joint C++ project with some people over the internet, so this will be invaluable.
Looks amazing, although it would probably be geared at people that have some prior experience with programming already, no? Seems kinda like a split between gamemaking / intro to programming article to me (but I'm not complaining).
On October 25 2012 11:03 Bobbias wrote: I'm also currently learning to design hardware in VHDL... Um what exactly do you use that for, I'm curious. I had to do a unit with it, and it seemed rather esoteric and not really useful outside of designing your own chips (not practical outside of large scale).
|
Don't have the experience to really debate C++ vs C#/Java, but as a sophomore computer engineering student I've only worked with C++ so far and really enjoyed developing a few small games in it. Starting with the lowest level (and the language I'll probably be using as a career programmer) is slow yeah but I'm really starting to understand it, and I think I'll be able to apply the knowledge more readily to other languages etc.
Looking forward to this! Glad to have insight from someone who's had some experience.
|
Do we have an approximate ETA on this? x.x
Super pumped ^^
|
Looks good!
Some potential topics that i would be interested in learning more about or would of liked to have been able to find a useful guide on when i was learning them.
Inheritance, appropriate usage. the importance of using it in game programming? Abstract classes Collision detection Getting game assets into a program, whether it be created in code or imported (i know i personally have had a lot of struggle here, took me a long time to get an obj importer working) The importance of documentation, comments etc. Threads / multi threads? Graphical options in c++ (opengl vs directx) maybe a description of the way the two pipelines work and advantages / disadvantages. Use of namespaces?
Looking forwards to the final article.
|
On October 26 2012 08:17 chaokel wrote: Looks good!
Some potential topics that i would be interested in learning more about or would of liked to have been able to find a useful guide on when i was learning them.
Inheritance, appropriate usage. the importance of using it in game programming? Abstract classes Collision detection Getting game assets into a program, whether it be created in code or imported (i know i personally have had a lot of struggle here, took me a long time to get an obj importer working) The importance of documentation, comments etc. Threads / multi threads? Graphical options in c++ (opengl vs directx) maybe a description of the way the two pipelines work and advantages / disadvantages. Use of namespaces?
Looking forwards to the final article. Thanks for the awesome suggestions but I've already submitted the final copy to MightyAtom for editting. I don't know if I'll be able to get in any other large changes before it's out
|
Understandable.
How is your course? I'm doing an equivalent degree over here in Australia. Curious to how comparable it is to what I'm doing. What kind of content have you covered? How much of your knowledge comes from actual course work / assignments, and how much is self taught? What are your assignments like?
Feel free to answer as much or as little as you feel comfortable. Will give me a much needed break from this AI assignment i'm working on .
|
On October 26 2012 10:45 chaokel wrote:Understandable. How is your course? I'm doing an equivalent degree over here in Australia. Curious to how comparable it is to what I'm doing. What kind of content have you covered? How much of your knowledge comes from actual course work / assignments, and how much is self taught? What are your assignments like? Feel free to answer as much or as little as you feel comfortable. Will give me a much needed break from this AI assignment i'm working on . Well you can look at my course sequence here. I'd say about 25% of what I learn computer science wise is from school and the rest is on my own time. Though that's because I study that topic a lot on my own time. I learn around more around 50% of what I know in all other subjects (graphics, mathematics, physics) from classes. Lots of time has to be put into independent studies (and should be like this in any school). Though it should be noted that we have very insane GAM classes that allow you to put in unlimited time... You could say that all my spare time studying goes into this GAM class.
|
Looks really cool, I look forward to this! I've never had much experience with programming but always wanted to learn, and always wanted to get some rudimentary skills in it. Just curious, how does this kind of programming language/scripting relate to the scripting that might be done in the SC2 galaxy editor? I did some mapmaking back in WC3, and I know you could use JASS (which I never learned), is there something similar for SC2?
|
On C#/Java vs C++
Another thing one will have to consider, and I'd actually suggest mentioning this somewhere in your game design writeups (as it is important pertaining to production, but has to be considered close to beginning of development), is the inherent cross-platform functionality of programs written in Java and C#.
To do in C++, will have to go through a couple more steps, either using frameworks like Qt, which can run quite expensive if you're actually planning to publish, or write a fair share of macros to handle/except each platform's specific functions.
|
On October 25 2012 23:40 Rollin wrote:Well I have a fair bit of C understanding, and I was going to be working as best I could this summer break (winter for you americans) on a joint C++ project with some people over the internet, so this will be invaluable. Looks amazing, although it would probably be geared at people that have some prior experience with programming already, no? Seems kinda like a split between gamemaking / intro to programming article to me (but I'm not complaining). Show nested quote +On October 25 2012 11:03 Bobbias wrote: I'm also currently learning to design hardware in VHDL... Um what exactly do you use that for, I'm curious. I had to do a unit with it, and it seemed rather esoteric and not really useful outside of designing your own chips (not practical outside of large scale).
Honestly it's just personal interest. I'd love to get my hands on an FPGA, and ultimately, I'd love to do something like this demo [youtube video here] (not that I'd likely ever be able to make something that awesome)
EDit; This one is more like what I'd want to do.
|
On October 25 2012 07:37 CecilSunkure wrote: As for all the people saying C++ is ambitious, I don't really agree. Being afraid of memory management and pointers isn't something I feel a professional software engineer (especially one that wants to work on game development) should ever be afraid of. Starting to learn by running straight into both C and C++, I feel, are great ways to build a strong programming foundation. No, knowing about memory management and pointers prepares you pretty well for C. C is a fairly small and basic language. However, being a competent in C++ involves knowing a shitload more than that. C++ is a beast with tons of C++ exclusive features and quirks. Undefined behaviour, memory ownership, and too many (bad) choices are all things that beginner C++ developers have to worry about. There are so many pitfalls to avoid (that beginners would have to unlearn) that starting with C++ is probably the last thing I would recommend.
|
On October 27 2012 21:57 Incanus wrote:Show nested quote +On October 25 2012 07:37 CecilSunkure wrote: As for all the people saying C++ is ambitious, I don't really agree. Being afraid of memory management and pointers isn't something I feel a professional software engineer (especially one that wants to work on game development) should ever be afraid of. Starting to learn by running straight into both C and C++, I feel, are great ways to build a strong programming foundation. No, knowing about memory management and pointers prepares you pretty well for C. C is a fairly small and basic language. However, being a competent in C++ involves knowing a shitload more than that. C++ is a beast with tons of C++ exclusive features and quirks. Undefined behaviour, memory ownership, and too many (bad) choices are all things that beginner C++ developers have to worry about. There are so many pitfalls to avoid (that beginners would have to unlearn) that starting with C++ is probably the last thing I would recommend. Pretty much that. I haven't seen anyone yet who started programming with C++ and wasn't godawful at it. Me included. It took me ages to learn proper C++. Not so much because it's hard (it isn't THAT hard actually), but because there are only very few resources that teach you proper C++ from the very beginning. And an article on TL just can't teach proper C++ due to length restrictions. Languages like C#/Java force you to avoid most of these pitfalls that turn you into a crappy programmer. That's the one of the main ideas behind their design, after all. You still should read up on pointers when you learn C# anyways, or else you will run into issues with reference types and value types. Then when you make the switch to C++ you will find that emulating the designs you know from C#/Java leads to pretty solid C++ code.
I'm not hating on C++ by the way. I like it a lot. I just hate crappy C++ code, and might as well suggest people to take the easier approach.
|
Hey,
you could write a List of game engines with some comment to each entry. Especially those you have already used.
Here is mine (fyi): - JMonkey (I used it in Version 2.something) Neat 3D engine written in Java. Rather basic features so a lot of hand work to do. I believe Minecraft is written with JMonkey. - Gosu 2D engine written in C++ and Ruby. Very very basic but therefore lean. It is surprisingly fast (ruby) but has some weird bug with sound and process termination (windows) - Chingu 2D engine based on Gosu. Very high level artifacts with convenient classes, methods etc. Has a trait model to write you own "kind-of-extensions" to the engine. - JGame Basic 2D game engine in Java. I have near-to-no experience with it, so not much to say. - XNA 3D game engine from MS. Easy conversion between PC and XBOX. Games can even be published on XBOX platform if they are approved by some instance I don't remember. I used it for a 2D game, so i cannot say too much about its 3D features. 2D features are very basic (rather horrible).
XNA has some restrictions on when it is free and when not. I do not really remember the specifics. All the others are open source and free to use.
|
|
On October 29 2012 10:22 thedeadhaji wrote:if this goes well, maybe you can consider flushing it out and publishing an ebook An ebook hmm? Do you have an example I can check out of what you mean?
|
What experience do you have as a game programmer?
|
Any chance we could get some networking stuff in there?
|
Thank you so much for all these blogs and especially for the awesome article thats going to get released! (And +1 for please include basic networking :D )
|
Always wanted to progress my programming knowledge further by programming video games. Can't wait for this xD
|
Any chance we could get some networking stuff in there?
He already said he won't cover networking stuff-but for the heck of it: Can you give some insight on networking?
In all srslynss, I have yet to see the text that can gap the bridge for people, good luck with that! I think I will mostly take some teaching advice from this if you happen to pull that of.
Kudus and good luck
|
Add me to the list of people who are super excited about this! Any idea of when we'll see it?
|
On November 05 2012 00:18 MilesTeg wrote: Add me to the list of people who are super excited about this! Any idea of when we'll see it? Any time
|
|
|
|