Bladeren bron

Fix for Light2D

Josh Engebretson 11 jaren geleden
bovenliggende
commit
df14b2be12
1 gewijzigde bestanden met toevoegingen van 16 en 2 verwijderingen
  1. 16 2
      Source/Atomic/Atomic2D/Light2D.cpp

+ 16 - 2
Source/Atomic/Atomic2D/Light2D.cpp

@@ -435,6 +435,7 @@ void Light2DGroup::RegisterObject(Context* context)
 
 void Light2DGroup::OnNodeSet(Node* node)
 {
+    // Do not call Drawable2D::OnNodeSet(node)
 
     if (node)
     {
@@ -447,9 +448,22 @@ void Light2DGroup::OnNodeSet(Node* node)
         if (light2DMaterial_.Null())
             CreateLight2DMaterial();
 
-    }
+        Scene* scene = GetScene();
+        if (scene)
+        {
+            if (IsEnabledEffective())
+                renderer_->AddDrawable(this);
+        }
+
+        node->AddListener(this);
 
-    Drawable2D::OnNodeSet(node);
+
+    }
+    else
+    {
+        if (renderer_)
+            renderer_->RemoveDrawable(this);
+    }
 
 }