D3D Dynamic Lighting

This code sample is named tut04_lights. It is the fourth in a series of tutorials on using Direct3D Mobile. It demonstrates 3D rendering with dynamic lighting.
-
D3DMLIGHTTYPE enumeration
-
D3DMLIGHT structure
-
IDirect3DMobileDevice::SetLight function
-
IDirect3DMobileDevice::LightEnable function
-
Navigate to the solution file (*.sln), and double-click it. By default, the solution file is copied to the following folder:
C:\Program Files\Windows Mobile 6 SDK\Samples\PocketPC\CPP\win32\directx\d3dm\tutorials\tut04_lightsMicrosoft Visual Studio 2005 launches and loads the solution.
-
Build the solution (Ctrl+Shift+B).
-
Deploy the solution (F5).
The tut04_lights code sample is an extension of tut03_matrices.
To use lighting in Direct3D Mobile, you must create one or more "lights," setup a "material," and make sure the geometry contains "surface normals."
Lights can have position, color, and be of a certain type such as directional (light comes from one direction) or point (light comes from a specific x, y, z coordinate and radiates in all directions).
Materials describe the surface of the geometry — specifically, how it gets light (diffuse color, ambient color, etc.).
Surface normals are part of a vertex, and are needed for the Direct3D Mobile's internal lighting calculations.