Choosing your game's technology

Started by
15 comments, last by 21st Century Moose 12 years, 6 months ago
Howdy!

New to the forum. There is lots of info on here, still trying to fish through it - There are so many developers on here it's great to see such a grand community, cant wait to dig in and participate.

I used to code all from scratch years ago in C++ & opengl, and now I want to make a game that is somewhat cross platform...Any suggestions on technologies to use or some quick pros and cons on the techs you use yourselves? The choice is large and ever changing;

Any heads up would help, or if you just want to shout back.. haha

Thanks!

goulz
--goulz
Advertisement
[font="Arial"]I should specify that I am interested in building a fast-paced 3D game...:P
Looking at XNA, LWJGL, Unreal Engine 3, older id techs, etc...
L
ooking for some ideas and comments[/font][font="Arial"];

Cheers!
[/font]
--goulz
[font="arial, verdana, tahoma, sans-serif"]You could use SDL or SFML because they provide a cross-platform windowing system that you can integrate with OpenGL.[/font]
sfml trumps sdl , reasons : sfml is constantly being updated/improved , has full documentation + examples, object oriented, you can suggest a certain functionality you want and if the devs like it they will add it in. + alot more cant think of them right now.

[--snip--]
[font="Arial"]1) I should specify that I am interested in building a fast-paced 3D game...:P
[/font][font="Arial"][/font]



1) "Fast-paced" isn't really a helpful criteria when deciding whether to roll your own engine or use an existing one - unless, of course, you meant 'fast paced' as in 'fast paced development' (but I assume you did not?). My recommendation falls on UDK or CryEngine 3 as the current top-of-the-line -- all that may change depending on what more you have to say about what your actual goal is (that it's 3D certainly falls in line with using an existing engine and in most cases, without fail, that is what I would recommend -- but there are certain off-the-road exceptions that may or may not apply to you).
"I will personally burn everything I've made to the fucking ground if I think I can catch them in the flames."
~ Gabe
"I don't mean to rush you but you are keeping two civilizations waiting!"
~ Cavil, BSG.
"If it's really important to you that other people follow your True Brace Style, it just indicates you're inexperienced. Go find something productive to do."
[size=2]~ Bregma

"Well, you're not alone.


There's a club for people like that. It's called Everybody and we meet at the bar[size=2].

"

[size=2]~

[size=1]Antheus

sfml trumps sdl , reasons : sfml is constantly being updated/improved , has full documentation + examples, object oriented, you can suggest a certain functionality you want and if the devs like it they will add it in. + alot more cant think of them right now.



Umm.. I'm pretty sure SDL is also being updated and improved as we speak they are implementing SDL 1.3 which will come with hardware rendering. SFML does come with Object Oriented design, but it is also kindof annoying because I would much prefer to use my OWN design and work with that instead of use someone elses. But there is a CSFML I know, and SDL has full documentation and there's tonnes of tutorials and books on SDL too, so I dont know why you're going on about that.

The only thing that SFML does do that SDL doesn't at the moment is that SFML uses OpenGL out of the box with it's class design and such, but SDL has the ability to work with OpenGL just as well as SFML. Oh and btw the only platforms that SFML support are Windows, Linux and Mac OS (Mac very so slightly). But SDL supports: Linux, Windows, Windows CE, BeOS, MacOS, Mac OS X, FreeBSD, NetBSD, OpenBSD, BSD/OS, Solaris, IRIX, and QNX. The code contains support for AmigaOS, Dreamcast, Atari, AIX, OSF/Tru64, RISC OS, SymbianOS, and OS/2, but these are not officially supported.
Instead of LWJGL use http://jmonkeyengine.com/.

Instead of straight up XNA use any engine found on this page: http://www.nelxon.com/191/xdsk/.

Engineering Manager at Deloitte Australia

I don't think the pros/cons of tech I use myself, is very helpful.

What you want, is tech which suits your *team*. Your team must have at least someone on it, who is sufficiently familiar with the tech that they are confident it will work (ideally done similar with the same or similar tech before).

Anyone can preach about their favourite language / API / pattern / methodology / method-of-religious-worship. But what really matters is what works for you, and what is likely to work for you.

You probably don't have a lot of time to evaluate a lot of options, and the cost of making a bad decision (which your team can't work with) is very high, so you want to be conservative about it.

If your team has a programmer who reckons that using the-latest-newfangled-stuff-which-has-not-been-released-a-week-yet is a good idea, ignore them. Go with what you know will work, even if it isn't (in someone's opinion) "The best". Because making a BAD decision is what you want to avoid.
If you want to make anything cross platform then these are completely out-of-the picture:
  • Anything directX or related to directX
  • Anything crytek
  • UDK, unreal engine 3
  • XNA
  • Unity

I recommend, that if you are building a game from scratch, to go with SDL and OpenGL. It is cross-platform to areas beyond Windows, Mac, or Linux. Or if you really want some game engine, I recommend either OGRE or Crystal Space. Also, ID tech engines are REALLY good. Though I'm not sure about the difficulties and/or restrictions upon using those engines.

The thing about those Commercial game engines, is that they're usually, if not always, windows only, using things like the win32 API, directX, etc. My advice is to stay away from those.

If you want to make anything cross platform then these are completely out-of-the picture
  • XNA
  • Unity


That would depend on your definition of "cross-platform." XNA runs on Windows, XBox 360 and Windows Phone. Unity runs on Windows, Mac, web browsers, and, if you're willing to buy the license for them, iOS, Android, Wii, PS3, and Xbox 360.

This topic is closed to new replies.

Advertisement