Friday, March 25, 2011

Open Sourced

My final project will be open sourced and hosted at:
http://code.google.com/p/cis565-deferred-shading-project/

As of now, there is hardly any of my code in the repository. For convenience, I plan on using the following libraries, which I have been accustomed to using on the homework assignments: freeglut, glew, glm, and SOIL.

In preparation for my presentation on deferred shading, I have been reading quite a few papers and articles on deferred shading. This has given me a better idea of how I want to set up my g-buffer for the targeted effects. With the current plan, four 32-bit frame buffers will be used, arranged as follows:

  • 0 - diffuse.rgb + materialID
  • 1 - normal.xy (16 bits each)
  • 2 - depth (24 bits) + flags
  • 3 - screenSpaceVelocity.xy + objectID
One bit of the flag value will represent the sign of the z component of the normal. However, the storage scheme for the normals will probably be changed. Patrick sent me a very good link about different compression methods that can be used for the normals: http://aras-p.info/texts/CompactNormalStorage.html

1 comment:

  1. Looks like you are off to a good start Sean. Your g-buffer layout is ok with me. Keep me posted if you integrate an .obj model loader.

    ReplyDelete