General Question

jazzjeppe's avatar

How does a game engine/graphics engine work (software)?

Asked by jazzjeppe (2598points) August 18th, 2009

I have always wondered how game engines work. It’s not an engine, like a motor or anthying, but simply code if I have understood it correctly. But…well…could someone explain where the differences between different engines (such as CryEngine) and what makes it..well…work? How it works…? I know it’s a complex question, but try to explain as if I am 4 years old :)

Observing members: 0 Composing members: 0

3 Answers

ragingloli's avatar

well in a sense they are like engines.
a classical engine takes petrol and oxygen and converts it to forward motion.
a game engine takes user input, premade models, animation sequences etc and converts it into simulated events and a successive stream of rendered images.
the differences between game engines is how they do that, what and how many steps they take to produce the images and events.
In that sense they are again very similar to real engines, which vary widely in design and performance.

Grisaille's avatar

Put simply:

The unit itself (PC, PS3, Xbox 360 hardware, etc) is a machine, capable of a myriad of things. It has millions parts, doodads, levers, buttons and switches, all available to the developer. However, certain combinations work better than others, and if you switch them all on at the same time, the machine won’t run well (low framerate, clipping, pop-ins, etc.)

The engine (CryEngine, Unreal, etc) is like a set of directions that tell the machine how to operate. Middleware (as it’s called) is sold out to developers so that they can use it as a platform to build their own game. The better the engine performs (and easier it is to use), the more popular it is. Of course, these engines are easily modifiable, so a back-end coder can change stuff around to their liking, if need be.

The game developers just go in there, add their character models, environments, animations, lighting, textures, music, voice acting, etc.

That’s the simplest I can put it.

PerryDolia's avatar

It is called and “engine” because it is the part of the software that does most of the computations; so it “drives” the rest of the programming.

When you play a game, like Doom, where you seem to move around in some room or dungeon or whatever, every time you move, the illusion of movement is created by the walls and other objects moving past you. That movement of, say, a picture on the wall moving past on your right, is done through calculating how fast you are moving and in what direction. Those calculations are used to move the appearance of that picture so it appears to move toward you.

The “engine” is a set of computer code that does all the calculations. It has certain inputs and produces specific outputs for the game. In this way the people who are designing the appearance of the dungeon don’t have to do all the coding for all the calculations, they just tell the engine what is happening and it does the calculations for them.

Answer this question

Login

or

Join

to answer.

This question is in the General Section. Responses must be helpful and on-topic.

Your answer will be saved while you login or join.

Have a question? Ask Fluther!

What do you know more about?
or
Knowledge Networking @ Fluther