Middleware in Game Development

Download Report

Transcript Middleware in Game Development

Europe-China Workshop on E-Learning and Games
(Edutainment 2005)
Middleware in
Game Development
Mr. Milo Yip ([email protected])
Multimedia Innovation Centre
Research & Development




Games & Animation
Education and Internet Technologies
Hardware and Software Development
Traditional and New Media
Education


Master of Science in Multimedia and Entertainment
Technology (MScMET)
Undergraduate (EIE, SD), High Diploma & SPEED
Courses
Overview
1.
2.
3.
4.
5.
Brief History of Game Development
What & Why Middleware?
Middleware Taxonomy
MSMOG Development Platform
Q&A
Brief History of
Game Development
Brief History (50s)
 1958: “Tennis for Two”


Willy Higginbotham (Brookhaven National
Laboratories)
Analog Computer, Oscilloscope
Brief History (60s)
1961: Spacewar


Steve “Slug” Russel at MIT
PDP-1 (USD120,000)
Brief History (70s)
1972: Pong


Allan Alcorn at Atari
Entered home in 1975
Brief History (80s)
1981: Pac-man


Atari
Atari 2600/Intellivision
1982: Pac-man plus

Namco
Brief History (80s)
1985: NES/FamiCom



Nitendo
Motorola 6502 (8-bit)
Popular Game
Cartridge
Super Mario Bros.
Donkey Kong
Zelda
Brief History (90s)
1991: Wolfenstein 3D


id Software (John Carmack)
PC (386 33Mhz), VGA
1996: Tomb Raider





Eidos
PC (Pentium 133Mhz)
4MB Ram
SVGA, 3D Acceleration
Windows 95
Brief History (Today)
Gaming Platforms:


PC (Pentium 4, Display card with Shader 3.0)
Consoles
Sony Playstation 2
Microsoft XBox
GameCube

Mobiles
GameBoy Advance/DS
PDA (PalmOS, WindowsCE)
Mobile Phone (Symbian, J2ME)

Arcade
Brief History (Today)
Development Team Size Growth (estimate)
Design
Technical
Artwork
50s-70s
≤1
≤1
≤1
80s
2
3
5
90s
3
5
10
5~10
10~20
20~50
Today
Let’s see some real cases
Black & White
By Lionhead Studios
USD ~ 5.7M budget
25 full-time developers
3 contractors
~3 years
~2M lines of code
In-house technology
Neverwinter Night
By Bioware Corp
75 developers at peek (~160 man-years of
development)
40 QAs
5 sound contractors
20 translators
~5 years
In-house technology
Splinter Cell (PS2 version)
By Ubisoft Entertainment
76 full-time developers
18 contractors
5 months
Uses UnrealEngine as Middleware
What & Why
Middleware?
What Middleware?
Middleware are software that supports
application (game) development
Middleware provide the common functionalities
of specific domain of applications (game)
Application
Application
Middleware
Operating System
Operating System
Hardware
Hardware
Why Middleware?
Prevent re-inventing the wheel
Game system becomes more and more
complicated:

real-time, interactive, networked, persisted,
massive users, virtual reality system
Game development requires a vast
domains of expertise nowadays
To use technologies with success stories
Why Middleware? (cont.)
Developing a game from ground up is:

Expensive
Need to hire many domain experts
Train developers with latest technologies

Slow
Market changes rapidly
Publishers want shorter development time

Risky
Development of high-end technologies is very risky
Why Middleware? (cont.)
However, there are a few disadvantages:




Licensing may be a big investment
Middleware may not be fully suitable to the
project, customization may be needed
Difficult to integrate with existing assets
Developing in-house technologies makes
The game having unique features
Possible to re-use in future
Possible to sell to third parties (as middleware)
Middleware Taxonomy
Middleware Taxonomy
Graphics Rendering
Audio Rendering
Physics Simulation
Artificial Intelligence
Multiplayer
Mathematics
Special (e.g. Plant, Planet synthesis)
All-in-one (3D Game Engine)
Middleware Taxonomy
Middleware products normally include:





Application Programming Interface (API),
normally in C/C++
Runtime Components (e.g. DLLs)
Tools
Documentation
Examples
Some products are cross-platform
Graphics Rendering
Visual quality and fluency is very important
to games
Most games nowadays requires 3D realtime computer graphics
Famous products:

Criterion’s RenderWare Graphics
Graphics Rendering
Features






Lighting/Material, Shadowing
Scene Management (indoor/outdoor)
Camera Control
Animation (objects, character, facial)
Special Effects (particles, lens flare, etc)
Workflow Tools (e.g. exporting 3D models
from 3D Studio Max, Maya)
Audio Rendering
Audio in games has very important effect
to gamer’s emotion
Famous products:

RenderWare Audio
Audio Rendering
Features




