Diary of a Graphics Programmer

Sunday, November 29, 2009

CSE 190 GPU Programming UCSD

›
I am going to teach GPU Programming in the upcoming quarter at UCSD. Look out for course CSE 190. Here is the announcment: Course Objectives...
16 comments:

Order-Independent Transparency

›
Transparent objects that require alpha blending cannot be rendered on top in a G-Buffer. Blending two or more normals, depth or position val...
7 comments:
Sunday, November 15, 2009

You want to become a Graphics Programmer ...

›
I regularly receive e-mails with the question what kind of books I recommend if someone wants to become a graphics programmer. Here is my cu...
25 comments:
Thursday, October 22, 2009

River of Lights II

›
More work-in-progress shots.
12 comments:
Thursday, October 15, 2009

BitMasks / Packing Data into fp Render Targets

›
Recently I had the need to pack bit fields into 32-bit channels of a 32:32:32:32 fp render target. First of all we can assume that all regis...
6 comments:
Wednesday, September 30, 2009

River of Lights

›
Work in progress shot here. More than 8000 lights attached to particles in this hallway. Resolution is 1280x720 and the GPU still runs with ...
16 comments:
Tuesday, August 11, 2009

SIGGRAPH 2009 Impressions: Inferred Lighting

›
There is a new lighting approach that extends the Light Pre-Pass idea. It is called Inferred Lighting and it was presented by Scott Kircher ...
18 comments:
Tuesday, July 28, 2009

SIGGRAPH 2009

›
SIGGRAPH is next week and I am still preparing my talk. If you are around please come by and say hi. My talks title is "Light Pre-Pass ...
2 comments:
Friday, July 3, 2009

MSAA on the PS3 with Light Pre-Pass on the SPU

›
In the previous "MSAA on the PS3" thread Matt Swoboda jumped in and mentioned that they implemented MSAA on the SPU in the Phyre E...
10 comments:
Monday, June 29, 2009

Ambient Occlusion in Screen-Space

›
Screen-Space Ambient Occlusion (SSAO) is quite popular in the moment. ShaderX7 had several articles and there are lots of approaches to grad...
21 comments:
Wednesday, June 17, 2009

MSAA on the PS3 with Deferred Lighting / Shading / Light Pre-Pass

›
The Killzone 2 team came up with an interesting way to use MSAA on the PS3. You can find it on page 39 of the following slides: http://www.d...
12 comments:
Saturday, June 13, 2009

Multisample Anti-Aliasing

›
Utilizing the Multisample Anti-Aliasing (MSAA) functionality of graphics hardware for deferred lighting can be challenging. Nicolas Thibiero...
8 comments:
Saturday, May 23, 2009

Deferred Lighting / Particle System

›
Here is a shot of a GPU based particle system with lights attached to each particle. I used Emil Persson's example Deferred Shading prog...
12 comments:
Monday, May 18, 2009

Light Pre-Pass: Knee-Deep

›
Several companies adopted the Light Pre-Pass idea, modified it or came up with similar ideas: Crytek: they call it Deferred lighting contrar...
10 comments:
Thursday, April 30, 2009

3D Supershape

›
Over the last few years I was looking into the 3D Supershape formula described by Paul Bourke here and originally developed by Johan Gielis...
10 comments:
Wednesday, April 29, 2009

Rockstar Games

›
Today GTA IV was launched a year ago and it is my last day where I am employed at Rockstar Games. After fantastic more than four years I fel...
6 comments:

Beagle Board

›
I got the whole development environment going and wrote a few small little graphics demos for it. All the PowerVR demos I tried ran on it ni...
2 comments:
Monday, April 20, 2009

BeagleBoard.org Ubuntu 8.04

›
In the last few days I setup a development environment for a BeagleBoard (see beagleboard.org). I wanted to hold the next-gen environment fo...
1 comment:
Saturday, March 21, 2009

ShaderX7 on Sale

›
ShaderX7 has more than 800 pages. I like the following screenshot from Amazon.com: ShaderX8 is already announced. Proposals are due by May ...
12 comments:
Wednesday, March 18, 2009

Mathematica

›
I switched from Maple to Mathematica last week. One of my small little projects is to store all the graphics algorithms I liked to visualize...
5 comments:
Sunday, February 22, 2009

Team Leadership in the Game Industry

›
A few of my friends contributed to the book "Team Leadership in the Game Industry" by Seth Spaulding II. So I was curious what you...
3 comments:
Monday, February 2, 2009

Larrabee on GDC

›
I am really looking forward to Mike Abrash's and Tom Forsyth's talks at GDC about Larrabee: http://software.intel.com/en-us/articles...
3 comments:
Sunday, February 1, 2009

ShaderX7 Update

›
I updated the ShaderX7 website at http://www.shaderx7.com/ There is now the first draft of the cover and the Table of Content. Enjoy! :-) As...
1 comment:
Sunday, January 25, 2009

