This project is built on Direct X 11 & HLSL and C++. Although, it is not a full game, it accompanies all of its elements. That means handling the input, changing the game logic and rendering the graphics. It has features such as:
- Procedural terrain generation
- First person camera
- Model with animation
- Smooth lighting
Procedural terrain generation means that each time you load a scene, it will generate you a new terrain. It is impossible to get the same one again, except you plan loading it millions of times. Simplex noise function was used to achieve this result. However, the landscape lacked high mountains and wide valleys, and was hilly instead. The natural exponent was used to adjust those values a bit and destroy the linear distribution.
First person camera – gives you an ability to move over this surface. By moving over the mountains, you can find a lost survivor, who is a lonely warrior’s model with animation. The quaternions are used for the animation of model.
The smooth lighting removes the high differences between the zones, where light changes are enormous. That means, it removes the white-black lines in between the zones. Although, the density of lines depends on the angle between the lighting and surface, it is impossible to evade them without smoothing them.
Skybox and multi-texturing adds more life into the scene. It prevents the feelings of everything black and common. Although, the scene features dark and scary landscape, the moon shines your way through it.
Instructions – move WASD, look around – mouse, jump – space button, render wireframe – F2.
P.S. In order to use this source code, you will need DirectX SDK.