Game Engines Non-game specific technology Game: Engine

Slides:



Advertisements
Similar presentations
 Welke overwegingen komen daar bij kijken?  Multiplatform?  Install base -> potential user base.
Advertisements

COMPUTER GRAPHICS SOFTWARE.
BY AHROORAN & CHRIS 3D Software. Blender Blender is a free open source software that is compatible with most operating systems for example GNU/Linux,
Graphics Pipeline.
Rasterization and Ray Tracing in Real-Time Applications (Games) Andrew Graff.
Irrlicht Engine Overview By Eric Osugi. Irrlicht's development started in 2003 with only Nikolaus Gebhardt. Only after the 1.0 release of Irrlicht in.
CGDD 4003 THE MASSIVE FIELD OF COMPUTER GRAPHICS.
Status – Week 283 Victor Moya. 3D Graphics Pipeline Akeley & Hanrahan course. Akeley & Hanrahan course. Fixed vs Programmable. Fixed vs Programmable.
The Graphics Pipeline CS2150 Anthony Jones. Introduction What is this lecture about? – The graphics pipeline as a whole – With examples from the video.
Introduction to OpenGL. What is OpenGL OpenGL is a low-level software interface to graphics hardware No commands for performing windowing tasks or obtaining.
CSE 381 – Advanced Game Programming Shading.
Shading Languages By Markus Kummerer. Markus Kummerer 2 / 19 State of the Art Shading.
02/04/03 Page 1 Rendering Visibility Lighting Texturing.
Game Engines Non-game specific technology Game: – Engine – Assets (models, animations, sounds, AI, and physics) – Code (AI, Scripting, etc.)
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.
Master Project Preparation Murtaza Hussain. Unity (also called Unity3D) is a cross-platform game engine with a built-in IDE developed by Unity Technologies.
GPU Graphics Processing Unit. Graphics Pipeline Scene Transformations Lighting & Shading ViewingTransformations Rasterization GPUs evolved as hardware.
Antigone Engine Kevin Kassing – Period
GPU Programming Robert Hero Quick Overview (The Old Way) Graphics cards process Triangles Graphics cards process Triangles Quads.
Programmable Pipelines. Objectives Introduce programmable pipelines ­Vertex shaders ­Fragment shaders Introduce shading languages ­Needed to describe.
Games Development Practices 3D Model Import/Export CO2301 Games Development 1 Week 17.
Programmable Pipelines. 2 Objectives Introduce programmable pipelines ­Vertex shaders ­Fragment shaders Introduce shading languages ­Needed to describe.
Chris Kerkhoff Matthew Sullivan 10/16/2009.  Shaders are simple programs that describe the traits of either a vertex or a pixel.  Shaders replace a.
1 Dr. Scott Schaefer Programmable Shaders. 2/30 Graphics Cards Performance Nvidia Geforce 6800 GTX 1  6.4 billion pixels/sec Nvidia Geforce 7900 GTX.
Game Engine Jian-Liang Lin ( 林建良 )
AN OVERVIEW OF GAME DEVELOPMENT
Stream Processing Main References: “Comparing Reyes and OpenGL on a Stream Architecture”, 2002 “Polygon Rendering on a Stream Architecture”, 2000 Department.
Computer Graphics The Rendering Pipeline - Review CO2409 Computer Graphics Week 15.
COMPUTER GRAPHICS CSCI 375. What do I need to know?  Familiarity with  Trigonometry  Analytic geometry  Linear algebra  Data structures  OOP.
 UDK and Unity are both game engines that offer a wide variety of options to create pretty much any type of game.  Each game engine has a built in environment.
