SlideShare a Scribd company logo
1 of 15
Game Architecture and
Programming
St. Vincent Palloti College of Engineering
and Technology
Game Architecture &
Programming
Date: 11th December
2015
Sumit Jain
Project Lead and Game Programmer
Presented by :
Game Architecture and
Programming
St. Vincent Palloti College of Engineering
and Technology
NETWORKIN
G
Game
Develop
ment
Framewo
rk
MEMORY
MANAGEMEN
T
SCENE
EFFECTS
GAME
DATA &
STATES
PLUGINS
LIBRARY
COLLISION
SYSTEM
ANIMATIONS
3D
RENDERING
AUDIO
SYSTEM
ENGINE
EDITOR PHYSICS
AI SYSTEM
NODES
2
Game Architecture and
Programming
St. Vincent Palloti College of Engineering
and Technology
Gaming Engines
Popular Game engines supporting platforms
A game engine is a software framework designed for the creation and development of
video games. Developers use them to create games for consoles, mobile devices and
personal computers.
Frostbite 3D Source Game Engine Rage Engine Flash Action Script OGRE
Unity 3D Engine Unreal game engine
Shiva Game Engine
Havoc Vision
CryEngine Game Maker
Cocos2D
Game Architecture and
Programming
St. Vincent Palloti College of Engineering
and Technology
Game Programming Languages
What is game programming really like ?
C++
Game Engine Framework & OpenGL
for Graphics
Objective C
Apple IOS game development
C#, Java
Game Scripting
Python, JavaScript, Lua
Scripting & supporting
behaviour language
Html5, Php,
Web based browser games
Action Script
Flash games
4
Game Architecture and
Programming
St. Vincent Palloti College of Engineering
and Technology
Layers of Game Architecture
Hardware Abstraction – For every platform of different hardware configuration with graphics
memory, processing power etc.
It acts as an interface between application and hardware using programming through common
interface.
Game Engine Framework
Game Application Screen Monitor Display
Graphics, Rendering & Physics
Game States, Data & Memory &
Processing
Operating System
OpenGL & DirectX
Computer Hardware & Graphic
Chipset
5
Game Architecture and
Programming
St. Vincent Palloti College of Engineering
and Technology
Game Software Architecture
Game Graphics & Framework Software Layer
Game Application
Game Engine
Framework
OpenGL & DirectX
Framework
Computer Chipset Memory &
Graphic Card
6
Game Architecture and
Programming
St. Vincent Palloti College of Engineering
and Technology
Game Development Comparison
Native Game Engine v/s Game Engine Framework
Game Engine
Development
Sony Games
EA & Microsoft Games
Nintendo, SEGA Games
Gameloft
Ubisoft
Unity 3D Game Engine
Cry Engine
Html5 Game Engine
Game Maker Engine
Flash Action Script
Unreal Engine
Cocos2D and Box2D Game
Engine
Torque 2D and 3D Game
Engine
OGRE
Propriety Game
Engines
Private Gaming
Companies
Open Source Game
Engines
7
Game Architecture and
Programming
St. Vincent Palloti College of Engineering
and Technology
Game Architecture
Layers of Game Architecture
8
Game Architecture and
Programming
St. Vincent Palloti College of Engineering
and Technology
Game Architecture
Layers of Game Architecture
8
Game Architecture and
Programming
St. Vincent Palloti College of Engineering
and Technology
Game Architecture
Layers of Game Architecture
9
Game Architecture and
Programming
St. Vincent Palloti College of Engineering
and Technology
Game Architecture
Layers of Game Architecture
8
Game Architecture and
Programming
St. Vincent Palloti College of Engineering
and Technology
Gaming Internal Concepts
Gaming Development Fundamental Concepts
Game Development Elements
Points and
Vectors
Matrices
Quaternions
Random Number
Generation
Rotational
Representations
Trigonometry
Linear Algebra
Gravity
Mass
Kinematic
Physic Materials
Physics Force &
Torque for Motion
The Rendering Loop
The Game Loop
Measuring and
Dealing with Time
Networked
Multiplayer States
Multiprocessor
Game Loops
Open GL Framework
DirectX SDK
3D Maths Physics &
Collision
Programming Graphics
10
Game Architecture and
Programming
St. Vincent Palloti College of Engineering
and Technology
Gaming Development Fundamental
Concepts
What happens behind the hood ?
Main Loop
Initialisation
Process Player Input
Perform game logic
Render Scene, Graphics,
SFX etc
Shutdown
Loading & Caching game
dataGame Resources formats and
storage
3D Environment Mesh
2D Sprites and Texture data
Sound, Music & Animation data
Effects Cinematics Shader,
Shadows
Programming Input
DevicesWorking on Game Controller
Touch Devices Controller
Two Axis Controls
Get State & Normalising Input
Game UI & States
The Human Game View
Player Movement Controller
Screen Elements
Game Controls
Game Events & Events Data
Event Listener & Manager
11
Game Architecture and
Programming
St. Vincent Palloti College of Engineering
and Technology
Runtime Engine Architecture
Gaming Methods
Gameplay (Input)
Programming
Animation & Tools Programming
AI Programming
Shader Graphic & Visuals
Programming
Game States & Events
Programming
Game UI Programming
Programming Patterns
3rd Party Plugins Node based
Programming
1
4
8
5
2
3
7
6
12
Gaming Main Loop
Game Architecture and
Programming
St. Vincent Palloti College of Engineering
and Technology
QUESTION & ANSWER
Game Architecture?
Any Questions?
Game Engine & Tools
Development?
Any Questions?
Game Engine Component
Framework
Any Questions?
13

