Real-Time 3D Rendering with DirectX and HLSL: A Practical Guide to Graphics Programming (Game Design)