Game Development Community

What a "game engine" is....

by Richard Ranft · in Torque 3D Beginner · 03/23/2014 (1:49 pm) · 39 replies

Stop. Before you start to even put it together in your head let's make an analogy.

"Engine" gets thrown around a lot but people don't stop and really think about it that way. If I hand you a V8 350 Vortec engine and say "here's a car engine, make a car" you'd think I was insane. "But Rich, I haven't the faintest idea how to build a car starting with just the engine!" I KNOW! I know, and just like most people couldn't build a car from just an engine, so most people can't build a game from just a game engine.

It serves basically the same purpose; it provides everything that "powers" the game, but alone it most assuredly is NOT a game.

So, given an "engine" you must now build a frame, suspension, drive components, body, interior, accessories, all of the rest that make up a whole "car" - your game. You need skills in story writing, cinematics, 2d and 3d art, rigging, animation, sound engineering and mixing, recording, programming (scripting and engine-side c++), math (most of this is handled already, but there are things you might want to add that require some higher trigonometry or calculus), UI design, and a whole slew of other disciplines if you intend to make a good game. This is why every AAA game out there has a team of 10 to 100 people working on it. If you're a solid Jack-of-all-Trades you can produce a great "indie" game on your own - expect it to take time. A lot of time.

I'm just trying to lend a little perspective to some of the ideas flying around here lately....

About the author

I was a soldier, then a computer technician, an electrician, a technical writer, game programmer, and now software test/tools developer. I've been a hobbyist programmer since the age of 13.

Page «Previous 1 2
#1
03/23/2014 (2:20 pm)
Well the engine you end up using creating your game doesnt even matter. What matters is that you create that damn game.

Even being a Jack of all trades doesnt mean that one will achieve its goal, simply because there is the factor - real life and the 2nd if not the most important factor - time.
Look at these 2 and you will realize why things have gone the way they did and why things never saw light.

We tend to forget that as a indie you are not only independant, no you are on your own.
How many ppl here would actually like to create a game and how many are even able to do so?!. nah dont answer, we know the mighty 1% percentage rule.

There is a reason why ppl never finish or move over the finish line with their game. @Richard you have actually nailed it
and i think my 2cents with real life and time are the rest.


It would be nice if we could stop calling things AAA but we wont, simply because we are used to believe that AAA Games are selling good and playing good but newsflash its actually teh opposite
these days indie games are the thing. How many AAA games go totally unoticed, simply because the gaming scene is sick of unpolished/ buggy
and repetative gameplay.
So instead of focusing on creating the next AAA thing, why not start out like in the good old days.

The game matters - the rest is just well
fancy things, you could even take idtech1 (quake1 engine)
and create a succesfull selling game. The Engine really doesnt matter
#2
03/23/2014 (4:15 pm)
Well said, Richard.
#3
03/23/2014 (8:06 pm)
Ya all know my opinion since I have been... oh so 'subtle' about voicing it ;-) Nice to see I am not alone! Thanks guys

#4
03/23/2014 (8:41 pm)
Part of it is that you have games like the Mass Effect series - ostensibly "AAA" games - that don't have most of the features I've seen listed recently. The Mass Effect games have issues, mostly with the extensive animation systems they built to support their storytelling modes and with their combat movement systems (the problems here vary from game to game) - but that's all stuff that falls firmly outside of "engine." The renderer wasn't doing anything special, sound was standard stuff, everything in any of the three games could have been done with Torque 3D instead of Unreal.

People are asking for things to be added that are already in Torque 3D because they aren't even familiar enough with it to know what it lacks. Get to know it before you start hammering at what it needs and how badly it needs it. There are already people working on these things (those GREED folk, the DX11 guy, the Linux guys, the PhysX guys) and they're all pretty familiar with T3D - so they know what they're about when they say "hey, we should have this thing in here."
#5
03/24/2014 (5:26 am)
Quote:
The renderer wasn't doing anything special, sound was standard stuff, everything in any of the three games could have been done with Torque 3D instead of Unreal.

Now Ranft, I have actually been playing around with UDK(the light version of Unreal) back then. Only the 25 procent revenue did make me go away(remember that I am a Torque 3D 1.2 owner). UDK was, is and shall be a good engine but the licensee is let us say diabolic.

Now I have tested the Unreal 4 engine for like 3 days now(Coffee and very little sleep O_o).

I must say this, the interface design of this Unreal 4 is like a dream. The vast amount of tutorials are wonderful, the workflow seems to be very streamlined(I can still change my mind but so far I am happy).

With regards to the code base of the Unreal 4 engine then it is huge compared to Torque 3D... might be that it comes with so many plugins and addons and the many multiplatforms support as well.