More Related Content

What's hot

Introduction to Game Development and the Game Industry
Introduction to Game Development and the Game IndustryIntroduction to Game Development and the Game Industry
Introduction to Game Development and the Game IndustryNataly Eliyahu
 
Introduction to Game Development
Introduction to Game DevelopmentIntroduction to Game Development
Introduction to Game DevelopmentShaan Alam
 
Intro to Game Design
Intro to Game DesignIntro to Game Design
Intro to Game DesignGraeme Smith
 
Initial design (Game Architecture)
Initial design (Game Architecture)Initial design (Game Architecture)
Initial design (Game Architecture)Rajkumar Pawar
 
Unreal Engine (For Creating Games) Presentation
Unreal Engine (For Creating Games) PresentationUnreal Engine (For Creating Games) Presentation
Unreal Engine (For Creating Games) PresentationNitin Sharma
 
Game Design Fundamentals
Game Design FundamentalsGame Design Fundamentals
Game Design FundamentalsIntelligent_ly
 
Game Design Document
Game Design DocumentGame Design Document
Game Design DocumentKika Syafii
 
Core Game Design (Game Architecture)
Core Game Design (Game Architecture)Core Game Design (Game Architecture)
Core Game Design (Game Architecture)Rajkumar Pawar
 
Unity Introduction
Unity IntroductionUnity Introduction
Unity IntroductionJuwal Bose
 
2-Game Design (Game Design and Development)
2-Game Design (Game Design and Development)2-Game Design (Game Design and Development)
2-Game Design (Game Design and Development)Hafiz Ammar Siddiqui
 
Proposal of 3d GAME Final Year Project
Proposal of  3d GAME Final Year ProjectProposal of  3d GAME Final Year Project
Proposal of 3d GAME Final Year Projectfahim shahzad
 
Introduction to game development
Introduction to game developmentIntroduction to game development
Introduction to game developmentGaetano Bonofiglio
 
Game engines and Their Influence in Game Design
Game engines and Their Influence in Game DesignGame engines and Their Influence in Game Design
Game engines and Their Influence in Game DesignPrashant Warrier
 
Game development
Game developmentGame development
Game developmentreittes
 
Game development
Game developmentGame development
Game developmentRareCoders
 
4 lecture (mda frame work) 25 1-2021
4 lecture (mda frame work) 25 1-20214 lecture (mda frame work) 25 1-2021
4 lecture (mda frame work) 25 1-2021Durgesh Pandey
 
An Introduction To Game development
An Introduction To Game developmentAn Introduction To Game development
An Introduction To Game developmentAhmed
 

What's hot (20)

