Search






My Shopping Cart

[ 0 ] items in cart

View Cart | Checkout


Game Developer Research
bullet Research Reports

Gamasutra
bullet Contractor Listings

GDC Vault
bullet Individual Subscription

GDC Audio Recordings
bullet App Developers Conference 2013
bullet GDC Next 2013
bullet GDC Europe 2013
bullet GDC 2013
bullet GDC Online 2012
bullet GDC Europe 2012
bullet GDC 2012
bullet GDC 2011
bullet GDC 10
bullet GDC 09
bullet GDC Austin 08
bullet GDC Mobile 08
bullet GDC 08
bullet GDC Austin 07
bullet GDC Mobile 07
bullet GDC 07
bullet GDC 06
bullet GDC 05
bullet GDC 04
bullet GDC 03
bullet GDC 01
bullet GDC 2000 & Before


Newest Item(s)
bullet

Why Now Is the Best Time Ever to Be a Game Developer

Ingress: Design Principles Behind Google's Massively Multiplayer Geo Game

Playing with 'Game'

Gathering Your Party with Project Eternity (GDC Next 10)

D4: Dawn of the Dreaming Director's Drama (GDC Next 10)

Using Plot Devices to Create Gameplay in Storyteller (GDC Next 10)

How I Learned to Stop Worrying and Love Making CounterSpy (GDC Next 10)

Luck and Skill in Games

Minimalist Game Design for Mobile Devices

Broken Age: Rethinking a Classic Genre for the Modern Era (GDC Next 10)


Storefront > GDC Vault Store - Audio Recordings > More GDC > GDC 2003


View larger image
 


QTY:

Designing a Portable Shader Library for Current and Future API’s
Price $5.95
Adjustment
Type
Stock Unlimited
Status
Weight 8 lb, 4 oz
SKU GDC-03-133
Statistics
Description
Designing a Portable Shader Library for Current and Future API’s,
854

Programming, Lecture

Alex Vlachos
Senior Software Engineer, ATI
Generalizing a shader library for real-time graphics has become a necessity. The days of hard-coding render state and shaders has long passed. A robust shader library that gracefully falls back to older hardware while still supporting the bleeding edge in shader technology is useful to PC and console developers alike. The internal shader library that ATI’s demo team uses will be the case study on how to generalize a shader library for games. This session will discuss artist usability, preprocessing, and runtime issues that they have encountered in implementing their flexible shader library. An important part of creating a generalized shader library is providing a simple, usable interface to the artists. The custom Maya material plug-in used by the team's artists will be discussed in detail. After the art has been created and preprocessed, there are many runtime decisions that must be made. In the case of PC development, selectively creating vertex buffers that match the current installed graphics card is crucial. Developing for 2-year-old hardware will severely limit the creativity of the visuals. Enough thought must be put into purposely preprocessing redundant geometry so the runtime engine has enough data to selectively load exactly what is needed, no more, no less. In the case of console development, falling back to older hardware usually isn’t an issue, but cross-platform development is. To make the best use of graphics memory, each shader’s associated vertex buffers must contain the minimal data necessary. Many games have one or two vertex formats they use globally, which severely hinders their ability to add new shaders. All of these issues will be addressed in the presentation. Demos from the previous two generations of hardware will be shown with detailed explanations of how the shader library allowed the visuals to be created with minimal programming overhead.

Attendees will gain insight into a method of managing shaders and associated state in a very generalized way. The entire pipeline from artist interaction to runtime managing of stated will be brought together and centered around a robust shader description file.

Please leave this field blank.

There are no related products to display.

Related Products...

Please leave this field blank.