Game Engines Game: – Engine – Assets (models, animations, sounds, AI, and physics) – Code (Rules, AI, Scripting, etc.)

Slides:



Advertisements
Similar presentations
Real-Time Rendering 靜宜大學資工研究所 蔡奇偉副教授 2010©.
Advertisements

 Welke overwegingen komen daar bij kijken?  Multiplatform?  Install base -> potential user base.
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.
Status – Week 257 Victor Moya. Summary GPU interface. GPU interface. GPU state. GPU state. API/Driver State. API/Driver State. Driver/CPU Proxy. Driver/CPU.
Real-Time Rendering TEXTURING Lecture 02 Marina Gavrilova.
CGDD 4003 THE MASSIVE FIELD OF COMPUTER GRAPHICS.
IN4151 Introduction 3D graphics 1 Introduction to 3D computer graphics part 2 Viewing pipeline Multi-processor implementation GPU architecture GPU algorithms.
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.
GPU Graphics Processing Unit. Graphics Pipeline Scene Transformations Lighting & Shading ViewingTransformations Rasterization GPUs evolved as hardware.
CSE 381 – Advanced Game Programming 3D Game Architecture.
Antigone Engine Kevin Kassing – Period
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 ( 林建良 )
1 Introduction to Computer Graphics SEN Introduction to OpenGL Graphics Applications.
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.
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.
CSCE 552 Spring D Models By Jijun Tang. Triangles Fundamental primitive of pipelines  Everything else constructed from them  (except lines and.
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.
Shader Programming Introduzione. History We have seen ever-increasing graphics performance in PCs since the release of the first 3dfx Voodoo cards in.
David Luebke 1 1/20/2016 Real-Time Rendering CS 446 David Luebke.
Honours Graphics 2008 Session 5. Today’s focus Rasterization Visibility determination Coarse / fine visibility determination.
From Turing Machine to Global Illumination Chun-Fa Chang National Taiwan Normal University.
What are shaders? In the field of computer graphics, a shader is a computer program that runs on the graphics processing unit(GPU) and is used to do shading.
CS 445 / 645: Introductory Computer Graphics Review.
Antigone Engine. Introduction Antigone = “Counter Generation” Library of functions for simplifying 3D application development Written in C for speed (compatible.
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.
3D on the Web : Understanding the basics
- Introduction - Graphics Pipeline
Chapter 1 An overview on Computer Graphics
Antigone Engine.
Programmable Pipelines
Ogre Overview Lecture 3.
Ogre Overview.
Graphics Processing Unit
Chapter 6 GPU, Shaders, and Shading Languages
From Turing Machine to Global Illumination
Introduction to WebGL 3D with HTML5 and Babylon.js
The Graphics Rendering Pipeline
CS451Real-time Rendering Pipeline
Understanding Theory and application of 3D
Understanding Theory and application of 3D
Graphics Processing Unit
Games Development Practices 3D Model Import/Export
Game Engines Non-game specific technology Game: Engine
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 고려대학교 컴퓨터 그래픽스 연구실.
OpenGL-Rendering Pipeline
Presentation transcript:

Game Engines Game: – Engine – Assets (models, animations, sounds, AI, and physics) – Code (Rules, AI, Scripting, etc.)

GE161 Includes – Main game loop, framerate – Event queue – 2D sprites – Text What is missing?

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

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

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

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

Performance Occlusion Culling – 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 – 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 OpenGL vs. DirectX – DX6-9 – OpenGL ,2.0 Shadow Maps (Lightmaps) Shadow Maps (Lightmaps) Shaders Shaders Dynamic Shadows Dynamic Shadows MIP Maps/Multi Maps/ Bump Mapping MIP Maps/Multi Maps/ Bump Mapping Effects 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 - 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

GE161 What is missing? – 3D support – Memory management, Multi-threading support – Scripting, Authoring – Save/Load – Physics – High performance data structures – Data Import and Export – Middleware integration (beyond SDL)

GE161 What is missing? – Networking – Sound