Computer Games Inner Workings - I. Loukeris AIT
Upcoming SlideShare
Loading in...5

Computer Games Inner Workings - I. Loukeris AIT



We have all enjoyed computer games, but ever wondered how they do it? How do developers make them? What are the functional parts of a game? ...

We have all enjoyed computer games, but ever wondered how they do it? How do developers make them? What are the functional parts of a game?

"Computer Games Inner Workings" - a presentation by Ioannis Loukeris, AIT Senior Web Developer and Golden Age CTO.



Total Views
Views on SlideShare
Embed Views



0 Embeds 0

No embeds



Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
Post Comment
Edit your comment

Computer Games Inner Workings - I. Loukeris AIT Computer Games Inner Workings - I. Loukeris AIT Presentation Transcript

  • Computer Games Inner Workings
  • Computer Games Inner WorkingsComputer Games are very complex entities.Ingredients of a good game: – Great Story – Cool Graphics – Natural and Immersing Sounds – Cutting Edge AI – Original Concept – Big Budget – Great PR – None of the above ... or all these and much more.
  • Computer Games Inner Workings● Can it be done be one person ? – YES! – And no …● Bioshock 2 had 120 million US$ budget. Is that necessary? – It depends ...● ID software, the makers of the DOOM, QUAKE etc series of games, release only “when it is done”. Is this a good strategy? – It depends ...
  • Computer Game Inner WorkingsWhich Platform and why?● PCs / Macs● Consoles● iOS● AndroidAll platforms?● Reusable assets● Common programming language and tools● The nightmare of fragmentation.
  • Computer Games Inner Workings● Past Successes ● Past Failures – Tetris! – Tetris! – Pong – Lands of Lore 3 – Bubble Bobble – DaiKatana – Mortal Kombat – Duke Nukem Forever – DOOM – Rage – Lands of Lore – Amazing Alex – Flight Control – SimCity(2013) – Angry Birds – Millions of other titles that – Cut the Rope we never heard about ...
  • Computer Games Inner WorkingsGame Functional Parts: – The Game Loop – The Game State – The Rendering – Input Handling – Networking – Physics / Collision Detection
  • Computer Games Inner WorkingsAll games are the same!No matter what the platform or type of display, the tasks that the game has to complete are the same.Even the change of programming paradigm from procedural to object oriented didnt affect games programing heavily.Simply the game loop no longer knows how to manipulate entities but instead notifies them of the time that passed and of the several events since the last call and they have to do their house keeping.
  • Computer Games Inner WorkingsThe Game Loop.● An “infinite” loop that sequentially makes calls to all other parts/entities of the game.● The game registers and handles player input.● Then registers all networking input, if available.● Then handles collisions / physics etc.● Then brings the game state up to date.● Then renders a frame and starts over.
  • Computer Game Inner WorkingsThe Game State.● Is comprised from all the data about the game state – Entity locations – Entity conditions (normal, angry, dying, moving etc) – Entity properties (velocity, health, energy… etc) – Story line state (pending and past decisions, quests etc) – Entity relations (character inventories, party relations etc)● Must be updated every time something happens.● Is the basis for Rendering
  • Computer Games Inner WorkingsRendering● All games gravitate to 3D.● Modern 2D games are actually 3D.● Particles: a clever way of doing things● Transformations: From Fixed Pipelines to Programmable GPUs.● In the PC world there are two standards: OpenGL and DirectX● OpenGL Renaissance
  • Computer Games Inner WorkingsRendering● Frames, Frame buffers and other buffers● Once we used to “bitblt”, the VGA register horrors and other scary stuff.● Frame Rate or no rate at all...● Choices: more Eye Candy or more speed● Resolution, Anti-aliasing Special FX and Shaders● Modern Hardware: rasterizers, tile renderers and ray tracers
  • Computer Game Inner WorkingsRendering● Textures, Texturing, Multitexturing& Compression● Sprite / Texture Sheets (2D)● Light Maps, bump maps & Shadows● LOD● Batches● Optimizations● Sounds
  • Computer Games Inner Workings● Input handling. More Demanding that you would imagine.● Networking: my kingdom for a good library!● Tools – Proprietary – Open Source – Custom
  • Computer Games Inner WorkingsTools:● Graphics Engines● Game Engines● Physics Engines● Sound Engines● Asset Managers / Servers● 3d Modeling Tools● 2d Art tools
  • Computer Games Inner WorkingsCOLLADA● An XML data exchange protocol● Many game engines support it● Many midleware solutions support it● Many DCC programs support it● Helps tremendously especially in heterogeneous environments and saves huge amounts of time
  • Computer Games Inner WorkingsWhere do we start?● Books● On line examples and tutorials● On line source code (ids open sourced material and open source engines)● Modding existing games● Attaching to an existing team