about summary refs log tree commit diff
path: root/src/Decals.cpp
diff options
context:
space:
mode:
authorNguyễn Gia Phong <mcsinyx@disroot.org>2021-12-09 23:07:32 +0700
committerNguyễn Gia Phong <mcsinyx@disroot.org>2021-12-09 23:37:37 +0700
commit48417e11854f832c40a42ec497cad3b275b57b2e (patch)
tree73162cd7294a49ba39f0f06afd16da74dee0f6da /src/Decals.cpp
parente4888c19818ef61264ea4e1b0da9ebdc302f1483 (diff)
downloadblackshades-48417e11854f832c40a42ec497cad3b275b57b2e.tar.gz
Make XYZ C-compatible
Diffstat (limited to 'src/Decals.cpp')
-rw-r--r--src/Decals.cpp26
1 files changed, 11 insertions, 15 deletions
diff --git a/src/Decals.cpp b/src/Decals.cpp
index 92888ec..1522053 100644
--- a/src/Decals.cpp
+++ b/src/Decals.cpp
@@ -31,7 +31,7 @@ int Decals::MakeDecal(int atype, XYZ location, float size, XYZ normal, int poly,
 	XYZ axis[3];
 	XYZ temp;
 
-	nothing=0;
+	nothing = {};
 
 	axis[0].x=1;
 	axis[1].y=1;
@@ -44,20 +44,16 @@ int Decals::MakeDecal(int atype, XYZ location, float size, XYZ normal, int poly,
 	if(normalv[1]>normalv[major])major=1;
 	if(normalv[2]>normalv[major])major=2;
 
-	if (normalv[0] == 1 || normalv[1] == 1 || normalv[2] == 1)
-	{
-	if ((major == 0 && normal.x > 0) || major == 1){
-		right=0;
-		right.z=-1;}
-	else if (major == 0){
-		right=0;
-		right.z=1;}
-    else {
-        right=0;
-		right.x=normal.z;}
-   	}
-   	else
-    	CrossProduct(axis[major], normal, &right);
+	if (normalv[0] == 1 || normalv[1] == 1 || normalv[2] == 1) {
+		if (major == 0 && normal.x > 0 || major == 1)
+			right = {0.0f, 0.0f, -1.0f};
+		else if (major == 0)
+			right = {0.0f, 0.0f, 1.0f};
+		else if (major == 0)
+			right = {normal.z, 0.0f, 0.0f};
+	} else {
+		CrossProduct(axis[major], normal, &right);
+	}
 
     CrossProduct(normal, right, &up);
     Normalise(&up);