aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/mesh.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/mesh.cpp b/src/mesh.cpp
index 6a055abb2..a79264ef0 100644
--- a/src/mesh.cpp
+++ b/src/mesh.cpp
@@ -42,8 +42,15 @@ inline static void applyShadeFactor(video::SColor& color, float factor)
void applyFacesShading(video::SColor &color, const v3f &normal)
{
- // Many special drawtypes have normals set to 0,0,0 and this
- // must result in maximum brightness (no face shadng).
+ /*
+ Some drawtypes have normals set to (0, 0, 0), this must result in
+ maximum brightness: shade factor 1.0.
+ Shade factors for aligned cube faces are:
+ +Y 1.000000 sqrt(1.0)
+ -Y 0.447213 sqrt(0.2)
+ +-X 0.670820 sqrt(0.45)
+ +-Z 0.836660 sqrt(0.7)
+ */
float x2 = normal.X * normal.X;
float y2 = normal.Y * normal.Y;
float z2 = normal.Z * normal.Z;