NVIDIA CONFIDENTIAL Hardware Shading for Artists.
GRAPHICS PIPELINE & SHADERS SET09115 Intro to Graphics Programming.
CS662 Computer Graphics Game Technologies Jim X. Chen, Ph.D. Computer Science Department George Mason University.
Programmable Pipelines Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts Director, Arts Technology Center University.
Advanced Computer Graphics Spring 2014 K. H. Ko School of Mechatronics Gwangju Institute of Science and Technology.
CSE3AGT – How to fail the Exam Paul Taylor Things to forget: What is Barry? A hamster or a Guinea Pig? The differences between Dx9 and Dx10 What.
Review on Graphics Basics. Outline Polygon rendering pipeline Affine transformations Projective transformations Lighting and shading From vertices to.
Honours Graphics 2008 Session 5. Today’s focus Rasterization Visibility determination Coarse / fine visibility determination.
娛樂平台 再一次典範轉移 - Indie Game Engine. OPEN SOURCE 的成功典範 Linux Linux OS 的典範 OS 的典範 FireFox FireFox Web Browser 的典範 Web Browser 的典範 Blender Blender 3D 動畫工具的典範.
Edison Gao 主讲人:高原. GameFinal A Next-Gen 3D Game Engine Edison Gao.
Antigone Engine. Introduction Antigone = “Counter Generation” Library of functions for simplifying 3D application development Written in C for speed (compatible.
Game Engines Game: – Engine – Assets (models, animations, sounds, AI, and physics) – Code (Rules, AI, Scripting, etc.)
Graphics Pipeline Bringing it all together. Implementation The goal of computer graphics is to take the data out of computer memory and put it up on the.
1 Geometry for Game. Geometry Geometry –Position / vertex normals / vertex colors / texture coordinates Topology Topology –Primitive »Lines / triangles.
Computer Graphics: Programming, Problem Solving, and Visual Communication Steve Cunningham California State University Stanislaus and Grinnell College.
3D on the Web : Understanding the basics
Ying Zhu Georgia State University
Chapter 1 An overview on Computer Graphics
Antigone Engine.
Programmable Pipelines
Ogre Overview Lecture 3.
Computer Graphics and Game Technology
Chapter 1 An overview on Computer Graphics
Graphics Processing Unit
Chapter 6 GPU, Shaders, and Shading Languages
The Graphics Rendering Pipeline
Understanding Theory and application of 3D
Understanding Theory and application of 3D
Unit 20 Software Part 2.
Graphics Processing Unit
Unit 20 Software Part 2.
Games Development Practices 3D Model Import/Export
RADEON™ 9700 Architecture and 3D Performance
Computer Graphics Introduction to Shaders
CIS 441/541: Introduction to Computer Graphics Lecture 15: shaders
Adding Surface Detail 고려대학교 컴퓨터 그래픽스 연구실.
Adding Surface Detail 고려대학교 컴퓨터 그래픽스 연구실.
Games Development 2 Tools Programming
OpenGL-Rendering Pipeline
Presentation transcript:

Game Engines Non-game specific technology Game: Engine Assets (models, animations, sounds, AI, and physics) Code (AI, Scripting, etc.)

Game Engines: Rendering Pipeline Application/Scene Scene database update/traversal Object/Camera Movement/Animation Visibility/LOD/Culling Geometry Transforms: Model/World/View Viewport & Backface Culling Triangles Scan-line conversion Rasterization Shading Texturing/Fog/Alpha Depth                                                                                                  

Game Engines: Shading Flat Vertex (Gouraud) Pixel (Phong) Light Maps Programmable (Vertex & Pixel Shaders)                                                                                                  

Game Engines: Memory Management Cache Thrashing Group Primitives by Textures? Hardware T&L Compression Card Memory Why isn’t 32 bit color (16.7M) enough? 1280x1024x12 (Front,Back,Z)= 15MB                                                                                                  

Game Engines 3D Engine 3D Languages Authoring System Specialized Authoring (first or third person shooters)

Game Engines 3D Engine library of 3D graphics functions. free, $50-$100 up to $250,000 for commercial use. Require programming with an external delevopment system, normally Microsoft Visual C++. maximum of flexibility maximum of experience, work and time required.

Game Engines 3D Languages DirectX/OpenGL interface with a scripting language especially designed for 3D games Simpler than 'real' programming. Many based on Basic easy to learn not very well suited for large or complex games Alternatives: C- or Javascript-based languages.

Game Engines Authoring System 3D engine and a visual very fast 'clicking together' a game prototype. only simple games can be created without any programming. scripting language for programming or customizing the game.

Game Engines Specialized FPS (first or third person shooters) offer no or limited scripting. good alternative if you don't want to script and are not interested in publishing a game commercially.

Engine Considerations Platforms Performance Data Rendering/Features Animation Physics & Environment Scripting Authoring I/O Save/Load

Performance Occlusion Culling LOD Adaptive NURBS/Patches Cell Based: BSP tree, Portal, Octree Other: Potentially Visible Set, HOM LOD Adaptive NURBS/Patches Polygon Reduction Terrain Primitives

Data Import/Export 3D file formats Texture/Image Formats X, 3DS, MDL, MD2, MAP, WAD Texture/Image Formats Models/Animations: Maya, 3D Studio MAX Levels WorldcraftT or MilkshapeT Plugins

Rendering Features OpenGL vs. DirectX Shadow Maps (Lightmaps) Shaders DX6-9 OpenGL1.1-1.5,2.0 Shadow Maps (Lightmaps) Shaders Dynamic Shadows MIP Maps/Multi Maps/ Bump Mapping Effects

Animation Keyframe Bones (Skinning) Facial Animation Vertex Animation Inverse Kinematics (IK) Dynamics High-level Authoring

Physics & Physical Environment Visibility Collision Detection Terrain Following Gravity Physics Rigid & non-rigid bodies

Scripting Scripting languages add logic for controlling actors or objects Languages: Javascript Luo -http://www.lua.org/ Python Basic Custom:UnrealScript, C-Script, etc. Script Compilers for performance

Save/Load System allows the end user to save a complete game state. 'freezes' all running scripts and all objects and variables of the game and writes them into a file Without such a system: a script has to be written which stores the state of every variable and object and the position within every script function

Authoring/Editing Level Editor Model Editor Script Editor Terrain Logic

Sample Engines Specialized Authoring (FPS, 3PS) 3DGM, RF Authoring Quest, Radish, Virtools, Gamestudio/A6, Alice, Adobe Atmosphere, Blender 3D Languages Jamagic, DarkBASIC, Blitz 3D Engines TV3D, Irrlicht, Torque, Nebula, Crystal, Cipher, PR, Jupiter, Quake3, Unreal2 Standards-based Engines & Tools (VRML/X3D) Internet Scene Assembler, Cortona, Blaxxun,OpenWorlds, VizX3D

Game Engine Resources http://www.devmaster.net/engines http://www.pcplus.co.uk/reviews/ (->Software->Development and ->Software->Graphics) http://directory.google.com/Top/Computers/Programming/Games/3D/ http://cg.cs.tu-berlin.de/~ki/engines.html http://fraktali.849pm.com/graphengines.html http://www.flipcode.com/links/