   Looking for some direction.....
  Hey everyone, i've posted on this board only once or twice before so please excuse my terrible questions. Lol.  Anyways, originally i came here posting about how i should go about making a 2d game and or how to make graphics for it.  Since then, i have read many posts here and found that my dream to make a simple 2d hack n slash is far from close lol.  But i have been taking the advice others have gotten.  So, since my last post, i have brushed up on a lot on my C++, Purchased a reference book for C++, and successfully programmed tetris in SDL.  I also fooled around with a dungeon crawler in some really lame 2d graphics.  You couldn't attack anything and there were no animations, but it was a good experience.  All in all, with tetris done (everyone suggested finishing this and pong.  I didnt try pong, but i figured tetris would suffice.)  i was just wondering where to now.  I feel like investing any more into SDL would be a waste.  Im not sure how advanced SDL gets, but as far as i have delved, it seems like it might not be a place i should spend too much time in.  I understand that it is a good library(if thats the right term) but i would like something with a little more support(tutorials, advanced tutorials, etc), something that supports 3d, and is up to date.-edit-Im wrong.  After a bit of thinking after my post, i decided to go in and google around for some games made with SDL, turns out, the newly acclaimed World of Goo was made with that, along with several other great games.  I guess several of my questions no longer apply.  And im sure if i delve further i can find more advanced tutorials and resources i wasn't aware of.-end-I am just trying for 2d, however, if i am going to invest weeks, months, etc into a programming language and a library, i would like to have the option to continue with it if i feel the need to.  I looked into DirectX, it seems maybe i'll jump into that, but would that mean all the engine work etc i would have to personally code?(later on if need be)  Or should i purchase a cheaper engine package like Garage Games has(TGEA, the torque engine) or even a free one, like the older unreal engine.  Im not sure exactly what an engine does, or how to use one.  But im guessing its a lot like SDL.  A library with a set of functions to carry out commands.  I have also done some 3d modeling with blender and 3ds max and plan on exporting my meshes, models, etc using one of them.  For 2d i plan on rendering the animations characters etc and exporting them in something like jpeg format so they are 2d and loading them into my game.  So, where should i spend my time?  DirectX?  An engine of some sort? Both? Its my understanding that things like the torque engine have their own ways of coding, building games, etc.  So wherever i spend my time, i just would rather not run into a wall and have to spend all that time relearning some other format or way to make a game.  -edit-I see you can program with both SDL and DirectX.  Which does what? SDL is described as "provide low level access to audio, keyboard, mouse, joystick, 3D hardware via OpenGL, and 2D video framebuffer."  And DirectX provides direct access to hardware. Correct?  So which does which? And whats my best route?(Multi platform is not much of a concern and windows xp is what i use.)-Thanks in advance everyone.  : )[Edited by - enragedmrt on June 24, 2009 12:58:31 AM]
  hey,i'm a beginner too and i've been in that boat.always wanted to make an rpg and just didn't know where to start...until i had (and wanted) to take a directx programming class at school.we used a book and programmed some of the example games.there are many working demo sources on the internet that can get you started.with directx you have a plenty of freedom. i've tried every game engine ever made but nothing gives you as much control and satisfaction as making your own game framework. I heard that C# makes you programm directx like butter.   ;  Your best bet now is to work on an established development team looking for programmers that are beginner/intermediate level. There are more than you might expect.Anyway, the idea here is that you can work with more experienced programmers to see how they do things. One of my developers joined my team with only minimal knowledge of C++ but much more in Java. By jumping into the code and writing an implementation than having me go through it and clean things up, make corrections or use a different solution he began to see how things could be done. It also helped him a lot when we would just chat together about a particular problem.Experience like that is invaluable and is often missed by many beginners (myself included and I could kick myself for not having tried it earlier).To answer your question about SDL vs DirectX, SDL uses DirectX on the Win32 platform -- it's basically an abstraction layer providing a seamless and consistent API to make thing very easy for you (as working DirectX can be hairy when you're just starting out with it). Also, SDL stands for Simple DirectMedia Layer. It is quite appropriately named as it's extremely simple to use yet provides a great deal of power and flexibility. It's also cross-platform and DirectX is not. If you're looking to create games that are very easily ported to many other platforms, SDL is probably your best bet. If you don't care and only want to work with Win32/XBox, than DirectX may be a better fit.   