1 Game System Analysis. Idea about system analysis (SA) Idea about system analysis (SA) Mind mapping Mind mapping Case study – term project Case study.

Slides:



Advertisements
Similar presentations
COMPUTER GRAPHICS CS 482 – FALL 2014 NOVEMBER 10, 2014 GRAPHICS HARDWARE GRAPHICS PROCESSING UNITS PARALLELISM.
Advertisements

CP411 Computer Graphics, Wilfrid Laurier University Introduction # 1 Welcome to CP411 Computer Graphics 2012 Instructor: Dr. Hongbing Fan Introduction.
MANIFEST DESTINY 560group3 Abe Kim David Straily Jarrod Freeman Abdul Mod-Rokbi “The future of RTS games...”
Soul Envoy Final Year Project 22nd April 2006 By Zhu Jinhao.
Robotics Simulator Intelligent Systems Lab. What is it ? Software framework - Simulating Robotics Algorithms.
Further Programming for 3D applications CE Introduction to Further Programming for 3D application Bob Hobbs Faculty of Computing, Engineering and.
Sep 14, Fall 2006IAT 4101 Design Teams Team Structure Interdisciplinary Teams.
AGD: 5. Game Arch.1 Objective o to discuss some of the main game architecture elements, rendering, and the game loop Animation and Games Development.
Rendering Engine Basics CS 446: Real-Time Rendering & Game Technology David Luebke University of Virginia.
0 Real-time Graphics: Issues and Trends in Games Tobi Saulnier CEO, 1 st Playable Productions November 5, 2007 Computer Graphics, Fall 2007.
Gearbox Software PRODUCTION PIPELINE – JOBS TITLES – JOB DESCRIPTIONS.
An Overview of Qt - asankar1. Agenda About Qt –A brief intro of Qt Qt development tools –Tools used for building Qt application Qt Architecture –The underlying.
3D Game Programming Using OGRE3d (Object-Oriented Graphics Rendering Engine) 黃世強 Room 706 #ext.
OGRE 3D. Object-oriented Graphics Rendering Engine “powers” your 3D graphics applications SDK vs. Game Engine User Input? Game State? Audio Files? Cross-platform.
Introduction to Computer Games and Graphical System Lecture #1: Lecture #1: Introduction, Overview Introduction, Overview Xu.Zhu Xu.Zhu SIT, Shanghai,
CSE328:Computer Graphics OpenGL Tutorial Dongli Zhang Department of Computer Science, SBU Department of Computer Science, Stony.
Administrative IMGD Topics Background Admin Stuff Motivation Objectives Class material! 2.
Programming Tools and Applications. Programming Tools 3D systems – Maya – Blender – Unity – Ogre3D Libraries – OpenGL – Direct3D.
How Creative Intelligence Works Business Plan.
3rd Person Shooter Milestone 1. Timeplan & Progress table Timeplan Progress table Progress table.
Dakota Humphries (Project Lead) Thomas Impellitteri (Tech Lead) Daryl McGhee II (Design Lead) Keith Rosier (Asset Lead)
Introduction 01_intro.ppt
CSE 381 – Advanced Game Programming 3D Game Architecture.
Lesson 1: Intro to Animation
CS 638, Fall 2001 CS 638: Computer Games Technology Fall 2001.
CS 480/680 Computer Graphics Course Overview Dr. Frederick C Harris, Jr. Fall 2012.
Open-Source Graphics Development with the Delta3D Game Engine Chris Osborn Lead Software Engineer Delta3D, MOVES Institute
 Develop PC-based FPS (first-person- shooter)  Model weapons and aliens  Animate weapons and aliens  Use simple game and character models  Object.
