Resistance: Fall of Man. Insomniac Games
|
|
- Britney Martin
- 5 years ago
- Views:
Transcription
1 Resistance: Fall of Man Insomniac Games
2 Development Started on PC with a small prototype team concurrent with PS2 development Good for prototyping shaders little change Good for prototyping lighting, tools and build process Bad for code development, systems were not written with the Cell in mind Later on, small group handled porting code base to PS3 while others continued working on PC
3 Development Many concepts shared from PS2 Asset types named the same to keep artists happy Structure of the engine is similar Similar tool chain No runtime code shared from PS2 PS3 Resistance and PS2 Ratchet had little in common Lots of ASM on PS2 so not much to use on PS3 Most PS2 systems were considered too simple for PS3
4 Programmer Tools Perforce ProDG SN DBS Visual Studio In house asset control system In house build server In house world tool
5 Art Tools Maya Mental Ray Microwave Photoshop Z Brush SpeedTree
6 Asset Types Kept the same asset names to keep the process familiar U-Frags Ties Mobys Shrubs Foliage Skies Shaders
7 U-Frags Most basic - fastest to render Completely static geometry Vertices stored in world space as locally compressed fragments to keep the precision as high as possible real positions computed in the vertex programs Non-instanceable Lightmapped or vertex baked Memory efficient PVS occlusion
8 Ties Conceptually the same as U-Frag but instanced - vertices defined in local space Completely static geometry Can be nested within each other in the tools, invisible to runtime Lightmapped or vertex baked Made up the majority of a typical scene Stored as two RSX streams, a master and a per instance stream with the lighting info PVS occlusion
9 Mobys Dynamic geometry, most expensive Can have physics, animations, etc. May be rigid (1 bone) or skinned (4 bones) Static lighting from pre-computed spatial lighting volumes Dynamic lighting from runtime lights Crude static LOD
10 Shrubs Very fast to render, used to fill scene Levels would have 10k-20k instances Very basic geometry Simple lighting Didn t cast shadows but could receive them Basic wind like animation Fade out in distance PVS occlusion
11 Foliage Used for leaves on trees Camera facing billboards Used SpeedTree for data generation but wrote our own custom renderer for runtime Could cast and receive shadows Basic wind like animation similar to shrubs PVS occlusion
12 Skies Multiple frequencies of cloud layers composited together Artist driven animation parameters to procedurally control cloud turbulence, drift, formation rates, etc. Simplified geometry could be rendered before or after cloud layers Bloom geometry layers Drawn after opaque geometry PVS occlusion
13 Shaders Base color map, Alpha/Bloom, Normal, Gloss, Incandescence, Parallax, and Detail Fine grain control exposed to artists texture format, filtering modes, etc. Vertex programs abstracted the asset type All assets shared fragment programs - consistent lighting Runtime has specific shader programs to optimally handle the various combinations of shader features Used simple pre-processor #defines to add / exclude program features Reduced texture formats when channels are missing, for example DXT5 can be DXT1 when there is no alpha Normal maps are stored compressed as 2 channels in a DXT5 map LDR Cubemaps created from probes placed in maya
14 Shaders The alpha type is part of the shader Opaque (updates z) Blended (does not update z) Additive (does not update z) Cutout (uses alpha test) Destination alpha used for bloom Shader LOD removed expensive features Shaders use the hardware features of the texture samplers Swizzle to get the inputs in to the place where the fragment program expects them Use the sign extend and force zero/one feature
15 Build Process Each asset type has a stand alone builder PC Command line tool, integrated with our asset control system Single platform, assets are built directly in hardware format PS3 viewer that shows individual built assets Good for debugging assets Good for rough stats on a single asset Viewers show all physics and collision info Viewers allow artists to light and animate out of the context of a level
16 Build Process Engine Data Level Packer A level is a group of assets of different types packed together by the packing tool The level pack tool is what lays optimally in the final format, resolves duplicates, partitions memory, etc. On load, very little copying is done, we just need to patch up pointers RSX data is packed into two chunks, one that ends up in main memory and one in local memory
17 Problems Build Process No backwards/forwards compatibility of data formats Slow asset builds Live data
18 Static Lighting Environments use simplified HL2 style light maps - directional luminance in the lightmaps and a shared chrominance per vertex Environments could also use vertex lighting, in which case there was no lightmaps and the luminance and chrominance are stored per vertex The lightmaps, UVs and vertex components for lighting are stored per instance All lighting computed through Mental Ray Interactive lightmap resolution and format tweaking
19 Static Lighting Mobys and moveable objects use a static environment lighting database that is pre-computed from artist placed lighting volumes Luminance is stored per sample along 6-axes with a shared chrominance Data is stored as a grid and interpolated Code could query a single point or a cube and locally interpolate etc. Uniform grids do not catch shadow edges very accurately without consuming lots of memory
20 Dynamic Lighting Dynamic lights are rendered as a separate pass per light Only the individual geometry fragments affected by the lights are rendered in the light passes All lighting is per pixel, typical light types supported (Point, spot, etc.) Lighting model is the same for all assets so they all light the same Shadow maps are pre-rendered at the start of the frame, there is an 8mb limit for shadow maps Shadow maps are 16-bit linear depth and range controlled for best accuracy
21 Static occlusion Static occlusion is a PVS system Database is computed offline using the PS3 to render the scene using queries and the PC to quantize/pack the results usually an overnight process At runtime given a camera position you get a bit array of the visible nodes and the max visible distance Each asset fragment belongs to a node and a simple runtime logic op determines if the node is visible There is a limited number of nodes, each represented by a single bit
22 Frame Buffer Setup Display Buffers 2 x 1280x bit RGBA Both display buffers share a single tile to reduce wasted memory We did not support 1080, couldn t afford the memory Render Buffer 1280x720, 32bit, 2xMSAA 32-bit depth buffer Color and depth in their own tiles with compression enabled Always render 1280x720 down sample for NTSC and PAL
23 Frame Buffer Setup Alternate Render Buffer 1280x704, 32bit, 2xMSAA 704 is the magic height as it obeys all the restrictions of depth and color tiles Center on the 720 front buffer, giving 8 pixels of black top and bottom No wasted memory due to alignment. Over 1Mb saved from using 1280x720 and 2% faster Idea was too late to be useful on Resistance
24 Frame Render Order Statically lit opaque geometry Sky Statically lit alpha geometry Dynamically lighting passes on opaque geometry Dynamically lighting passes on alpha geometry Effects, Water, Ground fog Resolve multisampling to display buffer, apply color correction (contrast, brightness and saturation) Apply post effects on the off screen display buffer Draw HUD directly to display Draw the system OSD Flip the display buffers
25 Video Memory Budget Vram is almost exclusively pixel data, some verts may be in vram for memory balancing 21Mb Frame buffers 512K Fragment programs 8Mb Scratch memory (non-tiled) 50-70Mb Lightmaps Mb Textures Scratch memory is used for shadow buffers, effects, and post effect working buffers etc.
26 Main Memory No CRT allocations Allocate our own memory segment Allocate all free memory as 1mb pages Individually commit pages to the segment Map everything in the segment to the RSX We do leave a couple of Mb slop for the CRT because its used by other CRT functions (printf) and networking code
27 Memory Allocators Low level allocator is an allocate at end type allocator with no ability to free memory The allocator has checkpoints which we can use to rollback main and video memory Reliable clean up without concern about destructors being called There are checkpoints inserted at the various points during load so we can quickly reload when a player dies or restarts the level Systems that needed true dynamic memory dealt with it with an optimal allocator specific to that system
28 Main Memory Budget Elf+System Setup Code and Data 2mb of embedded SPU elf data 2+mb of PRX modules BSS CRT Heap SPU Thread group swap space 17Mb 8Mb 1Mb 2Mb
29 Core engine Main Memory Budget Push buffers Scratch memory Global Textures and HUD Misc 6-10Mb 9Mb 8Mb 2Mb SPU DMA buffers, vertex programs, RT light setup buffers, FIOS init, Sound init etc
30 Main Memory Budget Level Data Effects Geometry Collision Anim Enviroment Instance Occlusion/PVS Sound Dialog Physics Nav+AI Moby Instance Gameplay/Scripts 11Mb 50Mb 9Mb 30Mb 2Mb 4Mb 30Mb 12Mb 9Mb 4Mb 6Mb 10Mb
31 2 Raw mode SPUs SPU Configuration One SPU running broad collision One SPU running narrow collision These run all the time 3 [Job Manager] SPUs In a thread group running SPURS [Job Manager] policy module All jobs go on these 1 Unused This is for the OS to steal for AC3 Encode etc This should be used with its own job manager instance in the future for jobs that don t mind getting interrupted by the OS
32 SPU Configuration Initially we had [Job Manager] using 4 SPUs When we finally got a OS that was stealing an SPU it was more expensive to have [Job Manager] on 4 SPUs than on 3 With AC3 Encode active Total SPU Time for [Job Manager] of 4 Total SPU Time for [Job Manager] of ms ms Multiple instances of SPURS/[Job Manager] came too late for us to use
33 SPU Systems Animation Audio (NextSynth and LR1) Bucketer sort Collision (separate broad and narrow) Dynamic DB Dynamic joint FX update Geom Cull Clip (for shadows and decals) Glass Moby constants Physics collision Physics simulation Particle (weather fx) Render mats Static DB Water (FFT)
34 SPUs All our systems started off as RAW mode The only long term (not finished this frame) asynchronous processing is the collision on the raw SPUs We use [Job Manager] but not all systems use it in the typical way of fire and forget. Most of our system require the SPU to be running a particular system at the same time as the PPU. To ensure the SPU is doing what we want at the correct time we send [Job Manager] the job and use our own thin synchronization and job buffering schemes using the locked-line for communication 10-20% total SPU utilization
35 Collision Overview Dedicated 2 raw SPUs one for broad and narrow phases We support immediate and deferred queries PPU can directly issue broad or narrow queries Broad and narrow overlap, so narrow is processing as soon as the first broad phase result is available There are two kinds of deferred collision operations, standard priority which has to done this frame and low priority which has until the end of the next frame Immediate requests from the PPU are higher priority than any deferred collision Getting game code to optimally use the deferred collision was an issue
36 Animation Overview Approx 400 Joint limit, 15 blended clips Full body animations or partials with per joint weights Stack driven system similar to ICE No blend shapes or set driven key support at present While the SPU is computing the animation for a given moby the PPU is updating the next moby and computing its anim stack Animation time is typically completely hidden, only time we stall is when waiting for the last anim to complete Animation data is compressed in memory and temporarily decompressed before use by SPU
37 Animation Overview Low level animation system is driven by a high level move system which builds the anim stack End result of the animation is a set of local space matrices Subset of skeletal joints called dynamic joints which can be modified on post animated data physics, IK, rag doll, gameplay procedural movement, etc. operate on these Any modifications are multiplied back down the hierarchy only for those leaves of the tree by an SPU job Finally all resultant local space matrices are sent to another SPU job which builds the world space matrices and pushbuffer which uploads them to RSX All skinning is done on the RSX
38 The End Questions?
GUERRILLA DEVELOP CONFERENCE JULY 07 BRIGHTON
Deferred Rendering in Killzone 2 Michal Valient Senior Programmer, Guerrilla Talk Outline Forward & Deferred Rendering Overview G-Buffer Layout Shader Creation Deferred Rendering in Detail Rendering Passes
More informationRSX Best Practices. Mark Cerny, Cerny Games David Simpson, Naughty Dog Jon Olick, Naughty Dog
RSX Best Practices Mark Cerny, Cerny Games David Simpson, Naughty Dog Jon Olick, Naughty Dog RSX Best Practices About libgcm Using the SPUs with the RSX Brief overview of GCM Replay December 7 th, 2004
More informationThe Vegetation of Horizon Zero Dawn. Gilbert Sanders Principal Artist, Guerrilla Games
The Vegetation of Horizon Zero Dawn Gilbert Sanders Principal Artist, Guerrilla Games Welcome Topics Simulation Shading Creation Shadow Casting Summary Introduction Our Renderer Artist Node-Based Shader
More informationRatchet and Clank Future: Tools of Destruction Technical Debriefing. February 2008
Ratchet and Clank Future: Tools of Destruction Technical Debriefing February 2008 60Hz Tech Goals Visuals that appeal to casual and experienced players Look and feel of a CG movie Lots of action on screen
More informationBuilding scalable 3D applications. Ville Miettinen Hybrid Graphics
Building scalable 3D applications Ville Miettinen Hybrid Graphics What s going to happen... (1/2) Mass market: 3D apps will become a huge success on low-end and mid-tier cell phones Retro-gaming New game
More informationLecture 16. Introduction to Game Development IAP 2007 MIT
6.189 IAP 2007 Lecture 16 Introduction to Game Development Mike Acton, Insomiac Games. 6.189 IAP 2007 MIT Introduction to Game Development (on the Playstation 3 / Cell ) Mike Acton Engine Director, Insomniac
More informationDominic Filion, Senior Engineer Blizzard Entertainment. Rob McNaughton, Lead Technical Artist Blizzard Entertainment
Dominic Filion, Senior Engineer Blizzard Entertainment Rob McNaughton, Lead Technical Artist Blizzard Entertainment Screen-space techniques Deferred rendering Screen-space ambient occlusion Depth of Field
More informationStreaming Massive Environments From Zero to 200MPH
FORZA MOTORSPORT From Zero to 200MPH Chris Tector (Software Architect Turn 10 Studios) Turn 10 Internal studio at Microsoft Game Studios - we make Forza Motorsport Around 70 full time staff 2 Why am I
More informationThe Making of Seemore WebGL. Will Eastcott, CEO, PlayCanvas
The Making of Seemore WebGL Will Eastcott, CEO, PlayCanvas 1 What is Seemore WebGL? A mobile-first, physically rendered game environment powered by HTML5 and WebGL 2 PlayCanvas: Powering Seemore WebGL
More informationGame Development for
Game Development for Who am I? Harry Krueger Senior Programmer at Housemarque Games Lead Programmer on Resogun Presentation Flow Intro to Housemarque and Resogun Housemarque Engine and Tools Platform-specific
More informationigmobybspheres jonathan garrett 3/7/08
igmobybspheres jonathan garrett 3/7/08 introduction mobys have a bounding-sphere (bsphere) rough approximation to the extents of the character moves with the character approximation used as a faster alternative
More informationOptimizing Mobile Games with Gameloft and ARM
Optimizing Mobile Games with Gameloft and ARM Stacy Smith Senior Software Engineer, ARM Adrian Voinea World Android Technical Lead, Gameloft Victor Bernot Lead Visual Effects Developer, Gameloft 1 ARM
More informationInsomniac Physics. Eric Christensen GDC 2009
Insomniac hysics Eric Christensen GDC 2009 Overview Go over the evolution of IG physics system Shaders Library Shaders Custom event shaders Original Design Resistance: Fall of Man orted From C to S3 U
More informationBlack Desert Online. Taking MMO Development to the Next Level. Dongwook Ha Gwanghyeon Go
Black Desert Online Taking MMO Development to the Next Level Dongwook Ha (dongwook@pearlabyss.com) Gwanghyeon Go (xdotdt@pearlabyss.com) 2018-03-23 Black Desert Online Challenges Massive data and contents
More informationBringing AAA graphics to mobile platforms. Niklas Smedberg Senior Engine Programmer, Epic Games
Bringing AAA graphics to mobile platforms Niklas Smedberg Senior Engine Programmer, Epic Games Who Am I A.k.a. Smedis Platform team at Epic Games Unreal Engine 15 years in the industry 30 years of programming
More informationOptimizing and Profiling Unity Games for Mobile Platforms. Angelo Theodorou Senior Software Engineer, MPG Gamelab 2014, 25 th -27 th June
Optimizing and Profiling Unity Games for Mobile Platforms Angelo Theodorou Senior Software Engineer, MPG Gamelab 2014, 25 th -27 th June 1 Agenda Introduction ARM and the presenter Preliminary knowledge
More informationCS 354R: Computer Game Technology
CS 354R: Computer Game Technology Texture and Environment Maps Fall 2018 Texture Mapping Problem: colors, normals, etc. are only specified at vertices How do we add detail between vertices without incurring
More informationPLAYSTATION Edge. Mark Cerny Jon Olick Vince Diesi
PLAYSTATION Edge PLAYSTATION Edge Mark Cerny Jon Olick Vince Diesi Tools and Technology WWS America ICE Team WWS America Mark Cerny Jon Olick Advanced Technology Group WWS Europe Vince Diesi GCM Replay
More informationThe Application Stage. The Game Loop, Resource Management and Renderer Design
1 The Application Stage The Game Loop, Resource Management and Renderer Design Application Stage Responsibilities 2 Set up the rendering pipeline Resource Management 3D meshes Textures etc. Prepare data
More informationPowerVR Performance Recommendations The Golden Rules. October 2015
PowerVR Performance Recommendations The Golden Rules October 2015 Paul Ly Developer Technology Engineer, PowerVR Graphics Understanding Your Bottlenecks Based on our experience 3 The Golden Rules 1. The
More informationRender-To-Texture Caching. D. Sim Dietrich Jr.
Render-To-Texture Caching D. Sim Dietrich Jr. What is Render-To-Texture Caching? Pixel shaders are becoming more complex and expensive Per-pixel shadows Dynamic Normal Maps Bullet holes Water simulation
More informationWorking with Metal Overview
Graphics and Games #WWDC14 Working with Metal Overview Session 603 Jeremy Sandmel GPU Software 2014 Apple Inc. All rights reserved. Redistribution or public display not permitted without written permission
More informationPowerVR Series5. Architecture Guide for Developers
Public Imagination Technologies PowerVR Series5 Public. This publication contains proprietary information which is subject to change without notice and is supplied 'as is' without warranty of any kind.
More informationMichal Valient Lead Tech Guerrilla Games
Michal Valient Lead Tech Guerrilla Games Intro Guerrilla is based in Amsterdam and we re part of Sony since 2005 We re working on two titles Unannounced new IP Killzone: Shadow Fall The new Killzone is
More informationNext-Generation Graphics on Larrabee. Tim Foley Intel Corp
Next-Generation Graphics on Larrabee Tim Foley Intel Corp Motivation The killer app for GPGPU is graphics We ve seen Abstract models for parallel programming How those models map efficiently to Larrabee
More informationBroken Age's Approach to Scalability. Oliver Franzke Lead Programmer, Double Fine Productions
Broken Age's Approach to Scalability Oliver Franzke Lead Programmer, Double Fine Productions Content Introduction Platform diversity Game assets Characters Environments Shaders Who am I? Lead Programmer
More informationAdvanced Maya Texturing and Lighting
Advanced Maya Texturing and Lighting Lanier, Lee ISBN-13: 9780470292730 Table of Contents Introduction. Chapter 1 Understanding Lighting, Color, and Composition. Understanding the Art of Lighting. Using
More informationDeferred Rendering Due: Wednesday November 15 at 10pm
CMSC 23700 Autumn 2017 Introduction to Computer Graphics Project 4 November 2, 2017 Deferred Rendering Due: Wednesday November 15 at 10pm 1 Summary This assignment uses the same application architecture
More informationBitSquid Tech Benefits of a data-driven renderer. Tobias Persson GDC 2011
BitSquid Tech Benefits of a data-driven renderer Tobias Persson GDC 2011 Agenda An introduction to BitSquid Key design principles of BitSquid Tech Benefits of having a data-driven rendering pipe BitSquid
More informationMAXIS-mizing Darkspore*: A Case Study of Graphic Analysis and Optimizations in Maxis Deferred Renderer
MAXIS-mizing Darkspore*: A Case Study of Graphic Analysis and Optimizations in Maxis Deferred Renderer A New Gaming Experience Made Possible With Processor Graphics Released in early 2011, the 2nd Generation
More informationCocoVR - Spherical Multiprojection
CocoVR - Spherical Multiprojection Luke Schloemer Lead 3D Artist Xavier Gonzalez Senior Rendering Engineer Image(s) courtesy of Disney/Pixar Production Prototype 3 Months 3-5 Team Members Full development
More informationProgressive Mesh. Reddy Sambavaram Insomniac Games
Progressive Mesh Reddy Sambavaram Insomniac Games LOD Schemes Artist made LODs (time consuming, old but effective way) ViewDependentMesh (usually used for very large complicated meshes. CAD apps. Probably
More informationMany rendering scenarios, such as battle scenes or urban environments, require rendering of large numbers of autonomous characters.
1 2 Many rendering scenarios, such as battle scenes or urban environments, require rendering of large numbers of autonomous characters. Crowd rendering in large environments presents a number of challenges,
More informationGuide Contents Introduction Useful Information Navigating the Scene Hotkeys Placing and Manipulating Objects The Builder Cube Builder Cube Edit
Guide Contents Introduction Useful Information Navigating the Scene Hotkeys Placing and Manipulating Objects The Builder Cube Builder Cube Edit Geometry Builder Cube Edit UVs Static Meshes Materials Mat.
More informationWed, October 12, 2011
Practical Occlusion Culling in Killzone 3 Michal Valient Lead Tech, Guerrilla B.V. Talk takeaway Occlusion culling system used in Killzone 3 The reasons why to use software rasterization (Some) technical
More informationRealistic and Fast Cloud Rendering in Computer Games. Niniane Wang Software Engineer Microsoft Flight Simulator (now at Google Inc) Intro Video
Realistic and Fast Cloud Rendering in Computer Games Niniane Wang Software Engineer Microsoft Flight Simulator (now at Google Inc) Intro Video 1 Agenda Previous Work 3-D Modeling + Art Pipeline Performance
More informationAdvanced Maya e Texturing. and Lighting. Second Edition WILEY PUBLISHING, INC.
Advanced Maya e Texturing and Lighting Second Edition Lee Lanier WILEY PUBLISHING, INC. Contents Introduction xvi Chapter 1 Understanding Lighting, Color, and Composition 1 Understanding the Art of Lighting
More informationBringing Hollywood to Real Time. Abe Wiley 3D Artist 3-D Application Research Group
Bringing Hollywood to Real Time Abe Wiley 3D Artist 3-D Application Research Group Overview > Film Pipeline Overview and compare with Games > The RhinoFX/ATI Relationship > Ruby 1 and 2 The Movies > Breakdown
More informationComputer Graphics. Bing-Yu Chen National Taiwan University The University of Tokyo
Computer Graphics Bing-Yu Chen National Taiwan University The University of Tokyo Hidden-Surface Removal Back-Face Culling The Depth-Sort Algorithm Binary Space-Partitioning Trees The z-buffer Algorithm
More informationRendering Grass Terrains in Real-Time with Dynamic Lighting. Kévin Boulanger, Sumanta Pattanaik, Kadi Bouatouch August 1st 2006
Rendering Grass Terrains in Real-Time with Dynamic Lighting Kévin Boulanger, Sumanta Pattanaik, Kadi Bouatouch August 1st 2006 Goal Rendering millions of grass blades, at any distance, in real-time, with:
More informationAdaptive Point Cloud Rendering
1 Adaptive Point Cloud Rendering Project Plan Final Group: May13-11 Christopher Jeffers Eric Jensen Joel Rausch Client: Siemens PLM Software Client Contact: Michael Carter Adviser: Simanta Mitra 4/29/13
More informationRuby: Dangerous Curves Effects Breakdown: How d they do that? Dan Ginsburg 3D Application Research Group
Ruby: Dangerous Curves Effects Breakdown: How d they do that? Dan Ginsburg 3D Application Research Group Overview > RhinoFX/ATI relationship > Ruby shot-by-shot breakdown > Glows > Motion Blur > Reflections
More informationSPU Render. Arseny Zeux Kapoulkine CREAT Studios
SPU Render Arseny Zeux Kapoulkine CREAT Studios arseny.kapoulkine@gmail.com http://zeuxcg.org/ Introduction Smash Cars 2 project Static scene of moderate size Many dynamic objects Multiple render passes
More informationCreating Flood Effects in Uncharted 3. Eben Cook VFX Naughty Dog
Creating Flood Effects in Uncharted 3 Eben Cook VFX Artist @ Naughty Dog Me me me BA in Communication Design from UNT Computer Science minor 11 years in the industry. EALA, Naughty Dog I ve been: Concept
More informationAttention to Detail! Creating Next Generation Content For Radeon X1800 and beyond
Attention to Detail! Creating Next Generation Content For Radeon X1800 and beyond Callan McInally Manager, 3D Application Research Group Overview In order to fully take advantage of next generation hardware,
More informationDeveloping Technology for Ratchet and Clank Future: Tools of Destruction
Developing Technology for Ratchet and Clank Future: Tools of Destruction Mike Acton, Engine Director with Eric Christensen, Principal Programmer Sideline:
More informationApplications of Explicit Early-Z Culling
Applications of Explicit Early-Z Culling Jason L. Mitchell ATI Research Pedro V. Sander ATI Research Introduction In past years, in the SIGGRAPH Real-Time Shading course, we have covered the details of
More informationMali Developer Resources. Kevin Ho ARM Taiwan FAE
Mali Developer Resources Kevin Ho ARM Taiwan FAE ARM Mali Developer Tools Software Development SDKs for OpenGL ES & OpenCL OpenGL ES Emulators Shader Development Studio Shader Library Asset Creation Texture
More informationCS4620/5620: Lecture 14 Pipeline
CS4620/5620: Lecture 14 Pipeline 1 Rasterizing triangles Summary 1! evaluation of linear functions on pixel grid 2! functions defined by parameter values at vertices 3! using extra parameters to determine
More informationThe Graphics Pipeline
The Graphics Pipeline Ray Tracing: Why Slow? Basic ray tracing: 1 ray/pixel Ray Tracing: Why Slow? Basic ray tracing: 1 ray/pixel But you really want shadows, reflections, global illumination, antialiasing
More informationGraphics Processing Unit Architecture (GPU Arch)
Graphics Processing Unit Architecture (GPU Arch) With a focus on NVIDIA GeForce 6800 GPU 1 What is a GPU From Wikipedia : A specialized processor efficient at manipulating and displaying computer graphics
More informationOptimizing Mobile Games with ARM. Solo Chang Staff Applications Engineer, ARM
Optimizing Mobile Games with ARM Solo Chang Staff Applications Engineer, ARM 1 ARM Ecosystem My first role in ARM was in Developer Relations Developers came to us to ask for help We couldn t share their
More informationCS GAME PROGRAMMING Question bank
CS6006 - GAME PROGRAMMING Question bank Part A Unit I 1. List the different types of coordinate systems. 2. What is ray tracing? Mention some applications of ray tracing. 3. Discuss the stages involved
More informationEnabling immersive gaming experiences Intro to Ray Tracing
Enabling immersive gaming experiences Intro to Ray Tracing Overview What is Ray Tracing? Why Ray Tracing? PowerVR Wizard Architecture Example Content Unity Hybrid Rendering Demonstration 3 What is Ray
More informationPoint based global illumination is now a standard tool for film quality renderers. Since it started out as a real time technique it is only natural
1 Point based global illumination is now a standard tool for film quality renderers. Since it started out as a real time technique it is only natural to consider using it in video games too. 2 I hope that
More informationCGDD 4113 Final Review. Chapter 7: Maya Shading and Texturing
CGDD 4113 Final Review Chapter 7: Maya Shading and Texturing Maya topics covered in this chapter include the following: Shader Types Shader Attributes Texturing the Axe Life, Love, Textures and Surfaces
More informationLOD and Occlusion Christian Miller CS Fall 2011
LOD and Occlusion Christian Miller CS 354 - Fall 2011 Problem You want to render an enormous island covered in dense vegetation in realtime [Crysis] Scene complexity Many billions of triangles Many gigabytes
More informationGeForce4. John Montrym Henry Moreton
GeForce4 John Montrym Henry Moreton 1 Architectural Drivers Programmability Parallelism Memory bandwidth 2 Recent History: GeForce 1&2 First integrated geometry engine & 4 pixels/clk Fixed-function transform,
More informationEnhancing Traditional Rasterization Graphics with Ray Tracing. October 2015
Enhancing Traditional Rasterization Graphics with Ray Tracing October 2015 James Rumble Developer Technology Engineer, PowerVR Graphics Overview Ray Tracing Fundamentals PowerVR Ray Tracing Pipeline Using
More informationProfiling and Debugging Games on Mobile Platforms
Profiling and Debugging Games on Mobile Platforms Lorenzo Dal Col Senior Software Engineer, Graphics Tools Gamelab 2013, Barcelona 26 th June 2013 Agenda Introduction to Performance Analysis with ARM DS-5
More informationVulkan: Architecture positive How Vulkan maps to PowerVR GPUs Kevin sun Lead Developer Support Engineer, APAC PowerVR Graphics.
Vulkan: Architecture positive How Vulkan maps to PowerVR GPUs Kevin sun Lead Developer Support Engineer, APAC PowerVR Graphics www.imgtec.com Introduction Who am I? Kevin Sun Working at Imagination Technologies
More informationOptimisation. CS7GV3 Real-time Rendering
Optimisation CS7GV3 Real-time Rendering Introduction Talk about lower-level optimization Higher-level optimization is better algorithms Example: not using a spatial data structure vs. using one After that
More informationEngine Development & Support Team Lead for Korea UE4 Mobile Team Lead
Jack Porter Engine Development & Support Team Lead for Korea UE4 Mobile Team Lead I ve worked on Unreal Engine development since 1998! Contributed to Unreal Tournament & Gears of War series Introduction
More informationIntegrating Physics into a Modern Game Engine. Object Collision. Various types of collision for an object:
Integrating Physics into a Modern Game Engine Object Collision Various types of collision for an object: Sphere Bounding box Convex hull based on rendered model List of convex hull(s) based on special
More informationOpaque. Flowmap Generator 3
Flowmap Shaders Table of Contents Opaque... 3 FlowmapGenerator/Opaque/Water... 4 FlowmapGenerator /Opaque/Water Foam... 6 FlowmapGenerator /Opaque/Solid... 8 Edge Fade... 9 Depth Fog... 12 Opaque The opaque
More information1 INTRoduCTIon to BLENDER 1. 3 PREPARATIon 19
INTRoduCTIoN xv 2 INTRoduCTIon to GIMP 13 Topics Covered... xv What Isn t Covered...xvi Requirements....xvi The Projects....xvi The Bat Creature... xvii The Spider Bot... xvii The Jungle Temple... xvii
More informationGLOBAL SNOW Reference Guide
GLOBAL SNOW Reference Guide Contents Introduction... 3 How it works... 3 Demo Scene... 4 Quick Start... 4 Global Snow Parameters... 5 Scene Setup (Forward Rendering)... 5 Scene Setup (Deferred Rendering)...
More informationScanline Rendering 2 1/42
Scanline Rendering 2 1/42 Review 1. Set up a Camera the viewing frustum has near and far clipping planes 2. Create some Geometry made out of triangles 3. Place the geometry in the scene using Transforms
More informationPowerVR Performance Recommendations. The Golden Rules
PowerVR Performance Recommendations Copyright Imagination Technologies Limited. All Rights Reserved. This publication contains proprietary information which is subject to change without notice and is supplied
More informationUnderstanding M3G 2.0 and its Effect on Producing Exceptional 3D Java-Based Graphics. Sean Ellis Consultant Graphics Engineer ARM, Maidenhead
Understanding M3G 2.0 and its Effect on Producing Exceptional 3D Java-Based Graphics Sean Ellis Consultant Graphics Engineer ARM, Maidenhead Introduction M3G 1.x Recap ARM M3G Integration M3G 2.0 Update
More informationParallelizing Graphics Pipeline Execution (+ Basics of Characterizing a Rendering Workload)
Lecture 2: Parallelizing Graphics Pipeline Execution (+ Basics of Characterizing a Rendering Workload) Visual Computing Systems Today Finishing up from last time Brief discussion of graphics workload metrics
More informationTextures. Texture coordinates. Introduce one more component to geometry
Texturing & Blending Prof. Aaron Lanterman (Based on slides by Prof. Hsien-Hsin Sean Lee) School of Electrical and Computer Engineering Georgia Institute of Technology Textures Rendering tiny triangles
More informationComputer Graphics. Bing-Yu Chen National Taiwan University
Computer Graphics Bing-Yu Chen National Taiwan University Visible-Surface Determination Back-Face Culling The Depth-Sort Algorithm Binary Space-Partitioning Trees The z-buffer Algorithm Scan-Line Algorithm
More informationNew BFME2 World Builder Features Addendum to the BFME1 World Builder Manual
New BFME2 World Builder Features Addendum to the BFME1 World Builder Manual 1. To help organize World Builder, we ve added the Logical Tab and the Sound Tab to the Object Properties. a. The Logical Tab
More informationPowerVR Hardware. Architecture Overview for Developers
Public Imagination Technologies PowerVR Hardware Public. This publication contains proprietary information which is subject to change without notice and is supplied 'as is' without warranty of any kind.
More informationVulkan Multipass mobile deferred done right
Vulkan Multipass mobile deferred done right Hans-Kristian Arntzen Marius Bjørge Khronos 5 / 25 / 2017 Content What is multipass? What multipass allows... A driver to do versus MRT Developers to do Transient
More informationGame Graphics Programmers
Graphics INTRODUCTION - A Glimpse into what Game Graphics Programmers do - System level view of Graphics Architectures & Pipeline - Intro to Commonly used Rendering Techniques in Games Game Graphics Programmers
More informationOptimizing DirectX Graphics. Richard Huddy European Developer Relations Manager
Optimizing DirectX Graphics Richard Huddy European Developer Relations Manager Some early observations Bear in mind that graphics performance problems are both commoner and rarer than you d think The most
More informationAdobe Flash Course Syllabus
Adobe Flash Course Syllabus A Quick Flash Demo Introducing the Flash Interface Adding Elements to the Stage Duplicating Library Items Introducing Keyframes, the Transform Tool & Tweening Creating Animations
More informationGraphics Hardware, Graphics APIs, and Computation on GPUs. Mark Segal
Graphics Hardware, Graphics APIs, and Computation on GPUs Mark Segal Overview Graphics Pipeline Graphics Hardware Graphics APIs ATI s low-level interface for computation on GPUs 2 Graphics Hardware High
More informationMODELING AND HIERARCHY
MODELING AND HIERARCHY Introduction Models are abstractions of the world both of the real world in which we live and of virtual worlds that we create with computers. We are all familiar with mathematical
More informationgltf 2.0: Status and Outlook
gltf 2.0: Status and Outlook 31st July 2018 by Norbert Nopper (nopper@ux3d.io, @McNopper) Content Status (15 minutes) Outlook (35 minutes) Questions & Answers (10 minutes) Status gltf 2.0 What we currently
More informationEnhancing Traditional Rasterization Graphics with Ray Tracing. March 2015
Enhancing Traditional Rasterization Graphics with Ray Tracing March 2015 Introductions James Rumble Developer Technology Engineer Ray Tracing Support Justin DeCell Software Design Engineer Ray Tracing
More informationGetting fancy with texture mapping (Part 2) CS559 Spring Apr 2017
Getting fancy with texture mapping (Part 2) CS559 Spring 2017 6 Apr 2017 Review Skyboxes as backdrops Credits : Flipmode 3D Review Reflection maps Credits : NVidia Review Decal textures Credits : andreucabre.com
More informationEECE 478. Learning Objectives. Learning Objectives. Rasterization & Scenes. Rasterization. Compositing
EECE 478 Rasterization & Scenes Rasterization Learning Objectives Be able to describe the complete graphics pipeline. Describe the process of rasterization for triangles and lines. Compositing Manipulate
More informationChapter Answers. Appendix A. Chapter 1. This appendix provides answers to all of the book s chapter review questions.
Appendix A Chapter Answers This appendix provides answers to all of the book s chapter review questions. Chapter 1 1. What was the original name for the first version of DirectX? B. Games SDK 2. Which
More informationUltimate Graphics Performance for DirectX 10 Hardware
Ultimate Graphics Performance for DirectX 10 Hardware Nicolas Thibieroz European Developer Relations AMD Graphics Products Group nicolas.thibieroz@amd.com V1.01 Generic API Usage DX10 designed for performance
More information3D Rendering Pipeline
3D Rendering Pipeline Reference: Real-Time Rendering 3 rd Edition Chapters 2 4 OpenGL SuperBible 6 th Edition Overview Rendering Pipeline Modern CG Inside a Desktop Architecture Shaders Tool Stage Asset
More informationCraig Peeper Software Architect Windows Graphics & Gaming Technologies Microsoft Corporation
Gaming Technologies Craig Peeper Software Architect Windows Graphics & Gaming Technologies Microsoft Corporation Overview Games Yesterday & Today Game Components PC Platform & WGF 2.0 Game Trends Big Challenges
More informationLEVEL 1 ANIMATION ACADEMY2010
1 Textures add more realism to an environment and characters. There are many 2D painting programs that can be used to create textures, such as Adobe Photoshop and Corel Painter. Many artists use photographs
More informationGame Architecture. 2/19/16: Rasterization
Game Architecture 2/19/16: Rasterization Viewing To render a scene, need to know Where am I and What am I looking at The view transform is the matrix that does this Maps a standard view space into world
More informationAnimation Essentially a question of flipping between many still images, fast enough
33(70) Information Coding / Computer Graphics, ISY, LiTH Animation Essentially a question of flipping between many still images, fast enough 33(70) Animation as a topic Page flipping, double-buffering
More informationLecture 25: Board Notes: Threads and GPUs
Lecture 25: Board Notes: Threads and GPUs Announcements: - Reminder: HW 7 due today - Reminder: Submit project idea via (plain text) email by 11/24 Recap: - Slide 4: Lecture 23: Introduction to Parallel
More informationAdvanced Gemstone Shaders
Advanced Gemstone Shaders Introduction: I am fascinated from crystals and minerals and gemstones. As a game developer, I always look for solutions to simulate such precious stones. When most people hear
More informationThe Illusion of Motion Making magic with textures in the vertex shader. Mario Palmero Lead Programmer at Tequila Works
The Illusion of Motion Making magic with textures in the vertex shader Mario Palmero Lead Programmer at Tequila Works Dark Ages before Textures in the Vertex Shader What is the Vertex Shader? A programmable
More informationPhysically Based Shading in Unity. Aras Pranckevičius Rendering Dude
Physically Based Shading in Unity Aras Pranckevičius Rendering Dude Outline New built-in shaders in Unity 5 What, how and why And all related things Shaders in Unity 4.x A lot of good things are available
More informationReal-Time Hair Simulation and Rendering on the GPU. Louis Bavoil
Real-Time Hair Simulation and Rendering on the GPU Sarah Tariq Louis Bavoil Results 166 simulated strands 0.99 Million triangles Stationary: 64 fps Moving: 41 fps 8800GTX, 1920x1200, 8XMSAA Results 166
More informationNVSG NVIDIA Scene Graph
NVSG NVIDIA Scene Graph Leveraging the World's Fastest Scene Graph Agenda Overview NVSG Shader integration Interactive ray tracing Multi-GPU support NVIDIA Scene Graph (NVSG) The first cross-platform scene
More informationCreative Web Designer Course
Creative Web Designer Course Photoshop 1. Getting to Know the Work Area Starting to work in Adobe Photoshop Using the tools Setting tool properties Undoing actions in Photoshop More about panels and panel
More informationVISIT FOR THE LATEST UPDATES, FORUMS & MORE ASSETS.
Gargoyle VISIT WWW.SFBAYSTUDIOS.COM FOR THE LATEST UPDATES, FORUMS & MORE ASSETS. 1. INTRODUCTION 2. QUICK SET UP 3. PROCEDURAL VALUES 4. SCRIPTING 5. ANIMATIONS 6. LEVEL OF DETAIL 7. CHANGE LOG 1. Introduction
More information