About to get started; seeking advice

Started by
3 comments, last by IcedCrow 10 years, 8 months ago

So for a few years now I've been kicking around ideas and talking about how I'm going to create this game idea, and I've decided that if I wait any longer I probably won't do it at all. I've done a fair amount of research into some of the "popular" engines, libraries, frameworks, etc. and I've all but decided to go with C# and SlimDX. But, before I finally jump in with both feet, I wanted to see what some others have used and/or started with and get one last round of second opinions and input.

I've been writing software in a variety of languages (primarily C/C++ and Java, though unfortunately as of late, PHP and JS) for almost 20 years, so the design and programming aspects aren't going to be a (huge) hurdle -- though I am more rusty with C++ than I'd like to admit. I've also played with XNA and HLSL a bit and wrote a particle system that could kick out 2m particles before dropping below 60fps on what was modest hardware a few years back, but that's about it.

I've briefly looked at a few of the offerings out there after realizing XNA is no longer supported, but so far none have really grabbed my attention. Unity seems to be the current hotness, but it looks and feels too much like a Flash player/editor for my tastes -- I generally prefer to be as close to the metal as possible without making things overly tedious, and engines like Unity have a tendency to sacrifice that fine-grained control for "easier" higher-level logic and a wider breadth of support/coverage. C# and Java seem to be nice compromises in that regard, which is what steered me to the platform on which I've decided.

So, that's a bit about where I'm at. Any advice, recommendations, pitfalls to avoid, horror stories, etc. would be welcome.

Thanks

-C

Advertisement

XNA is not being actively developed any longer, but anything you could do with it before will still continue to work.

If that doesn't suit you, but you did like using it, you could use MonoGame, a cross-platform implementation of XNA. The only caveat is a lack of a content pipeline, for which there's a workaround and a few third party solutions floating around in Google.

I didn't find it until I was well on my way, but RB Whitaker's tutorials look like an excellent resource for picking up XNA, and he's in the process of converting them to MonoGame as well. There's also a crash course on C# that could be useful as an overview to getting settled in the language.

For any other options, I'll let someone more experienced with Java or SlimDX provide you with resources on those.

All I can really say now is to pick something sooner than later, and get your hands dirty with it. Even if you wind up changing technologies later, pretty much anything you learn will transfer over.

Since you know C++ and/or go for C# I'd recommend looking into SFML (C++ with C#/Java and other language bindings) or Allegro if you just want to do C++.

If you decide to go for C# still I'd recommend you try and learn how to do Data Driven Design and implement Artemis (http://gamadu.com/artemis/).

It's orginally Java but ported to C#.

Good Luck!

CEO of Dynamic Realities

I wrote 2 games in Java: Pong and a simple arcade shooter. It taught me a lot about state of the object. Very important concepts in games. It also taught me a lot about time management. Literally I had to use all my time and attention into the arcade shooter game because a lot of the features I never solved before in college. It is very difficult to estimate time on a feature. So features are somewhat initally complicated. It was a fun personal project.

As for horror stories, I find 4 game breaking bugs. Forunately all of them are gone!

As for advice: just get started! Don't brainstorm for too long. I made the mistake of doing that for 2 months. While the ideas all make it to the game, I could have finished the game much sooner.

Java has a pretty cool built-in library that handles the graphics side of things for you. So that would be a great way to start with.

If you want to write a game engine there are plenty of options. XNA will still work even if its not supported.

If you are not wanting to write a game engine and want to get into game design itself, look up Unity. It's fantastic.

For more on my wargaming title check out my dev blog at http://baelsoubliette.wordpress.com/

This topic is closed to new replies.

Advertisement