Introduction to Game Development and the Game Industry
Introduction to Game Development and the Game IndustryIntroduction to Game Development and the Game Industry
Introduction to Game Development and the Game Industry
 
Introduction to Game Development
Introduction to Game DevelopmentIntroduction to Game Development
Introduction to Game Development
 
Intro to Game Design
Intro to Game DesignIntro to Game Design
Intro to Game Design
 
Game dev process
Game dev processGame dev process
Game dev process
 
Initial design (Game Architecture)
Initial design (Game Architecture)Initial design (Game Architecture)
Initial design (Game Architecture)
 
Unreal Engine (For Creating Games) Presentation
Unreal Engine (For Creating Games) PresentationUnreal Engine (For Creating Games) Presentation
Unreal Engine (For Creating Games) Presentation
 
Game Design Fundamentals
Game Design FundamentalsGame Design Fundamentals
Game Design Fundamentals
 
Game Design Document
Game Design DocumentGame Design Document
Game Design Document
 
Core Game Design (Game Architecture)
Core Game Design (Game Architecture)Core Game Design (Game Architecture)
Core Game Design (Game Architecture)
 
Unity Introduction
Unity IntroductionUnity Introduction
Unity Introduction
 
2-Game Design (Game Design and Development)
2-Game Design (Game Design and Development)2-Game Design (Game Design and Development)
2-Game Design (Game Design and Development)
 
Proposal of 3d GAME Final Year Project
Proposal of  3d GAME Final Year ProjectProposal of  3d GAME Final Year Project
Proposal of 3d GAME Final Year Project
 
Game design document
Game design document Game design document
Game design document
 
Introduction to game development
Introduction to game developmentIntroduction to game development
Introduction to game development
 
Game engines and Their Influence in Game Design
Game engines and Their Influence in Game DesignGame engines and Their Influence in Game Design
Game engines and Their Influence in Game Design
 
Game development
Game developmentGame development
Game development
 
Game development
Game developmentGame development
Game development
 
Zombi - Shoot for Survive
Zombi - Shoot for SurviveZombi - Shoot for Survive
Zombi - Shoot for Survive
 
4 lecture (mda frame work) 25 1-2021
4 lecture (mda frame work) 25 1-20214 lecture (mda frame work) 25 1-2021
4 lecture (mda frame work) 25 1-2021
 
An Introduction To Game development
An Introduction To Game developmentAn Introduction To Game development
An Introduction To Game development
 

Similar to Game Architecture and Programming

PRESENTATION ON Game Engine
PRESENTATION ON Game EnginePRESENTATION ON Game Engine
PRESENTATION ON Game EngineDiksha Bhargava
 
My Presentation.ppt
My Presentation.pptMy Presentation.ppt
My Presentation.pptFake474384
 
Game software development trends
Game software development trendsGame software development trends
Game software development trends_veronika_
 
Game Memory Optimisation
Game Memory OptimisationGame Memory Optimisation
Game Memory OptimisationSumit Jain
 
Knock Knock on GameDev Gate
Knock Knock on GameDev GateKnock Knock on GameDev Gate
Knock Knock on GameDev GateBeMyApp
 
Knock knock on GameDev gateway! - Introduction to Game development
Knock knock on GameDev gateway! - Introduction to Game developmentKnock knock on GameDev gateway! - Introduction to Game development
Knock knock on GameDev gateway! - Introduction to Game developmentMamdouh Tarabishi
 
Designing a pragmatic back-end service for mobile games
Designing a pragmatic back-end service for mobile gamesDesigning a pragmatic back-end service for mobile games
Designing a pragmatic back-end service for mobile gamesiFunFactory Inc.
 
Components of Computing Game
Components of Computing GameComponents of Computing Game
Components of Computing GameMuhammad Sajid
 
Introduction to Game Engine: Concepts & Components
Introduction to Game Engine: Concepts & ComponentsIntroduction to Game Engine: Concepts & Components
Introduction to Game Engine: Concepts & ComponentsPouya Pournasir
 
Web Game Development
Web Game DevelopmentWeb Game Development
Web Game DevelopmentSabin Buraga
 
Game Design 1 - Intro and Game Engines
Game Design 1 - Intro and Game EnginesGame Design 1 - Intro and Game Engines
Game Design 1 - Intro and Game EnginesJay Crossler
 