The rendering is indeed doing something special as it supports PC(DX11), MAC, OIS and Android.

Another thing to point out is that the Unreal 4 engine also support up to 10 cores...

Unreal 4 even comes with drag and drop animation to model rigging.... I foresee a lot of time can be saved here.

The new license model Epic Games is offering is fair and acceptable so to say(at least I find it fair).

Torque 3D is very fine engine for making games for Windows as it is now, but many other game engines are currently offering multi platform support, DX 11 support, up to date OpenGL, built-in AI(no plugin needed), a very nice particle/effect systems etc.

I love Torque 3D(I mean I have spent many nights with that engine... did I just write that?), but I must bow for the unreal reality and that is that Unreal 4 seems to be a very well built game engine. I also like that Visual Studio 2013 is all that is needed to start coding away. No Torsion in sleeping state(Okay here Komodo Edit with a TS plugin(thanks to Thomas -elfprince) is great instead). Though Torsion is a fine tool after all.

The problem with Torque 3D is that it have been left behind when it comes to multi platforms support, DX and OpenGL development for some time(granted now something happens). All this Unreal 4 and other formerly expensive game engines have.

If GG was not so hard hit by the Unity free version on the market back then, then Torque 3D might had have these features now. Making game engines are more than just programming and development. It is also about strategy(making the right decisions at the right time... which is not that easy as many think) and business war. It is about survival. No cash flow means less people to hire and hence less features to implement.

Epic Games are making a very smart move here with a very good product that without doubt will make Unreal technology stay in use to years to come(that is what makes a game engine company survive).

Torque 3D is a fine engine but it is not able to compare with Unreal and Cry engine feature wise as it is now. However Torque 3D MIT with AFX is a fine and useful tool for small teams and single developers.

Also if you do not believe in that then I suggest that you pay 19$ once, download it and play around with the game templates(yes it comes with some really nasty game templates to show what it can don) and dig into the source codes.

Also for small companies using the "there can be only one" game engine is very bad. However playing around with too many tools might slow down the production.

Torque 3D is a fine game engine and it does what is does well(if we learn to accept its quirks that is :O)). However other game engines out there will also do.

But as I mentioned some more testing will have to be done with this Unreal 4 engine(I really need some more manpower here... O_o).

oh and you posted this in the Torque 2D forums... shouldn't this have been under general discussions?
#6
03/24/2014 (6:07 am)
Moving this to the Torque 3D forum, since that seems to be the obvious engine target for this discussion. Funny how Torque 2D always seems to be left out =/.
#7
03/24/2014 (7:24 am)
Hah! Thanks Mich (though my original post didn't mention either one). It's sort of a general thing but T2D doesn't seem to be suffering from the same feature clamor that T3D is at the moment....

A great game is defined by writing and gameplay mechanics, not engine features. This is my point.

@DwarfKing - Yes, the newer Unreal Engines have some amazing features. Mass Effect (the original) was probably Unreal 2 tech and ME2 and 3 might have been UE3. My point is that those games could have been made with T3D and no one would have known the difference. A game production team either writes the entire game codebase from scratch or they take an engine and modify it for their game. They didn't say "Unreal Engine doesn't have the character animation system we need for our cinematics. Epic, you must add this extensive animation system or we can't make our game with Unreal Engine! We'll use CoolOtherEngine Pro instead!" They added what they needed and carried on with making their games.

Yes, UE3 and 4 are very advanced. I agree that it's a fine package. Plenty of horsepower, the tools are nice, it's pretty and modern. You still have to make a game - it's not going to make itself. My main point is that none of that really matters if you can't (not you, personally, but in general) make a game to begin with.

So basically, we're back to my original post - If I hand you an engine can you build a car from that starting point? The same people who "can't build a game with T3D's limited features" can't build a game with UE4, or CryEngine, or Unity3D or anything else. The engine features don't define the game.

And don't get me started on the whole platforms thing - if you can't make a game for Windows you can't make one for Linux either. Market statistics are pretty solid - no one could possibly need Linux support for their game to succeed commercially (or not in a way that T3D hasn't at least been able to pull off forever - stand-alone server functionality has always been doable). Would it be nice? Absolutely. Do you need it to make a great game? No.
#8
03/24/2014 (8:21 am)
Wiki pedia says a game engine is "a system designed for the creation and development of video games. The leading game engines provide a software framework that developers use to create games for video game consoles, mobile devices and personal computers. The core functionality typically provided by a game engine includes a rendering engine (“renderer”) for 2D or 3D graphics, a physics engine or collision detection (and collision response), sound, scripting, animation, artificial intelligence, networking, streaming, memory management, threading, localization support, and a scene graph. The process of game development is often economized, in large part, by reusing/adapting the same game engine to create different games,[1] or to make it easier to "port" games to multiple platforms"

