From 98896326eb94666451b7e419becfb5d721840313 Mon Sep 17 00:00:00 2001
From: Normand Briere <nbriere@noware.ca>
Date: Mon, 10 Jun 2019 20:36:03 -0400
Subject: [PATCH] Fix shadow in light mode

---
 Object3D.java |   41 +++++++++++++++++++++++++++++++++++++++++
 1 files changed, 41 insertions(+), 0 deletions(-)

diff --git a/Object3D.java b/Object3D.java
index 8205153..2c2cf4d 100644
--- a/Object3D.java
+++ b/Object3D.java
@@ -14,11 +14,15 @@
 import //weka.core.
         matrix.Matrix;
 
+import java.util.UUID;
+
 //import net.sourceforge.sizeof.SizeOf;
 public class Object3D extends Vector<Object3D> implements java.io.Serializable, iSendInfo //, aurelienribon.tweenengine.TweenAccessor<Object3D>
 {
     //static final long serialVersionUID = -607422624994562685L;
     static final long serialVersionUID = 5022536242724664900L;
+    
+    private UUID uuid = UUID.randomUUID();
     
     ScriptNode scriptnode;
 
@@ -5371,6 +5375,43 @@
         }
     }
     
+    UUID GetUUID()
+    {
+        if (uuid == null)
+        {
+            // Serial
+            uuid = UUID.randomUUID();
+        }
+        
+        return uuid;
+    }
+    
+    Object3D GetObject(UUID uid)
+    {
+        if (blockloop)
+            return null;
+        
+        if (GetUUID().equals(uid))
+            return this;
+        
+        int nb = Size();
+        for (int i = 0; i < nb; i++)
+        {
+            Object3D child = (Object3D) get(i);
+
+            if (child == null)
+                continue;
+
+            blockloop = true;
+            Object3D obj = child.GetObject(uid);
+            blockloop = false;
+            if (obj != null)
+                return obj;
+        }
+        
+        return null;
+    }
+    
     void SetBumpTexture(String tex)
     {
         if (GetTextures() == null)

--
Gitblit v1.6.2