CHAPTER 4 Window Creation and Control © 2008 Cengage Learning EMEA.
Zhonghua Qu and Ovidiu Daescu December 24, 2009 University of Texas at Dallas.
Real-time Graphical Shader Programming with Cg (HLSL)
Senior Design Spring 2010 Milestone 1. General Project Info Team Members: – Lauren Bissett – Dan Maguire – Nicholas Woodfield Project Goals: – Expand.
Textual Based Generation of Adventure Games Ross Berkland Supervisor: Professor Shaun Bangay Scene to Adventure Game.
Project ImpactO Do you have the balls?. Unity 4 Pro Version control Global effects (God rays, volumetric partilcles, realtime shadows)
UW EXTENSION CERTIFICATE PROGRAM IN GAME DEVELOPMENT 2 ND QUARTER: ADVANCED GRAPHICS The asset pipeline.
CSED451. Computer Graphics Term Project 3D Runner Game Team CSED451. Computer Graphics Term Project – 3D Runner Game.
Game Engine Programming. Game Engine Game Engine Rendering Engine (OGRE) Rendering Engine (OGRE) Physics Engine (Bullet) Physics Engine (Bullet) Input/Output.
1 ETC. 2 Sounds FX Sounds FX –WAV audio files –Load into memory and play it »Load »Play »Stop »Pause –2D or 3D »3D should be integrated into scene management.
Computer Graphics Tz-Huan Huang National Taiwan University.
1 Angel and Shreiner: Interactive Computer Graphics 6E © Addison-Wesley 2012 Introduction to Computer Graphics 靜宜大學 資訊工程系 蔡奇偉 副教授
Web Games Programming An Introduction to Unity 3D.
1 Angel and Shreiner: Interactive Computer Graphics 6E © Addison-Wesley 2012 Introduction to Computer Graphics Ed Angel Professor Emeritus of Computer.
Computer Graphics I, Fall 2008 Introduction to Computer Graphics.
1 Mpeg-4 Overview Gerhard Roth. 2 Overview Much more general than all previous mpegs –standard finished in the last two years standardized ways to support:
Introduction to Making Multimedia
Real-Time Rendering & Game Technology CS 446/651 David Luebke.
A Multi-agent Approach for the Integration of the Graphical and Intelligent Components of a Virtual Environment Rui Prada INESC-ID.
Ahmed Saker Indie Game Developer
Useful Tools for Making Video Games Part II An overview of.
Games Development Game Architecture: Entities CO2301 Games Development 1 Week 22.
1 Contents  Audio  Sprite  Input devices  Game production milestones  Course summary.
INTRODUCTION GORT is a virtual 3D modeling environment for computer programmers. Its main area of focus is to aid in the education of programmers learning.
Havok FX Physics on NVIDIA GPUs. Copyright © NVIDIA Corporation 2004 What is Effects Physics? Physics-based effects on a massive scale 10,000s of objects.
Auran Jet Engine Keng Shih-Ling
Something about the Game Engine 昱泉 InterServ 王銓彰 Kevin C. Wang.
GAM666 – Introduction To Game Programming ● Programmer's perspective of Game Industry ● Introduction to Windows Programming ● 2D animation using DirectX.
Lauren Bissett, Daniel Maguire, Nicholas Woodfield.
1 Topics: Introduction to Game Engine Course Overview What is a game engine? Advantages and Disadvantages Torque Game Engine.
UFCFSU-30-13D Technologies for the Web An Introduction to Unity 3D.
Introducing Qt 3D Sean Harmer Paul Lemire
Khang Lam Daniel Limas Kevin Castillo Juan Battini
Games Development Practices 3D Modelling
Scene Manager Creates and places movable objects like lights and cameras so as to access them efficiently, e.g. for rendering. Loads and assembles world.
Ogre Overview Lecture 3.
Ogre Overview.
Tools Communication: Google Code Version Control: SVN UML: LucidCharts.
Computer Animation System Overview
Games Development Game Architecture: Entities
Introduction to JavaScript & jQuery
Unity Game Development
Presentation transcript:

1 Game System Analysis

Idea about system analysis (SA) Idea about system analysis (SA) Mind mapping Mind mapping Case study – term project Case study – term project 2Contents

For program structure analysis For program structure analysis –Program modulus –Tools To identify work load To identify work load –Programs/tools under development For resource management For resource management –Man month –How many programmers ? –Development tools ? –Specific tools ? For job dependency analysis For job dependency analysis 3 Why system analysis (1/2)

To make technical feasibility analysis 程式結構 To make technical feasibility analysis 程式結構 –R&D ? Pre-process for Pre-process for –Technical design document –Project management Bridge from game design to programming Bridge from game design to programming 4 Why system analysis (2/2)

No standard procedures No standard procedures Something must be done! Something must be done! Methods Methods –UML –Mind mapping ( 心智圖法 ) 5 Something about system analysis

Brainstorming Brainstorming Integration Integration Dependency analysis Dependency analysis Create the project Create the project Write the technical design document (TDD) Write the technical design document (TDD) 6 System analysis steps

Based on the game design to put everything as many as we could Based on the game design to put everything as many as we could Use mind mapping Use mind mapping Including Including –Game system »Combat / Village / Puzzle / … –Program modulus »Camera / PC control / NPC AI / UI / FX /… –Tools »Level editor / Scene editor / … –Entities in games »Characters / vehicles / terrain / audio / … 7Brainstorming

Confirm the resource limitation Confirm the resource limitation Technical implement possibility Technical implement possibility Put all related items together Put all related items together Man month analysis Man month analysis –How many ? –Who ? Jobs/System identification Jobs/System identification 8Integration

Sort the Jobs Sort the Jobs –By dependency –By programmers Prototype for scheduling Prototype for scheduling Dependency analysis

10 Dependency analysis Schedule One: Schedule Two:

Scheduling Scheduling Job assignment Job assignment Resource allocation Resource allocation Check points Check points Milestones Milestones Risk management policy Risk management policy 11 System analysis – create the project

