Game Engine Architecture - PowerPoint PPT Presentation

1 / 19
About This Presentation
Title:

Game Engine Architecture

Description:

Game Engine Architecture – PowerPoint PPT presentation

Number of Views:1238
Avg rating:5.0/5.0
Slides: 20
Provided by: seangu
Category:

less

Transcript and Presenter's Notes

Title: Game Engine Architecture


1
Game Engine Architecture
  • A thorough overview tips for successful
    implementation

2
Why Game Engine Architecture?
  • Games are
  • Resource intensive
  • Large scale
  • Constantly changing

3
Goals of a good game architecture
  • Simplify teamwork
  • Prevent blocking
  • Flexibility
  • Efficiency
  • Ease of debugging
  • Ease of code management
  • Ease of content integration

4
Some solutions to game architecture goals
  • Modularity
  • Data Driven Development
  • Messaging
  • Tools
  • Well defined Workflow

5
Modular Design Pros Cons
  • Pros
  • Simplifies teamwork
  • Prevents blocking
  • Ease of code management
  • Flexibility
  • Cons
  • Requires sophisticated TD programmers

6
Modular Design Tips
  • As few dependencies between game modules as
    possible
  • Plug code functionality
  • Emphasis on module interface rather than module
    implementation

7
Data Driven Development Ps Cs
  • Pros
  • Easy Content Integration
  • Flexibility
  • Cons
  • Large dependency on disk space
  • Lots of disk I/O

8
Data Driven Development Tips
  • Use a scalable file parsing model
  • Turn as much of your game into content as
    possible
  • Level data
  • AI
  • Game Object Templates
  • Etc.
  • Create a content management system to make this
    more modular

9
Messaging Ps Cs
  • Pros
  • Ease of debugging
  • Flexibility
  • Cons
  • Difficult to implement properly
  • Code complexity

10
Messaging Tips
  • Take it seriously
  • Consider impact interaction with debugging
  • Consider replay solutions
  • Enforce a uniform system for handling and
    generating messages

11
Tools Ps Cs
  • Pros
  • Efficiency
  • Ease of debugging
  • Cons
  • Takes time to implement properly

12
Tools Tips
  • Use a Rapid Application Development (RAD) IDE
  • .NET (C, etc.)
  • Borland C Builder
  • Integrate with Data Driven Development for
    efficient content creation
  • Add tool development to timelines

13
Defined Workflow Ps Cs
  • Pros
  • Simplifies Teamwork
  • Efficiency
  • Cons
  • Requires competent management

14
Defined Workflow Tips
  • Document your process from start to finish
  • Use an iterative development methodology
  • Use web-based project planning / tracking
    software (trac, etc.)
  • Use version control software (cvs, svn, etc.)
  • Dont feel like you have to stick with anything
    that doesnt work

15
Examples
  • Straight-C
  • Message-based Service System with object
    factories managers
  • Component-based w/ homogenous game object

16
Straight-C
  • Not much support for object-oriented design
  • Use naming conventions to show scope
  • Use headers to keep code modular and interfaced
  • Other mentioned patterns can be followed in C in
    similar fashions

17
Message-based system
  • Keep interfaces for factories, managers, and
    handlers uniform
  • All creation of objects is through factories
  • Memory manager implemented underneath factories
  • Be careful handling messages internally, because
    of interdependency issues

18
Component-based
  • Entities made entirely of components
  • Entities can be resolved through their component
    structure
  • All game objects are entities (Play game button
    -gt final boss)

19
Questions?
Write a Comment
User Comments (0)
About PowerShow.com