HELLO BOX DIRECTX 12

Subscribers:
7,430
Published on ● Video Link: https://www.youtube.com/watch?v=h8lrXc2HD68



Duration: 11:09
37 views
0


Everything starts with a box. In hand drawing or 3D image generation utilising the power of a computer to perform millions of highly complex mathematical calculations per second. This box was created from scratch, in one CPP file, without using Visual Studio or any external libraries, even without directxmath.h or d3dx12.h. I hope this will guarantee much deeper understanding of how 3D graphics works for me. And this, in turn, will allow me to create some unique stuff. At least I hope so.

The light used here is simple directional light (simulates sunlight). Shading is done in Verterx Shader and linearly interpolated between vertices (Gouraud shading), so its not Phong shading.

Information you can see in the console interface:
T - texture status (X means enabled)
E - emissive lighting component status (self-illumination)
A - ambient lighting component status
D - diffuse lighting component status
S - specular lighting component status
LR - red component of the light source
LG - green component of the light source
LB - blue component of the light source
Int - intensity of the light source (illuminance)
LA - scale for how much ambient light is produced by light source
LD - scale for how much diffuse light is produced by light source
LS - scale for how much specular light is produced by light source
ES - scale for emissive colour
Shine - exponent that controls how concentrated the specular highlight is. It is (cos(angle between view vector and reflected light vector))^Shine.

d - distance from view origin to projection plane (proj. plane is like a sensor in digital camera or film in analogue one).
Vfov - Vertical Field Of View in degrees.
Hfov - Horizontal Field Of View in degrees.