Specification Specification Resources Resources Design in details Design in details Implementation methods ( 工法 ) Implementation methods ( 工法 ) Algorithms Algorithms The project The project Show each milestone Show each milestone SOP (standard operation procedure 標準作業程序 ) SOP (standard operation procedure 標準作業程序 ) 12 Write the technical design document

Mind mapping 心智圖法 Mind mapping 心智圖法 A radiant thinking tool A radiant thinking tool Applications Applications –What one has learned from study –Proposal –Notes –Traveling journal 遊記 –System analysis Reference Reference –Program »Visio »MindManager, »MindMapper: –Tony Buzan, Barry Buzan, “ The Mind Map Book: How to Use Radiant Thinking to Maximize Your Brain's Untapped Potential ” 13 Mind map

14

15 MindMapper 2008

Use MindManager Pro 7 Use MindManager Pro 7 Developed by MindJet Developed by MindJet Business/Mindjet-MindManager-Pro.shtml Business/Mindjet-MindManager-Pro.shtml 16 Mind map demo using MindManager

17 Term Project System Analysis

Real-time shooting game Real-time shooting game Mission-based levels Mission-based levels Keyboard- and mouse-driven controls Keyboard- and mouse-driven controls Player vs computer Player vs computer State-based AI State-based AI Group movement Group movement Game design (1/3)

Space ship – controlled by player Space ship – controlled by player »Move »Attack NPC – controlled by computer NPC – controlled by computer –“Robots” - Enemy »Triggered by time table –AI »Move »Standby »Anti-attack »Attack 19 Game design (2/3)

Game AI Game AI –Finite state machine –Path finding »3D »A* –Steering behavior »Flocks / Schools / Herds Flocks / Schools / HerdsFlocks / Schools / Herds » –AI Game Programming Wisdom, Charles River Media (1 & 2) 20 Game design (3/3)

Basic comments Basic comments/*! \brief A game listener A detailed description: A game listener handles game events, game state and game geometry. */ class GameListener { private: int n; //!< The number of elements. //!<……}; 21 Doxygen – A documentation generator

Basic comments Basic comments/*! \brief Add two numbers Compute the sum of two integers. \param a The first integer. \param b The second integer. \return The sum of two integers. */ int addTwoNumbers(int a, int b); 22 Doxygen – A documentation generator

23 Introduction to OGRE 3D

24 Prerequisites: On Windows, Microsoft Visual C++.NET 2003 Familiar with ISO Standard C++, STL Latest drivers for graphics hardware

25 OGRE3D - An open source software project - Lesser GNU Public License -Mature -Stable -Reliable -Flexible, plug-in libraries -Cross-platform -Full-featured library For real-time 3D graphics applications in an object-oriented manner

26 Dependencies On Windows: - FreeType - devIL - zziplib - zlib - Cg Toolkit

27 Where does OGRE 3D fit? Rendering Video View A typical high-level game / simulation architecture

28 Features: - Support both OpenGL and Direct3D - Cross-platforms, e.g. Windows, Linux, Mac OS - Extensible object framework - Support fixed-function texture, blending techniques, programmable GPU techniques, shading languages, e.g. Cg, HLSL - Queue-based rendering management - LoD

29 Features: - Advanced maskable scene-querying system - Advanced plug in-based particle system - Support for skyboxes, skyplanes and skydomes - Robust material system - Support animation: skeletal, morph, pose - Compositor postprocessing - Extensible resource management

30 Scene Graph - The data structure of the scene objects - Design ? - Something to render - meshes - sub-meshes - materials - positions of the objects

31 Scene Graph The data structure of the scene objects - Design ? - Something to render - meshes - sub-meshes - materials - positions of the objects - Scene Graph MeshSub-mesh Material Renderable Scene Node [ 1.. n ][ ][ 1.. n ] Movable or not?

32 Attached ? Implements ?

33 Render queue architecture - Each queue has an order - Render based on order - Each item in a queue has an order too!

34 OGRE3D: Subsystem overview (1) Root - fire up and shut down - can access every subsystems (2) Resource management - Mesh,.mesh - Skeleton,.skeleton - Material,.material - GPU program,.program,.asm - Texture - Compositor,.compositor - Font,.fontdef

35 OGRE3D: Subsystem overview (3) Scene management - SceneManager - SceneNode (4) Render system and render target - RenderSystem, generalization of the interface between OGRE and hardware API - RenderTarget

36 OGRE3D: Managers - Manages access to or control lifetimes of other related types of objects -Singleton objects. -(1) LogManager -(2) ControllerManager -(3) DynLibManager -(4) PlatformManager

37 OGRE3D: Managers -(5) CompositorManager -(6) ParticleSystemManager -(7) MaterialManager -(8) SkeletonManager

38 OGRE3D: Managers -(9) MeshManager -(10) OverlayManager -(11) ResourceGroupManager -(12) TextureManager