Don’t get left behind

Monday, 28. February 2011

Do you want to know what the latest trends are in game development? Do you have a fear of being left behind in the game dev industry because you don’t know what such n’ such a technique is? Is there something you can do to make sure you’re not left behind in the dust?  There is!

In this post, I’m mainly concerned with physics and graphics, but the same sort of techniques apply to other fields as well. The following items are what I do regularly to keep up to date in my field:

Read more

Engine Update 001

Tuesday, 28. September 2010

I’m in the process of redoing my “testing” engine. I hope to make it robust, scalable, modular, while supporting a lot of other different technologies. This is the start of it using D3D9, but don’t worry, I’ll eventually port it over to d3d11. I’m going to skip 10 though. I have lots of things in the works for it too!

As you can see here, I have a few simple cubes and a triangle grid. Most likely the grid will turn into terrain. I haven’t decided what I wanted to name the engine yet. I’m leaning towards “Tornado.” I remember looking into a physics engine a while ago named “Cyclone” and I thought the name was interesting.

Books I’ve read in 2009

Tuesday, 7. September 2010

4/5 – Advanced Lighting and Materials with Shaders
Discusses a ton of different BRDF’s that I never knew existed. This book is really book and meant for advanced graphics programmers. There are a couple of things I dislike about the book: 1) Math formulas are glazed over and never really discussed, so you have to figure them out for yourself, which isn’t necessarily the end of the world. 2) Spherical Harmonic Lighting section was confusing. I’m not sure it was the books fault though because the concepts are really advanced. I just wish they were discussed in more detail. I had to read the section like 3 or 4 times and I’m still not 100% clear on some aspects. Overall, if you are into graphics, I highly recommend this book.

3/5 – Focus on 3D Models
This book is a little bit dated unfortunately. I’m not sure why it bothered discussing the obj model format, I feel it’s pretty worthless. You can be the judge though as the model formats it discusses are as follows: md2( quake 2), obj, milkshape 3d, 3ds, mdl (half-life), md3 (quake 3). I was looking for a good model format and so far I’ve settled on a possible few: milkshape 3d, x format, or possibly md5?  Milkshape 3d seems to be a good general one that can easily be converted to and from others.

5/5 – Programming Interviews Exposed
I learned quite a bit from this book, like solutions to problems that I’ve never really come across before but that could perhaps be useful in the future. Unfortunately, a lot of the questions are simple of you know the “trick.” Otherwise, it’s a good exercise and refresher if you’re rusty. I felt that this book helped expand my mind and helped me start thinking outside the box.

Free Books Online

Monday, 6. September 2010

CG Tutorial
GPU Gems
GPU Gems 2
GPU Gems 3
ShaderX Series
GameDev.net D3D Book
The 3D Graphics Pipeline
Linkers and Loaders
http://www.wikibooks.com
http://www.flooved.com

Graphics Pipeline

Tuesday, 1. June 2010

This article is simply a reference for the standard graphics pipeline. Sometimes I forget what happens in what space.
I know it’s pretty crappy, maybe I’ll redo it one day to make it nice and neat.

Graphics

Saturday, 29. May 2010

Publications

http://faculty.cs.tamu.edu/keyser/papers.html
http://www.uni-koblenz.de/~ritschel/
http://graphics.cs.williams.edu/papers/
http://kesen.huang.googlepages.com/
http://www.kunzhou.net/
http://graphics.stanford.edu/~kayvonf/research/index.html
http://graphics.stanford.edu/papers
http://mrelusive.com/
http://www.mpi-inf.mpg.de/~ritschel/
http://artis.imag.fr/Publications/
http://iquilezles.org/
http://grail.cs.washington.edu/pub/
http://graphics.cs.berkeley.edu/papers/
http://jcgt.org/
Chris Bloom’s Misc Graphics Articles
ATI / AMD Publications
nVidia Publications

Tutorials