As for what is right for a certain project or not is up to the developer. Some may prefer the set up that unity has, some may prefer source and like what T3D/T2D has to offer, again up to the developer.

Now what the individual(s) do with the engine is up to them. Some can decide to learn and create something, some can wish upon a feature!

Though having nice shiny features can make a game stand out but game(s) have and always will be based off gameplay (hint the word "game")...The other stuff is secondary.

My issue is of course "time". Plus having a family is REALLY demanding. That's why I seek a lot of freelance help!
#9
03/24/2014 (9:38 am)
" can't build a game with UE4, or CryEngine, or Unity3D or anything else.' - that's not true and I will explain why, and take any abuse coming. I'll mention the dread Unity. Non-coders and artists have built games with Unity back when it first began, it's why it is so successful, why it was so successful then and now. To do this these developers had to code. They had to code the full game and they could do this with no programming knowledge before touching that engine. Not because they had kits or could press a button. This was back when Unity was the bare bones. They could do this because of the object/component system, a similar system someone here tried to raise money through kickstarter for but failed. This can be done because a non-coder can throw a script component on an object, say a camera. The inheritance is very shallow, so all someone has to do is figure out the 4 lines of code that will move that camera object, or will stick it to the shoulder of a NPC. They then move on and throw another script component on a door and then only have to figure out the six lines of code to create a trigger that will open that door as objects can speak to objects no need to go through a complex game manager. Unity takes care of the main game loop. Game managers do no more then instantiate and activate objects. Entire games can be developed using pass the parcel logic. But it doesn't have to be that way, the system is totally flexible it can be programmed exactly as a game in T3D would be. It takes work and it takes time but the incremental improvements seen when the play button is pressed encourage people to continue and to experiment and drives them on. Whether they make a good game or a piece of junk is nothing to do with the engine.
#10
03/24/2014 (10:55 am)
Sure JED - some engines are easier to use than others, I'll give you that. But what you're describing there has more to do with the underlying architecture, the way the engine was built, more than about how many cool shaders it uses or how the renderer functions. Things like this are what people in the T3D community have seen a need for and begun working toward.

But I'll reiterate - The engine features don't define the game.
#11
03/24/2014 (10:59 am)
Quote:
So basically, we're back to my original post - If I hand you an engine can you build a car from that starting point? The same people who "can't build a game with T3D's limited features" can't build a game with UE4, or CryEngine, or Unity3D or anything else. The engine features don't define the game.

I realize you're trying to make a point, but this is just overly dramatic. Some features DO limit what you can achieve. In a general sense (especially when you only consider smaller games) it doesn't matter but in some cases it does.

If it didn't matter, no one would pay for UDK or CryEngine. I love Torque as much as the next guy, but let's be realistic here; you're much more productive in Unity or UDK and that's why they can charge money for their tools.
#12
03/24/2014 (11:50 am)
@Richard - I know it's the underlaying architecture but that architecture is the game changer. Because people who can't code can code a game in Unity but not in torque and not in UDK. Once that is accepted and understood possibly a way forward for an engine like this can be found. I'm not bringing this up to shut Torque down I'm pointing it out because the more information one has, the more closer to understanding a thing the easier it is to find a solution to combat it or to pull things back, the easier to make a strategy for dealing with it.
#13
03/24/2014 (12:03 pm)
@Everyone,

Yep, wiki states what a game engine is. Yep, Unity does things that even a 'beginner' can do. I think... (and this is just my opinion) what Richard's idea for this post was, T3D is NOT Unity, if you really think you can do your game in Unity, then by all means do it. If you want T3D to BE Unity (or any other engine) then perhaps you may want to rethink using T3D. It is VERY easy to be swayed by T3D being free (MIT) but, this does NOT mean T3D is the right engine for your game.

If you KNOW you can do your game in Unity then by all means USE Unity or UnReal 3 or 4, CryTek, or whatever you NEED. This is not a complex thought process. Game Development needs to be about your GAME not about the engine. If you have enough confidence in your ability with engine X,Y or Z then USE it. Make your game, become rich and a powerhouse in the game dev world. On the other hand;

If you want a FREE engine with Source Code (and if you are a decent Coder, Scriper and Artist) and want a challenge and the ability to TRULY make a 'new game' then T3D is likely your route. It may not be. NOTHING WRONG with that.

As for the 'non-coders can code a game in Unity' NO... They... can't...