Streamed Cloud Gaming Solutions for Android* and PC Games
Streamed Cloud Gaming Solutions for Android* and PC GamesStreamed Cloud Gaming Solutions for Android* and PC Games
Streamed Cloud Gaming Solutions for Android* and PC GamesIntel® Software
 
Funky game engines
Funky game enginesFunky game engines
Funky game engineseduriez
 

Similar to Game Architecture and Programming (20)

PRESENTATION ON Game Engine
PRESENTATION ON Game EnginePRESENTATION ON Game Engine
PRESENTATION ON Game Engine
 
My Presentation.ppt
My Presentation.pptMy Presentation.ppt
My Presentation.ppt
 
Game software development trends
Game software development trendsGame software development trends
Game software development trends
 
Game Memory Optimisation
Game Memory OptimisationGame Memory Optimisation
Game Memory Optimisation
 
Knock Knock on GameDev Gate
Knock Knock on GameDev GateKnock Knock on GameDev Gate
Knock Knock on GameDev Gate
 
Knock knock on GameDev gateway! - Introduction to Game development
Knock knock on GameDev gateway! - Introduction to Game developmentKnock knock on GameDev gateway! - Introduction to Game development
Knock knock on GameDev gateway! - Introduction to Game development
 
Imaginecup
ImaginecupImaginecup
Imaginecup
 
Indie Game Development Intro
Indie Game Development IntroIndie Game Development Intro
Indie Game Development Intro
 
Designing a pragmatic back-end service for mobile games
Designing a pragmatic back-end service for mobile gamesDesigning a pragmatic back-end service for mobile games
Designing a pragmatic back-end service for mobile games
 
Bissessar.Antonio.Resume
Bissessar.Antonio.ResumeBissessar.Antonio.Resume
Bissessar.Antonio.Resume
 
Components of Computing Game
Components of Computing GameComponents of Computing Game
Components of Computing Game
 
Introduction to Game Engine: Concepts & Components
Introduction to Game Engine: Concepts & ComponentsIntroduction to Game Engine: Concepts & Components
Introduction to Game Engine: Concepts & Components
 
Web Game Development
Web Game DevelopmentWeb Game Development
Web Game Development
 
dicas de games
dicas de gamesdicas de games
dicas de games
 
dicas de games
dicas de gamesdicas de games
dicas de games
 
Game Design 1 - Intro and Game Engines
Game Design 1 - Intro and Game EnginesGame Design 1 - Intro and Game Engines
Game Design 1 - Intro and Game Engines
 
Streamed Cloud Gaming Solutions for Android* and PC Games
Streamed Cloud Gaming Solutions for Android* and PC GamesStreamed Cloud Gaming Solutions for Android* and PC Games
Streamed Cloud Gaming Solutions for Android* and PC Games
 
Khalid elshimy
Khalid elshimyKhalid elshimy
Khalid elshimy
 
Funky game engines
Funky game enginesFunky game engines
Funky game engines
 
First Seminar Presentation
First Seminar PresentationFirst Seminar Presentation
First Seminar Presentation
 