Drunken Hyena
Riemer’s XNA Tutorials
Paul’s Projects
NEHE – OpenGL Tutorials
Flip Code’s Ray Tracing Tutorial

Misc

ATI Developer
nVidia Developer
GameDev.net Graphics Section
GameDev.net DirectX Section
Game Institute
Humus – Lots of examples
Real-time Rendering book

Conferences and Presentations

Friday, 28. May 2010

Read more

High Dynamic Range

Tuesday, 12. May 2009

Description: This is a DirectX application that I developed that is highly based off of the directX sdk sample. It implements glare/bloom, crosses/stars, blue shift, tone mapping, & light adaptation.

Date: 2009

Features:

  • Tone mapping
  • Light Adaptation
  • Blue Shift
  • Stars / Crosses
  • Glare / Bloom

Platform: PC

Requirements: None

Controls: None

Download: None

Screen Shots:

Blue shift off

Blue shift on.

Deferred Shading

Tuesday, 12. May 2009

Description: This is a DirectX application where I implemented deferred shading. Essentially it renders the scene to a G-Buffer where is stores normals, color, position, depth, & lighting information to different render targets. Then, you can combine them any way you want. This has the added benefit in that you don’t have to loop through each light and for each light, render each object.

Date: 2009

Features:

  • Directional Light Sources
  • Point Light Sources (Not implemented, coming soon)

Platform: PC

Requirements: Windows XP, 512 MB RAM, 1.6 GHz Processor

Controls: None

Download: None

Note the three directional light sources. Green, Red, & Blue.

Precomputed Radiance Transfer – Spherical Harmonics Lighting

Tuesday, 12. May 2009

Description: This is a DirectX application that I developed using Precomputed Radiance Transfer (PRT) and Spherical Harmonics (SH) in order to implement a form of Global Illumination (GI). The two screen shots show the scene using a directional light source and a cube map as a light source.

Date: 2009

Features and Notes:

  • Self Shadowing
  • Soft Shadows
  • Realistic Lighting
  • Scene objects must stay static relative to each other
  • Scene objects can not deform
  • No Specularity
  • Only uses vs_1_1
  • Real-time
  • Requires a long precomputation process
  • Dependant upon mesh resolution of scene objects
  • Can be extended for inter-reflected diffuse (Not implemented, coming soon)
  • Can be extended for subsurface scattering (SSS) (Not implemented, coming soon)

Platform: PC

Requirements: Windows XP, 512 MB RAM, 1.6 GHz Processor

Controls: None

Download: None

Screen Shots:

Directional Light Source

Rotating Cube Map Light source. Note the new color of the objects.

Prerendered 3D Projects

Friday, 13. February 2009

Description:

  1. A chess set. Modeled in 3DS Max.
  2. A close up of the chess set.
  3. A castle that I modeled based off of blueprints. Untextured wire frame. Modeled in 3DS Max.
  4. A Deathwurm. Not textured. Modeled in 3DS Max.
  5. A level for Unreal Tournament 2003. Modeled using UnrealEd. A 3 story building on my school’s campus. Modeled and textured completely. Textures were created by me using a digital camera. Includes a cafeteria, offices, kitchen, book store, post office area, cafe and game area.

Screenshots:

Ray Tracer

Thursday, 15. January 2009

Description:This is a ray tracer that I implemented in one of my CS classes at DigiPen. There are a lot more features I would like to add to this ray tracer to make it faster and have more interesting effects.

Date: 2008

Features:

  • Sphere, Box, Ellipsoid, Polygon intersection routines
  • Attenuation
  • Antialiasing Techniques: Uniform Supersampling, Jittered, & Monte Carlo
  • Soft Shadows using gaussian disk sampling for point light sources
  • Multithreaded: utilizes up to 4 cores
  • More features coming soon!

Platform: PC

Requirements: Windows XP, 512 MB RAM, 1.6 GHz Processor

Controls: None

Screen Shots:

The images rendered below are all rendered with different combinations of anti-aliasing and soft shadows. Can you guess which ones have both?