They use a simple template that anyone else can use. They MOD. They don't make unique games. I am going to go out on a limb because I don't care what people think.... Unity is popular because is allows the user to THINK they are game developers, not FORCE them to BE game developers. There has been more 'Shovelware' from Unity than nearly any other engine I can name because of this. Nothing unique, nothing really amazing game play wise. Unity gives the user EXACTLY what they want. Nothing wrong with that at all. T3D is not and (GOD forbid) will it ever be a Unity clone.

In the end, pick a game engine that meets your needs. If your idea is solid, then your game will 'make it'. A game engine is a tool, not a solution.
#14
03/24/2014 (12:45 pm)
Sure. So, you can't make a game if the engine you want to use doesn't have DirectX 11 or OpenGL 3 Tesselation and Displacement? Or GPU Powered Particle Simulation with Collision? Or it doesn't run on Linux? Can't be done? Of course it can.

If another engine has everything you want in it then use it. I'm still saying that the features don't define the game - the gameplay does. Sure, it's easier in some engines than others. T3D was not born as a game development kit - it was born as a game and was molded into a game engine. Unity was born to be easy to use and they've done a great job of it. Still doesn't guarantee you'll make a great game in Unity. What makes a game great isn't the features of the engine. If your game is great, it'll still be great if it can't run on Linux (you just won't be able to share it with a few percent of the world).

Otherwise, what it sounds like is that the Mass Effect franchise would have flopped if they hadn't had support for lens flare in the engine. Seriously? Everyone is all up in arms over this post for some reason, but all I'm saying is that if your game will fail without DX 11 support then you might want to reassess your game design. What I keep hearing is akin to stating that a book will never sell if it's not printed on #20 vellum. Because we all buy games so we can analyse the particle systems or the materials, not so we can enjoy the gameplay or the story.

Quote:
I realize you're trying to make a point, but this is just overly dramatic. Some features DO limit what you can achieve. In a general sense (especially when you only consider smaller games) it doesn't matter but in some cases it does.

Quote:
This is why every AAA game out there has a team of 10 to 100 people working on it.

Game engines are middleware - of course you'll have to modify them to fit your particular needs.
#15
03/24/2014 (1:41 pm)
Lens flares? Yeah, bet that was it. Or maybe it was the superior tools..
#16
03/24/2014 (1:44 pm)
My 'LIST' of 'TOOLS'

I have just made a new blog to both comment on this thread and bring up some points concerning all 'game engines'.

www.garagegames.com/community/blogs/view/22655

I hope this irons out a bit WHAT a game engine is and what it can NOT be expected to be. Hell, just look at the tools I listed, If EACH was a part of a game engine, the Bloatware alone would be AMAZING.
#17
03/24/2014 (1:47 pm)
Deleted post, I was going to prove a point then wondered why bother. Best of luck everyone.
#18
03/24/2014 (4:31 pm)
Quote: Lens flares? Yeah, bet that was it. Or maybe it was the superior tools..

Tools are definitely important and something to be considered when picking an engine. However, I think Richard's original post was motivated because we've seen quite a few people asking about the addition of lens flares and god rays and other stuff 'pure fluff' features.

Which I think are fair to say NOT critical to the production of a game. Awesome to have, but I really doubt your game could not be made without lens flares.
#19
03/24/2014 (4:54 pm)
@Jeff - pretty much that. Apparently it's a near-religious statement though.

I've played with UE3 quite a bit, and I immediately grabbed UE4. They're fantastic and the tools really are nice - in my opinion. I've heard others say that their tools are a nightmare, but I sure don't understand where that's coming from.

I actually work with Unity at work - though we're just making the transition recently. I am finding their editor camera controls difficult to use, but again it's just because they're not MAX or UE or some other system I'm already used to. I do like the material system, though I found particle effects a little baffling for the first 15 minutes. I really should find more tutorials I suppose....

Anyone remember RenderWare? I own that one too. And PowerRender, and Auran Jet, and I've played with Irrlicht and Crystal Space and a few others. Some day I'll actually make a game - collecting game engines has been a bit of a hobby (I know most of you can relate). For me it always comes down to art. I suppose I could make a game with talking geometric shapes in some abstract Escherland....

And Stephan is mostly right - I am exaggerating a bit. But seriously, great games are great because of the gameplay, not the feature list. I've seen some great ideas posted around here and I'd love to play many of them - and I won't turn my nose up at them because they don't use advanced dynamic tesselation.
#20
03/24/2014 (5:15 pm)
@Richard,
Minecraft...or the reason u have no excuses when it comes to art.
Page «Previous 1 2