590 likes | 1.09k Vues
Europe-China Workshop on E-Learning and Games (Edutainment 2005). Middleware in Game Development. Mr. Milo Yip (mcmilo@polyu.edu.hk). Multimedia Innovation Centre. Research & Development Games & Animation Education and Internet Technologies Hardware and Software Development
E N D
Europe-China Workshop on E-Learning and Games (Edutainment 2005) Middleware in Game Development Mr. Milo Yip (mcmilo@polyu.edu.hk)
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 • Brief History of Game Development • What & Why Middleware? • Middleware Taxonomy • MSMOG Development Platform • Q & A
1. 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) • 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
2. What & WhyMiddleware?
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)
3. 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 real-time 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 Non-Playable 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)
4. 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.