iP* programming tip #9

›
This issue of the iPhone / iPod Touch programmig tips series focuses on some aspects of VFP assembly programming. My friend Noel Llopis brou...
8 comments:
Friday, January 9, 2009

Partial Derivative Normal Maps

›
To make my collection of normal map techniques more complete on this blog I also have to mention a special normal mapping technique that Ins...
14 comments:
Sunday, January 4, 2009

Handling Scene Geometry

›
I recently bumped into a post by Roderic Vicaire on the www.gamedev.net forums. It is h ere. Obviously there is no generic solution to handl...
4 comments:
Sunday, December 28, 2008

Major Oolong Update

›
Two days ago I commited a major Oolong update. Please check out the Oolong Engine blog at http://www.oolongengine.com I updated the memory m...
5 comments:
Thursday, December 25, 2008

Programming Vertex, Geometry and Pixel Shaders

›
A christmas present: we just went public with "Programming Vertex, Geometry and Pixel Shaders". I am a co-author of this book and ...
14 comments:
Wednesday, December 24, 2008

Good Middleware

›
Kyle Wilson wrote up a summary about how good middleware should be: http://gamearchitect.net/2008/09/19/good-middleware/ An interesting read...
Tuesday, December 23, 2008

Quake III Arena for the iPhone

›
Just realized that one of the projects I contributed some code to went public in the meantime. You can get the source code at http://code.go...

iP* programming tip #8

›
This is the christmas issue of the iPhone / iPod touch programming tips. This time we deal with the touch interface. The main challenge I fo...
1 comment:
Sunday, December 14, 2008

iP* programming tip #7

›
This time I will cover Point Sprites in the iPhone / iPod touch programming tip. The idea is that a set of points -as the simplest primitive...
4 comments:
Friday, December 12, 2008

Free ShaderX Books

›
Eric Haines provided a home for the three ShaderX books that are now available for free. Thanks so much for this! Here is the URL http://tog...
Thursday, December 11, 2008

iP* programming tip #6

›
This time we are covering another fixed-function technique used in DirectX 7/8 times: Matrix Palettes support is an extension of OpenGL ES 1...

GDC Talk

›
My GDC talk was accepted. I am happy ... yeaaahhh :-)
7 comments:
Tuesday, December 9, 2008

Cached Shadow Maps

›
A friend just asked me about how to design a shadow map system for many lights with shadows. A quite good explanation was given in the follo...
Saturday, December 6, 2008

Dual-Paraboloid Shadow Maps

›
Here is an interesting post on Dual-Paraboloid Shadow maps. Pat Wilson describes a single pass approach here http://www.gamedev.net/communi...
3 comments:

iP* programming tip #5

›
Let's look today at the "pixel shader" level of the hardware functionality. The iPhone Application programming guide says that...
13 comments:
Friday, December 5, 2008

iP* programming tip #4

›
All of the source code presented in this series is based on the Oolong engine. I will refer to the examples when it is appropriate so that e...
4 comments:
Wednesday, December 3, 2008

iP* programming tip #3

›
Today I will cover the necessary files of an iP* application and the folders that potentially hold data on the device from your application....
3 comments:
Tuesday, December 2, 2008

HLSL 5.0 OOP / Dynamic Shader Linking

›
I just happen to bump into a few slides on the new HLSL 5.0 syntax. The slides are at http://www.microsoft.com/downloads/details.aspx?Family...
3 comments:

iP* programming tip #2

›
Today's tip will deal with the setup of your development environment. As a Mac newbie I was having a hard time to get used to the enviro...
1 comment:
Sunday, November 30, 2008

iP* programming tip #1

›
This is the first of a series of iPhone / iPod programming tips. Starting iPhone development requires first the knowledge of the underlying ...
5 comments:
‹
›
Home
View web version

About Me

My photo
Wolfgang Engel
Wolfgang is the CEO and Co-Founder of The Forge Interactive. The Forge Interactive is a think-tank for advanced real-time graphics research and a service provider for the video game and movie industry. His company worked in the last more than 15 years on many AAA IPs like Tomb Raider, Battlefield 4, Murdered Soul Suspect, Star Citizen, Dirt 4, Vainglory, Transistor, Call of Duty Black Ops 3, Battlefield 1, Mafia 3, Call of Duty Warzone, Supergiant's Hades, Forza, Fable, Forza Horizon, more Call of Duty's, Hypixel, No Man's Sky and many more. Wolfgang is the founder and editor of the ShaderX, GPU Pro, and GPU Zen books series, was a Microsoft MVP for 11 years, the author of several books and articles on real-time rendering, and a regular contributor to websites and the GDC. One of the books he edited -ShaderX4- won the Game Developer Front line award in 2006. He is an active contributor to several future standards that drive the Game Industry. You can find him on Bluesky @wolfgangfengel.bsky.social
View my complete profile
Powered by Blogger.