From 78e2d68bb2b7a730c2723639821a9109fa608897 Mon Sep 17 00:00:00 2001 From: coco24 <1281299809@qq.com> Date: Tue, 12 Mar 2024 13:58:59 +0800 Subject: [PATCH] Add normal definitions for `DrawCube` --- src/rmodels.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/rmodels.c b/src/rmodels.c index 94e2443b4..b4753b487 100644 --- a/src/rmodels.c +++ b/src/rmodels.c @@ -269,6 +269,7 @@ void DrawCube(Vector3 position, float width, float height, float length, Color c rlColor4ub(color.r, color.g, color.b, color.a); // Front face + rlNormal3f(0.0f, 0.0f, 1.0f); rlVertex3f(x - width/2, y - height/2, z + length/2); // Bottom Left rlVertex3f(x + width/2, y - height/2, z + length/2); // Bottom Right rlVertex3f(x - width/2, y + height/2, z + length/2); // Top Left @@ -278,6 +279,7 @@ void DrawCube(Vector3 position, float width, float height, float length, Color c rlVertex3f(x + width/2, y - height/2, z + length/2); // Bottom Right // Back face + rlNormal3f(0.0f, 0.0f, -1.0f); rlVertex3f(x - width/2, y - height/2, z - length/2); // Bottom Left rlVertex3f(x - width/2, y + height/2, z - length/2); // Top Left rlVertex3f(x + width/2, y - height/2, z - length/2); // Bottom Right @@ -287,6 +289,7 @@ void DrawCube(Vector3 position, float width, float height, float length, Color c rlVertex3f(x - width/2, y + height/2, z - length/2); // Top Left // Top face + rlNormal3f(0.0f, 1.0f, 0.0f); rlVertex3f(x - width/2, y + height/2, z - length/2); // Top Left rlVertex3f(x - width/2, y + height/2, z + length/2); // Bottom Left rlVertex3f(x + width/2, y + height/2, z + length/2); // Bottom Right @@ -296,6 +299,7 @@ void DrawCube(Vector3 position, float width, float height, float length, Color c rlVertex3f(x + width/2, y + height/2, z + length/2); // Bottom Right // Bottom face + rlNormal3f(0.0f, -1.0f, 0.0f); rlVertex3f(x - width/2, y - height/2, z - length/2); // Top Left rlVertex3f(x + width/2, y - height/2, z + length/2); // Bottom Right rlVertex3f(x - width/2, y - height/2, z + length/2); // Bottom Left @@ -305,6 +309,7 @@ void DrawCube(Vector3 position, float width, float height, float length, Color c rlVertex3f(x - width/2, y - height/2, z - length/2); // Top Left // Right face + rlNormal3f(1.0f, 0.0f, 0.0f); rlVertex3f(x + width/2, y - height/2, z - length/2); // Bottom Right rlVertex3f(x + width/2, y + height/2, z - length/2); // Top Right rlVertex3f(x + width/2, y + height/2, z + length/2); // Top Left @@ -314,6 +319,7 @@ void DrawCube(Vector3 position, float width, float height, float length, Color c rlVertex3f(x + width/2, y + height/2, z + length/2); // Top Left // Left face + rlNormal3f(-1.0f, 0.0f, 0.0f); rlVertex3f(x - width/2, y - height/2, z - length/2); // Bottom Right rlVertex3f(x - width/2, y + height/2, z + length/2); // Top Left rlVertex3f(x - width/2, y + height/2, z - length/2); // Top Right