Game Architecture and Programming

  • 1. Game Architecture and Programming St. Vincent Palloti College of Engineering and Technology Game Architecture & Programming Date: 11th December 2015 Sumit Jain Project Lead and Game Programmer Presented by :
  • 2. Game Architecture and Programming St. Vincent Palloti College of Engineering and Technology NETWORKIN G Game Develop ment Framewo rk MEMORY MANAGEMEN T SCENE EFFECTS GAME DATA & STATES PLUGINS LIBRARY COLLISION SYSTEM ANIMATIONS 3D RENDERING AUDIO SYSTEM ENGINE EDITOR PHYSICS AI SYSTEM NODES 2
  • 3. Game Architecture and Programming St. Vincent Palloti College of Engineering and Technology Gaming Engines Popular Game engines supporting platforms A game engine is a software framework designed for the creation and development of video games. Developers use them to create games for consoles, mobile devices and personal computers. Frostbite 3D Source Game Engine Rage Engine Flash Action Script OGRE Unity 3D Engine Unreal game engine Shiva Game Engine Havoc Vision CryEngine Game Maker Cocos2D
  • 4. Game Architecture and Programming St. Vincent Palloti College of Engineering and Technology Game Programming Languages What is game programming really like ? C++ Game Engine Framework & OpenGL for Graphics Objective C Apple IOS game development C#, Java Game Scripting Python, JavaScript, Lua Scripting & supporting behaviour language Html5, Php, Web based browser games Action Script Flash games 4
  • 5. Game Architecture and Programming St. Vincent Palloti College of Engineering and Technology Layers of Game Architecture Hardware Abstraction – For every platform of different hardware configuration with graphics memory, processing power etc. It acts as an interface between application and hardware using programming through common interface. Game Engine Framework Game Application Screen Monitor Display Graphics, Rendering & Physics Game States, Data & Memory & Processing Operating System OpenGL & DirectX Computer Hardware & Graphic Chipset 5
  • 6. Game Architecture and Programming St. Vincent Palloti College of Engineering and Technology Game Software Architecture Game Graphics & Framework Software Layer Game Application Game Engine Framework OpenGL & DirectX Framework Computer Chipset Memory & Graphic Card 6
  • 7. Game Architecture and Programming St. Vincent Palloti College of Engineering and Technology Game Development Comparison Native Game Engine v/s Game Engine Framework Game Engine Development Sony Games EA & Microsoft Games Nintendo, SEGA Games Gameloft Ubisoft Unity 3D Game Engine Cry Engine Html5 Game Engine Game Maker Engine Flash Action Script Unreal Engine Cocos2D and Box2D Game Engine Torque 2D and 3D Game Engine OGRE Propriety Game Engines Private Gaming Companies Open Source Game Engines 7
  • 8. Game Architecture and Programming St. Vincent Palloti College of Engineering and Technology Game Architecture Layers of Game Architecture 8
  • 9. Game Architecture and Programming St. Vincent Palloti College of Engineering and Technology Game Architecture Layers of Game Architecture 8
  • 10. Game Architecture and Programming St. Vincent Palloti College of Engineering and Technology Game Architecture Layers of Game Architecture 9
  • 11. Game Architecture and Programming St. Vincent Palloti College of Engineering and Technology Game Architecture Layers of Game Architecture 8
  • 12. Game Architecture and Programming St. Vincent Palloti College of Engineering and Technology Gaming Internal Concepts Gaming Development Fundamental Concepts Game Development Elements Points and Vectors Matrices Quaternions Random Number Generation Rotational Representations Trigonometry Linear Algebra Gravity Mass Kinematic Physic Materials Physics Force & Torque for Motion The Rendering Loop The Game Loop Measuring and Dealing with Time Networked Multiplayer States Multiprocessor Game Loops Open GL Framework DirectX SDK 3D Maths Physics & Collision Programming Graphics 10
  • 13. Game Architecture and Programming St. Vincent Palloti College of Engineering and Technology Gaming Development Fundamental Concepts What happens behind the hood ? Main Loop Initialisation Process Player Input Perform game logic Render Scene, Graphics, SFX etc Shutdown Loading & Caching game dataGame Resources formats and storage 3D Environment Mesh 2D Sprites and Texture data Sound, Music & Animation data Effects Cinematics Shader, Shadows Programming Input DevicesWorking on Game Controller Touch Devices Controller Two Axis Controls Get State & Normalising Input Game UI & States The Human Game View Player Movement Controller Screen Elements Game Controls Game Events & Events Data Event Listener & Manager 11
  • 14. Game Architecture and Programming St. Vincent Palloti College of Engineering and Technology Runtime Engine Architecture Gaming Methods Gameplay (Input) Programming Animation & Tools Programming AI Programming Shader Graphic & Visuals Programming Game States & Events Programming Game UI Programming Programming Patterns 3rd Party Plugins Node based Programming 1 4 8 5 2 3 7 6 12 Gaming Main Loop
  • 15. Game Architecture and Programming St. Vincent Palloti College of Engineering and Technology QUESTION & ANSWER Game Architecture? Any Questions? Game Engine & Tools Development? Any Questions? Game Engine Component Framework Any Questions? 13