Mono/Stereo playback
3D Surround Sound Emulation
Effect filters (e.g. echo, chorus, reverb, etc.)
Streaming
Physics Simulation
Traditional games have little use of physics
simulation

Collision Detection (preventing penetration among
objects and environment)
Physics become more important in game
development recently
Physics simulation add realism to games
Famous Products:



Havok
Novedex
Open Dynamics Engine
Physics Simulation
Features



Collision Detection
Kinematics Simulation
Rigid-body Dynamics Simulation
Hinge, ball, slider joints

Special domains
Vehicle simulation
Ragdoll simulation
Artificial Intelligence
Artificial Intelligence (AI) adds behavior to NonPlayable Characters (NPCs)
Behavior can be low- or high-level


Low-level behavior such as finding a path from
current position to target is vital to games
High-level behavior such as decision making adds
realism to human (or human-like) NPCs
Famous Products

Renderware AI
Artificial Intelligence
Features

World/Perception Modeling
Mobility (Where NPCs can move through)
Visibility (What NPCs can see)
Audibility (What NPCs can here)


Path-Finding
Behavior Modeling
Finite-State Machine (FSM)
Artificial Neural Network (ANN)
Rule-based Systems

Team Collaboration
Multiplayer
Multiplayer games continue to grow


Lobby Games
Massively Multiplayer Online Game (MMOG)
Multiplayer games are complicated to design
and implement (relative to single player games)


In research, it is Networked Virtual Environment (NVE)
NVE can be applied on military simulation
Famous Products:



Net-Z/Eterna
Terazona
Butterfly.net (Distributed Architecture)
Multiplayer
Features

Communication
TCP/UDP, Encryption, Compression
Session Management

Object
World Management, Transaction, Persistency
Remote Method Invocation (RMI)

Synchronization Management
Optimistic/Pessimistic
Dead-Reckoning Models
Interest Management (reduce synchronization traffic)

Lobby and User Management
Special - Plant
Plant simulation and rendering
Famous products


SpeedTreeRT
RealNAT
Special - Planet
Planet synthesis


Terrain, water, atmosphere, satellites
Very huge and detailed game worlds
Famous Products:

MojoWorld (not yet provide as middleware for
public licensing)
All-in-one (3D Game Engine)
3D Game Engines provide all-in-one solutions to
game development
Normally 3D Game Engines contain integrated
workflow tools
Famous Products





Unreal Technology (Unreal Tournament)
Source Engine (Half-life 2)
Jupiter (No One Lives Forever)
Renderware Studio
NetImmerse
All-in-one (3D Game Engine)
Features








3D Graphics/Audio Rendering
Input Handling
Graphical User Interface (GUI)
Physics Simulation
Artificial Intelligence
Script Engine
Integrated Tools
Multiplayer (for lobby type only)
MSMOG
Development Platform
http://micn.polyu.edu.hk/~msmog/
MSMOG Development Platform
Mini-Scale Multiplayer Online Game
Development Platform (MSMOG DP)



Funded by SME Development Fund (10/2003
- 3/2005, 18 months, HKD ~2M)
Developed by MIC, PolyU
Aimed at enabling game companies to
develop MSMOGs in a more rapid, efficient,
secure and affordable way
MSMOG
Types of online game nowadays


2-16 players lobby game
1000-10000 players Massively Multiplayer
Online Game (MMOG), persist world
MSMOG is a new type of online game for


<200 players in controlled network
environment (e.g. Cyber café)
Fast interaction games (e.g. fighting, racing,
sports)
MSMOG
Rationales for MSMOG



Asia have a huge number of cyber cafés
No games are designed for this market
New opportunity for Hong Kong game
industry!
MSMOG
MSMOG DP is an all-in-one middleware
for game development
MSMOG divides into two products:


3D Game Engine
Multiplayer Network Engine
MSMOG - 3D Game Engine
3D Game Engine provides:







3D Graphics/Audio Rendering
Input Handling
Physics Simulation
Artificial Intelligence (AI)
Graphical User Interface (GUI)
Mathematics
Workflow Tools
All of them are tightly integrated
MSMOG –
Multiplayer Network Engine
The Multiplayer Network Engine supports






World Management
Interest Management
Communication
Synchronization
Persistency
Transaction
Current performance profile

400 concurrent users at 20Hz sync.
MSMOG DP - Applications
Benefits of using MSMOG DP



Latest high-end technologies
Reducing development cost, time and risk
Local support and training
Applications




Single player, Multiplayer games
Education/Edutainment software
3D Simulation
Virtual/Mixed Reality applications
“Auroral Snare” Prototype
- 3D Multiplayer Action Game
- 3 MScMET Students’ FYP
- 3 Months of Development
- Using MSMOG Development Platform
Q&A
Thanks!
http://micn.polyu.edu.hk/~msmog/
Welcome to visit MIC!
Please contact me or
Ms. Cindy Yu ([email protected])