FA-ProjInfo
  • Introduction
  • Plan du module
  • S1 - KickOff
    • NetWorld
    • Intro to C
    • C in short
    • Lib: Raylib
    • Les groupes
    • Go go go!
  • S2 - Introduction to Game Engine
    • What is a game and a game engine ?
    • Star-Up & Shut-Down
    • The Game/Main Loop
    • Programming Input Devices
    • Resources managment
    • NetWorld outline
  • S3 - Collaborative Project
    • Versionner avec GIT
    • Project Management in online GIT plateform
    • Automatiser la construction
    • Documenter
  • S4 - Rendu et Evaluation
    • Process de l'évaluateur
  • Tools
    • FAQ
Powered by GitBook
On this page
  • Game
  • Let's try to sum up important game concept's
  • Breaf peak into the Game Theory
  • Game Engine
  • Context
  • Deep dive
  • One engine to rule them all?
  • To conclude

Was this helpful?

  1. S2 - Introduction to Game Engine

What is a game and a game engine ?

PreviousGo go go!NextStar-Up & Shut-Down

Last updated 4 years ago

Was this helpful?

Game

  • Intituevely easy to grasp the notion

  • Complex to define per se

Include board games like chess, card games, casino games or even computer-based game.

A game is an interactive experience that provides the player with an increasingly challenging sequence of patterns which he or she learns and eventually masters (Raph Koster, A Theory of Fun for Game Design)

Let's try to sum up important game concept's

  • World(s)

  • Rules

  • Diegesis

  • Interactions

  • Activities

  • Soft Real time simulation ?

  • other things?

Breaf peak into the Game Theory

Study of games' strategies. Here @ IMT-LD we have the course Stratégie de Résolution de Problème Complexe par le Jeu strongly tied to this subject (Module électif L3) lead by J. Humeau.

Game Engine

A game engine is a software-development environment designed for people to build video games.

Context

In 1990, FPS games like DOOM changed the deal about how software components are developped.

  • Well-defined

  • Documented

  • Reusable aspect and re-tooling in mind during conception

Objective: reduce the amount of hard-coded elements (such as game logic)

Deep dive

From this new re-tooling coding paradigm results the separation of:

  • Core software components

    ** 2D/3D rendering systems

    ** collision detection

    ** audio system

    ** ...

  • Art assests

  • Quest mechanism

  • Rules of play

  • Artificial Intelligence

  • Network

One engine to rule them all?

Game engine are about trade-off!

Developping any piece of software entails making trade-off, based on the application and the context. A rendering engine designed to handle intimate indoor environments will probably be less efficient in outdoor environments. This is due to the tech used under the hood. For the indoor engine, probably BFS tree and such to handle ambiant occlusion and a high LOD (level of details) and so on.

Example: Star Citizen and CryEngine 3 then Lumberyard engine

So, game engine are generally dedicated to one (or few) genres

  • FPS

  • TPS

  • MMO-X

  • Fighting Game

  • Racing

    ...

Nonetheless, huge progress in "the all in one", mostly Unity and UE.

To conclude

A game engine is a tool suite and a runtime component.

In this course, we will focus on Collision & Physics, some 2D Rendering and Player Mechanisms, as well as Artificial Intelligence

Yay! \o/

Source:

Gregory, Jason. "Game Engine Architecture. Ak Peters Series." (2009). Koster, Raph. Theory of fun for game design. " O'Reilly Media, Inc.", (2013). McShaffry, Mike. "Game coding complete/Mike" MrMike" McShaffry and Rez Graham." (2013).

Introduction to Game Theory
Game Engine Reuseasbility