You are not logged in.
Here is what I know:
-C++
-C#
-Java
-Pascal
Skill level: I know my way around Java. I know fundamentals of C++ and C#.
What I want to know: Since I only really like the C style syntax which one of the three is best to make games with? My first thought was C++ for speed but what do I program in? DirectX is out of the picture and the only other thing I can think of is OpenGL. C# I did a XNA game in but does it do OpenGL or something else? I'd love to do it in Java but I'm a bit confused. I've seen post say j3d is dead and some say otherwise. There is also JOGL, but is it any good.. didn't see any tutorials for it either. I actually made a 2d game using a thread and an awt applet but that's only 2d, I'm lookin for both 2d and 3d.
What is my next step?
Offline
it depends on the type of game you want to create.
for a small 3d game, java, c#, and c++ are all good choices. I would go with opengl or sdl for the library. Although there has been progress in directx support in wine.
Also: for your next step, create a pong clone, tetris clone, pacman clone, mario clone if you're into 2d games. You should also add per-pixel collision support into your 2d games.
Another edit: If you haven't already, get a couple of books on the subject. If you're going to choose opengl + cpp get yourself a good cpp book, a opengl book and maybe a game programming book that deals with cpp/opengl programming. C is also another option, a lot of games use C. And also, if you do choose C/OpenGL, I would recommend getting the blue book for opengl programming. (it comes with a complete reference, a very good tutorial (like 20 chapters), and it also abstracts the platform dependent code using freeglut as an option.)
Last edited by tomd123 (2010-01-03 21:49:11)
Offline
I would highly recommend the Allegro game library. I've been using it for many years and I love it! It is in active development. It was made in C, and so it is very easy to use with C, C++, and my favorite, Objective-C. It has functions for 2D and 3D games. For 3D, it uses OpenGL as a back end. It comes with great tutorials and has a great and active forum and wiki.
The Arch package is called "allegro". That is the 4.x branch. There is also a 5.x branch, but I wouldn't recommend it yet, because it is still under development.
Allegro home page:
http://www.allegro.cc/
Allegro manual:
http://www.allegro.cc/manual/
Please let me know if you have any other questions about it!
Offline
Along with the other suggestions on reading, I would suggest using D and OpenGL/SDL through the Derelcit bindings. It's very C style syntax, but has some nice features and the new language spec will be coming out soon.
Offline
Thanks for all recommendations. D looks very interesting... never heard of it but from the features it looks great. I'm looking into Allegro, OpenGL and SDL now.
Offline
SFML is a very good alternative for sdl if you're going the c++ route.
Offline
SFML is a very good alternative for sdl if you're going the c++ route.
I can second that. However - SFML is more like a toolbox than a complete game engine, but I like it, because I can organize things the way I like . Of course it works with OpenGL.
Some applications are WYSIWYG, and some are WYSIWTF.
Offline
Have a look at Irrlicht. It's just a graphics engine but it's quite easy to use and has bindings for a few languages and coding the physics and logic is the fun part It's written in C++ so that's probably the best one to use.
There's also Irrklang - a sound engine which goes with it but only if you're running in 32bit Arch.
Do you ever get that "Oops" feeling?
Offline
IMO ogre is better than irrlicht. For studio quality games you can learn unreal script and use the UDK
Or learn C++ and mod a steam engine.
Offline
I first started with C and quickly moved to C++ then a year or so ago I learned Python. Its now not just my favourite cross platform language but my favourite language for everything Complex things that used to take lines and lines of code in C++ are now simple with Python and take less lines of code.
For gamedev I use pyglet for windowing/multimedia, pybox2d for physics and squirtle for rendering svgs.
Pyglet
http://code.google.com/p/pyglet/
Pybox2d
http://code.google.com/p/pybox2d/
Last edited by dabski (2010-01-06 00:16:59)
Offline