2
\$\begingroup\$

As an application developer, I plan on now getting started in game development so I have come along to this site.

I am a proficient C# developer so I guess it makes sense to start game development in the same language, unless someone directs me otherwise.

I'm looking for some "getting started" type of tutorials that cover basic game architecture and essential physics such as collision, velocity, gravity, friction etc.

I know about XNA and physics engines such as farseer but, at the moment, I'd like to get started without attaching myself to a particular framework or set of classes.

Please let me know of good resource, tutorials, etc. that will get me started in this manner.

\$\endgroup\$
8
  • 1
    \$\begingroup\$ You should really start with XNA and probably don't even bother with physics in the beggining. And if you start with XNA then -> create.msdn.com \$\endgroup\$
    – Kikaimaru
    May 3 '12 at 11:21
  • \$\begingroup\$ @Kikaimaru Thanks, but I am interested in the physics and I don't want to use XNA at this time. \$\endgroup\$
    – Ste
    May 3 '12 at 11:25
  • 2
    \$\begingroup\$ You'll need to use some API for rendering, otherwise you won't be seeing the effects of your physics simulation. You say you are proficient in C#, but do you have any experience with graphics in C#? It could be for instance, just plain old GDI in WinForms, a DirectX wrapper like SlimDX or SharpDX, an OpenGL wrapper like OpenTK, or a game-oriented framework like XNA. Doesn't really matter which, but you'll need to learn at least one graphics API, otherwise how do you expect to see your physics running? \$\endgroup\$ May 3 '12 at 11:36
  • 2
    \$\begingroup\$ Then the suggestion to use XNA is quite valid. Take a look at this. This is the amount of code you need to add to an empty XNA project to get it to render a sprite. And that's pretty much the extent of what you'd need to learn from the framework in order to to play around with physics. In comparison, it's a lot less work than any of the alternatives I mentioned. \$\endgroup\$ May 3 '12 at 11:49
  • 1
    \$\begingroup\$ By the way, if your plan is to make a game (even physics based game) then do NOT create your own physics engine, just use existing one. \$\endgroup\$
    – Kikaimaru
    May 3 '12 at 12:20
1
\$\begingroup\$

I know about XNA and physics engines such as farseer but, at the moment, I'd like to get started without attaching myself to a particular framework or set of classes.

You'll need to use some API for rendering, otherwise you won't be seeing the effects of your physics simulation. You say you are proficient in C#, but do you have any experience with graphics in C#? It could be for instance, just plain old GDI in WinForms, a DirectX wrapper like SlimDX or SharpDX, an OpenGL wrapper like OpenTK, or a game-oriented framework like XNA. Doesn't really matter which, but you'll need to learn at least one graphics API, otherwise how do you expect to see your physics running?

I guess I'm trying to avoid using too large a framework that will do too much for me.

Then the suggestion to use XNA is quite valid. Take a look at this. This is the amount of code you need to add to an empty XNA project to get it to render a sprite. And that's pretty much the extent of what you'd need to learn from the framework in order to to play around with physics. In comparison, it's a lot less work than any of the alternatives I mentioned.

So if your intent is just to get your hands dirty with physics, I'd recommend learning the bare minimum required to do some rendering in XNA; and then try and play around with Velcro Physics (formerly Farseer Physics) for instance. Shouldn't be hard to find some tutorials by googling.

\$\endgroup\$
1
  • \$\begingroup\$ That's brilliant, thanks, David. Hopefully I'll be back soon with some sensible questions. \$\endgroup\$
    – Ste
    May 3 '12 at 12:07

Not the answer you're looking for? Browse other questions tagged or ask your own question.