GDC 2009 를통해바라본게임기술동향 Game Developer Conference 2009 2009 년 4 월 NHN
1. 게임개발기술 2. 게임프로그래밍기술 3. 요약 1
1. 게임개발기술 Gaming Platforms Online Platforms SW 기술 Frameworks : SDKs & libraries Tools / Middlewares : Game Development Tools & Runtime Environments Languages 2
Gaming Platforms PC Platform Console Platforms Wii XBOX360 PS3 Others Mobile / Handheld Platforms NDS PSP iphone * ngage Others 3
Gaming Platforms iphone (AppStore) 일평균 165 apps 등록 신규 Mobile Gaming Platform으로자리잡음 성공요인 Handheld console quality graphics Touch capability Always on & connected to the network 향후발전방향 Social gaming Online multiplayer games SDK 3.0 (VOIP, push notification invites, InApp Commerce) 4
Online Platforms WiiWare Steam XBLA PSN Games for Windows LIVE Others 5
SW 기술 - Frameworks SDL (Simple DirectMedia Layer) Free cross-platform multimedia library Platform: PC/Mobile - Linux / Windows / Windows CE / BeOS / MacOS / Mac OS X / FreeBSD, etc. Consoles - AmigaOS, Dreamcast, Atari, etc. Languages: C/C++ Game Applications: Mobile games Sexy Framework 1.3 (PopCap) Free game development framework for 2D games To be registered in SourceForge Platform: PC/Windows Languages: C++ Game Applications: PC downloadable casual games 6
SW 기술 - Frameworks Playground SDK 4.0 (PlayFirst) Free game development SDK for 2D games 2D animated sprites, 3D models, 2D/3D polygonal data, Flash scenes, particle systems 5.0 under development Platform: PC - Windows(DX7)/MacOS/Web Languages: C/C++, Lua Game Applications: PC downloadable/web casual games Dream Chronicles 2 Chocolatier 2 7
SW 기술 Tools / Middlewares CS4 Professional and Flash 10 (Adobe) Rich media interactive application middleware Vector graphics, video, 2D animations, basic 3D Platform: PC/Web, mobile, consoles, etc. Languages: ActionScript 3.0, C++ (Alchemy) Game Applications: Web-based casual games, mobile games (earlier versions of Flash) Bejeweled DOOM 1 8
SW 기술 Tools / Middlewares Director and Shockwave 11 (Adobe) Interactive multimedia application middleware Support for more than 40 video, audio, and image file formats Native 3D rendering with DirectX 9 support Advanced physics engine (NVIDIA PhysX) included Flash CS3 and Flash 9 content support, Xtra plug-ins support Platform: PC/Web Languages: Lingo Game Applications: Web-based 2D, 3D games Sunset Racer 2 Quake III 9
SW 기술 Tools / Middlewares Blend3D and Kit3D (Codeplex MS Open Source Project Community) Kit3D: 3D API for C#/Silverlight Blend3D: Extensions and design tool for Kit3D Platform: PC/Windows/Web Language: C#, Javascript Game Applications: 3D PC/Web games 10
SW 기술 Tools / Middlewares Torque Engine (GarageGames) Torque Game Builder: 2D Game Engine Middleware and Toolsets Level editor (object placement & manipulation), 2D graphics, networking, basic physics, customizable GUI modules, sound (OpenAL) Torque 3D Engine: 3D Game Engine Middleware and Toolsets Mission Editor (object placement & manipulation), 3D graphics, terrain, physics (PhysX, Bullet, ODE) Platform: PC/Windows/Mac/Web, XBOX360, Wii, iphone Language: TorqueScript, C++ Game Applications: 2D/3D PC and console games Turtix Forge 11
SW 기술 Tools / Middlewares Unity 3D 2.5 (Unity Technologies) Multiplatform 3D game development tool Integrated Editor, 3D graphics (animated meshes, particle systems, advanced lighting and shadows), terrains, networking (state synchronization), physics (PhysX), streamed audio/video Platform: PC/Windows/Mac/Web, Wii, iphone Language: C#, Javascript, Boo Game Applications: 3D PC/Web and console games Monster Trucks Nitro Mini Golf Action Tropical Paradise (Demo) 12
SW 기술 Tools / Middlewares LightSpeed and Gamebryo 2.6 (Emergent) Advanced 3D game development tool and graphics engine LightSpeed: Fast prototyping tool with real-time updates, data-driven framework Toolbench : IDE Entity Modeling Tool : entity and behavior system enabling data-driven gameplay design and quick manipulation of properties and behaviors WorldBuilder : level editor Script Engine Integration : Lua Debugger Platform: PC/Windows, PS 3/PSN, XBOX 360/XBLA, Nintendo Wii Language: C++, Lua Game Applications: 3D PC and console games (casual, FPS, MMORPG, etc.) 13
SW 기술 Tools / Middlewares Game Studio and XNA (Microsoft) Game development tool and framework based on.net platform Game Studio Extends Visual Studio 2008 Includes the free C# Express Edition Version 3.0 released on 10/31/08 Zune support Community Games publishing Platform: PC/Windows, XBOX360, Zune Language: C# Game Applications: PC and XBOX360 games Framework 14
XNA Game Studio XNA Game Studio 3.1 ( 2009년여름출시예정 ) Xbox LIVE Party Live party system을 SDK에서지원 온라인에서의커뮤니티강화 Video playback Content 파이프라인을통해 WMV 파일을사용할수있음 유저의비디오클립, 음악데이터를게임과연동 Downloadable Content (XDK Extensions Only) 다운로드컨텐츠를 SDK 에서지원 Xbox live arcade 에서도다운로드컨텐츠시스템도입 Avatars for XDK Extensions and Community titles Xbox 대시보드의아바타를게임에서사용가능 아바타모델, 애니메이션의데이터관리를 SDK 에서제공 15
SW 기술 Tools / Middlewares CryEngine 3 (CryTek) Advanced 3D game development tool Sandbox WYSIWYP level editor, next-generation real-time graphics (real-time soft particle system, multi-core support), advanced modular AI system (flow graph visual scripting system), networking, physics, streaming content (levels) Platform: PC/Windows, XBOX360, PS3 Language: C++, Lua Game Applications: 3D PC and console games (FPS, MMORPG, etc.) Crysis Warhead 16
SW 기술 Server Middlewares Unity 2 MDK (www.moock.org) Multi-user development framework for Flash Client-side Language: ActionScript 2.0 Server-side Language: Java Game Applications: Casual MMO, multi user games SmartFox 1.6.5 (gotoandplay) Multi-user development framework for Flash/Flex/Air, Java,.NET, Unity3D, Apple iphone Client-side Languages: ActionScript 2.0/3.0, Java,.NET Server-side Languages: ActionScript/Javascript, Java, Python Game Applications: Casual MMO, multi user games ElectroServer 4.0.6 (Electrotank) Multi-user development framework for Flash Streaming Audio/Video support Server-side Language: Java, ActionScript Game Applications: Casual MMO, multi user games 17
3. 게임프로그래밍기술 Utilizing Flash for Game UI Development The Future of Web Games Multi-threading Game AI 18
Utilizing Flash for Game UI Development Flash의장점 2D rich, animated UI 지원 Strong community resource, libraries, tutorials Designer focused toolset, developer friendly Integration with Photoshop, Illustrator, Fireworks Rapid prototyping Flash의단점 개발자부족 게임을위한 component framework 부재 Game engine integration / resource usage 이슈 UI development Flash 를활용한 UI 개발 Scaleform GFx 를통한 game engine integration Unreal Engine 3 에서 SWF import 데모 19
The Future of Web Games Web Game의성공가능성 PC 보급률이 console 보급률보다높음 별도설치과정없이바로 play 가능 InstantAction Technology Proprietary plugin technology: http://www.instantaction.com Developed by GarageGames 20
Multi-threading Intel Game Threading Model (recommended) Game Thread Game Thread Game Thread Publish Subscribe Model Data distributed threading AI state Logic state Game Thread = AI process + Physics process + Logic process + 21 Physics state
Multi-threading Direct 3D 11 multithreaded rendering Before D3D 11 After D3D 11 Game Thread Game Thread #N Update Game State Update Game State Update Animation Update Animation Network Processing Network Processing Rendering Rendering 22
Game AI AI 개발은기획자가개발할수있는스크립트개발이필수!!! 스크립트개발을너무작은규모로기획하거나생각해서는안됨 재활용가능한작은모듈부터높은추상화가가능한모듈까지 사용자경험으로부터 AI 명령을역으로정의한다 어 ~ 이렇게되네 ~ 어이렇게도행동하네 ~ 사용자가재밌어할상황을유추하고그로부터만들어야할명령을정의한다. 상태기반모델 새로운기법을쓰기보다는더욱많은상태와상태전이를가진상태기반모델을사용 Decision Tree 에상태를저장한다. 최종 AI 행동결정후 Decision Tree 를초기화하지않고최종결정으로부터 pop 한후다시의사결정을하도록한다. 이런방법이 AI 의창발적인행동을더유도하는경향이있다. 23
3. 요약 새로운 handheld gaming platform의출현 : iphone Game Development Tool / Middleware의지속적인발전 Adobe 의게임플랫폼기술발전 : Flash 에서의 3D, shockwave 를통한 3D acceleration 개발생산성향상을위한기존 Tool / Middleware 의발전 : Torque, CryEngine 등 Web Game의확산 Browser 기반의 game 구동방식확산 3D engine/middleware의 web 구동 : Unity 3D, Torque Server-side middleware를통한 casual MMO 시장진출 (Flash의수익성강화 ) 24
국내게임개발관점의시사점 플랫폼다변화를통한해외게임수출확산필요 신규모바일플랫폼지원확대 : iphone Console 시장진출확대 : WiiWare, XBLA, PSN 등 Casual 분야의신규시장에대한관심필요 Casual MMO 게임개발기술에대한투자및양성필요 Tool/Middleware 분야의경우기술격차심화및해외기술의존도상승 국내의경우 PC 기반의중대형멀티플레이어게임컨텐트개발은매우우수하나기술의제품화및공유가부족함 25
Thank You 26