|Direct3D 9 Normal Mapping With Many Lights Demo.
This Windows Direct3D 9 application demonstrates tangent space normal mapping using multiple point light sources in a single rendering pass.
The Direct3D Effect (.fx) files accompanying this application makes use of the looping instruction in shader model 3.0 to greatly reduce the number of instructions used by the pixel shaders. The effect files limit the total number of point lights to 8. However the shader is able to support more than this.
This application also provides support for the new coverage-sampling anti-aliasing (CSAA) technique introduced in NVIDIA GeForce 8 and higher GPUs. CSAA gives higher quality anti-aliasing compared to conventional multi-sampling anti-aliasing (MSAA) with only a minimal performance hit. The CSAA modes that are currently supported includes: 8x CSAA, 8xQ (Quality) CSAA, 16x CSAA, and 16xQ (Quality) CSAA. This application attempts to use the highest quality CSAA mode supported by the video card. To learn more about CSAA please refer to: http://developer.nvidia.com/object/coverage-sampled-aa.html.
This demo was built using the June 2010 update of the Microsoft DirectX SDK. The required end-user runtimes can be downloaded here.
To learn more about normal mapping check out the Direct3D 9 Normal Mapping Demo.
To learn more about per pixel lighting check out the Direct3D 9 Pixel Lighting Demo.
1. This demo requires shader model 3.0 or higher support.
2. This demo requires the Visual C++ 2010 Library Runtimes. Download instructions can be found here
Download executable, source, and Visual C++ 2010 solution files.
10 July 2010.
Added missing .vcxproj.filters file to the project.
13 June 2010.
Updated solution to Microsoft Visual Studio 2010.