Upload
cyrah
View
75
Download
0
Embed Size (px)
DESCRIPTION
Introduction To Game Development. Introduction to Game Dev. Game Platform Game Types Game Team Game Development Pipeline Game Software System Tools. Game Platform. PC Single player Match Makings MMOG (Massive Multi-player Online Game) Web-based Games Console Sony PS2 MS Xbox - PowerPoint PPT Presentation
Citation preview
IntroductionIntroductionToToGame DevelopmentGame Development
Introduction to Game DevIntroduction to Game Dev Game PlatformGame Platform Game TypesGame Types Game TeamGame Team Game Development PipelineGame Development Pipeline Game Software SystemGame Software System ToolsTools
Game PlatformGame Platform PCPC
Single playerSingle player Match MakingsMatch Makings MMOG (Massive Multi-player Online Game)MMOG (Massive Multi-player Online Game) Web-based GamesWeb-based Games
ConsoleConsole Sony PS2Sony PS2 MS XboxMS Xbox Nintedo GameCubeNintedo GameCube
ArcadeArcade MobileMobile
GBAGBA Hand-heldHand-held
Game Development on Game Development on ConsoleConsole Specific Hardware Designed for GamesSpecific Hardware Designed for Games Single User / Single Process OSSingle User / Single Process OS In General no Hard Disk Drive In General no Hard Disk Drive Closed SystemClosed System Very Native Coding WayVery Native Coding Way
Proprietary SDKProprietary SDK Hardware related featuresHardware related features
Limited ResourcesLimited Resources MemoryMemory
One Console runs, the others do!One Console runs, the others do!
Game TypesGame Types RPG (Role playing games)RPG (Role playing games) AVG (Adventure games)AVG (Adventure games) RTS (Real-time strategy games)RTS (Real-time strategy games) FPS (First-person shooting games)FPS (First-person shooting games) MMORPGMMORPG ( ( Massive Multi-player Online Massive Multi-player Online )) SLG (SLG ( 戰棋戰棋 )) SimulationSimulation SportsSports Puzzle gamesPuzzle games Table gamesTable games
Game TeamGame Team 組成組成 開發團隊開發團隊
製作人製作人 執行製作人執行製作人 企劃團隊企劃團隊 程式團隊程式團隊 美術團隊美術團隊
行銷業務團隊行銷業務團隊 測試團隊測試團隊 遊戲審議委員會遊戲審議委員會
ProducerProducer ( ( 遊戲製作人 遊戲製作人 )) Team Leader (always)Team Leader (always) Resource ManagementResource Management(( 資源管理資源管理 )) AdministrationAdministration ( ( 行政管理行政管理 )) Upward ManagementUpward Management ( ( 向上負責 向上負責 )) Project ManagementProject Management ( ( 專案管理 專案管理 ))
遊戲執行製作人遊戲執行製作人 Project ManagementProject Management(( 專案管理執行專案管理執行 )) Daily Daily 運作運作 House KeepingHouse Keeping Not full-time job positionNot full-time job position
遊戲企劃遊戲企劃 Story TellingStory Telling(( 故事設計故事設計 )) ScriptingScripting ( ( 腳本設計 腳本設計 )) Game Play DesignGame Play Design ( ( 玩法設計 玩法設計 )) Level DesignLevel Design ( ( 關卡設計 關卡設計 )) Game TuningGame Tuning ( ( 遊戲調適 遊戲調適 )) Numerical SetupNumerical Setup ( ( 數值設定 數值設定 )) Game AI Game AI ((AI AI 設計 設計 )) Sound FX SetupSound FX Setup ( ( 音效設定 音效設定 )) Scene SetupScene Setup(( 場景設定場景設定 ))
遊戲美術遊戲美術 TerrainTerrain(( 場景場景 )) CharacterCharacter ( ( 人物人物 )) ModelsModels ( ( 建模建模 )) TexturesTextures(( 材質材質 )) Motion / AnimationMotion / Animation(( 動作動作 )) FXFX ( ( 特效特效 )) User InterfaceUser Interface
遊戲程式遊戲程式 Game ProgramGame Program(( 遊戲程式 遊戲程式 )) Game Tools Game Tools (( 遊戲開發工具 遊戲開發工具 ))
Level EditorLevel Editor Scene EditorScene Editor FX EditorFX Editor Script EditorScript Editor
Game Data Exporters from 3D SoftwareGame Data Exporters from 3D Software 3dsMax / Maya / Softimage3dsMax / Maya / Softimage
Game Engine DevelopmentGame Engine Development Online Game Server DevelopmentOnline Game Server Development
遊戲開發流程遊戲開發流程Basic Procedures for Game Development
Idea Proposal Production IntegrationTesting
Debug Tuning
ConceptApproval
Prototype Pre-alpha Alpha Beta Final
IdeaIdea(( 發想 發想 )) ProposalProposal ( ( 提案提案 )) ProductionProduction(( 製作 製作 )) IntegrationIntegration ( ( 整合整合 )) TestingTesting(( 測試 測試 ))
DebugDebug(( 除錯 除錯 )) TuningTuning(( 調適調適 ))
> Concept Approval
> 雛形 (Prototype)
> Pre-alpha
> Alpha
> Beta
遊戲發想 遊戲發想 ((Concept Design)Concept Design) Game TypesGame Types(( 遊戲類型遊戲類型 )) Game World Game World (( 遊戲世界觀 遊戲世界觀 )) StoryStory ( ( 故事故事 )) Features Features (( 遊戲特色遊戲特色 )) Game PlayGame Play(( 遊戲玩法 遊戲玩法 )) Game Product Positioning Game Product Positioning (( 遊戲定位 遊戲定位 ))
Target playerTarget player Marketing segmentation / positioningMarketing segmentation / positioning
RiskRisk(( 風險評估 風險評估 )) SWOT SWOT
(Strength/Weakness/Opportunity/Threat)(Strength/Weakness/Opportunity/Threat)
遊戲提案 遊戲提案 ((Proposal)Proposal) System AnalysisSystem Analysis(( 系統分析 系統分析 )) Game Design DocumentGame Design Document((GDD GDD 撰寫 撰寫 )) Media Design DocumentMedia Design Document((MDD MDD 撰寫 撰寫 )) Technical Design Document Technical Design Document ((TDD TDD 撰寫 撰寫 )) Game ProjectGame Project ( ( 遊戲專案建立 遊戲專案建立 ))
ScheduleSchedule Milestones / Check pointsMilestones / Check points Risk managementRisk management
測試計畫書測試計畫書 Team BuildingTeam Building ( ( 團隊建立 團隊建立 ))
遊戲開發 遊戲開發 ((Production)Production) 美術量產製作美術量產製作
ModelingModeling TexturesTextures AnimationAnimation MotionMotion FXFX
程式開發 程式開發 ((Coding)Coding) 企劃數值設定企劃數值設定 ……
量產 量產 !!
遊戲整合 遊戲整合 ((Integration)Integration) Level IntegrationLevel Integration(( 關卡串聯 關卡串聯 )) Number Tuning Number Tuning (( 數值調整 數值調整 )) AudioAudio(( 音效置入 音效置入 )) 完成所有美術完成所有美術 程式與美術結合程式與美術結合 Focus Group (User Study)Focus Group (User Study)
Release some playable levels for focus Release some playable levels for focus groupgroup
遊戲測試 遊戲測試 ((Testing)Testing) Alpha TestAlpha Test
DebugDebug ( ( 除錯 除錯 )) Beta TestBeta Test
數值微調數值微調 Game play Game play 微調微調 對線上遊戲而言 對線上遊戲而言 ((MMOG)MMOG)
封閉測試 封閉測試 ((Closed Beta)Closed Beta) 開放測試 開放測試 ((Open Beta)Open Beta)
極限測試 極限測試 ((Critical Testing)Critical Testing) 線上遊戲才有線上遊戲才有
BugBug Bug Bug 分級 分級 ((Bug Classification)Bug Classification)
A BugA Bug B BugB Bug C BugC Bug S BugS Bug
PrinciplesPrinciples Bug Bug 分級從嚴分級從嚴 Tester vs DebuggerTester vs Debugger
Bug Classification
Bug Dispatch
Debug
Verify
Bug
FAQ
Y
N
?
Game Software SystemGame Software System
Hardware
3D Graphics API 2D API Input Device OS API
3D Scene Mngmt 2D Sprite Gamepad NetworkAudio
Terrain Collision Character UIDynamics Sound FX
Fighting System FX System Game AI Script System
NPC System Virtual Agent Trading System Story
Game
Game PlayLayer
EngineLayer
SystemLayer
System Layer - APIsSystem Layer - APIs 33D Graphics APID Graphics API
DirectX 9.0 SDK – Direct3DDirectX 9.0 SDK – Direct3D OpenGL 2.0OpenGL 2.0
2D API2D API DirectX 9.0 SDK - DirectMediaDirectX 9.0 SDK - DirectMedia Win32 GDIWin32 GDI
Input DeviceInput Device DirectX 9.0 SDK – DirectInputDirectX 9.0 SDK – DirectInput
AudioAudio DirectX 9.0 SDK – DirectSound / Direct3DSound / DirectX 9.0 SDK – DirectSound / Direct3DSound /
DirectMediaDirectMedia OpenALOpenAL
System Layer - APIsSystem Layer - APIs OS APIOS API
Win32 SDKWin32 SDK MFCMFC
NetworkNetwork DirectX 9.0 SDK – DirectPlayDirectX 9.0 SDK – DirectPlay Socket librarySocket library
Engine LayerEngine Layer 3D Scene Management System3D Scene Management System
Scene GraphScene Graph ShadersShaders 2D Sprite System2D Sprite System Audio SystemAudio System GamepadGamepad HotkeyHotkey MouseMouse TimersTimers NetworkNetwork DDK InterfaceDDK Interface
Engine LayerEngine Layer TerrainTerrain Advanced Scene Management – Space Advanced Scene Management – Space
PartitionPartition BSP TreeBSP Tree OctreeOctree
Character SystemCharacter System Motion Blending TechniquesMotion Blending Techniques DynamicsDynamics Collision DetectionCollision Detection SoundFXSoundFX User InterfaceUser Interface
Game Play ModulaGame Play Modula NPC (Non-playable Characters)NPC (Non-playable Characters) Game AIGame AI
Path FindingPath Finding Finite State MachineFinite State Machine ……
AvatarAvatar Combat SystemCombat System FX SystemFX System Script SystemScript System Trading SystemTrading System Number SystemNumber System ……
Game Dev ToolsGame Dev Tools javajava Visual C/C++Visual C/C++
.net 2003.net 2003 Visual C/C++ 6.0+ SP5Visual C/C++ 6.0+ SP5
DirectX / OpenGLDirectX / OpenGL DirectX Current 9.0c DirectX Current 9.0c OpenGL Current 2.0OpenGL Current 2.0
NuMega BoundsCheckerNuMega BoundsChecker Intel vTuneIntel vTune 3D Tools3D Tools
3dsMax/Maya/Softimage3dsMax/Maya/Softimage In-house ToolsIn-house Tools