[Tizen] Revert "[Tizen] Use Renderer to register skinning property" 21/292321/1
authorEunki, Hong <eunkiki.hong@samsung.com>
Thu, 4 May 2023 00:40:04 +0000 (09:40 +0900)
committerEunki, Hong <eunkiki.hong@samsung.com>
Thu, 4 May 2023 00:43:06 +0000 (09:43 +0900)
This reverts commit fcb91da58739795d0289a9d1e50b838092165e40.

Change-Id: Ia92651b28438dcf1f610d8448a0178cf666d854a

dali-scene3d/internal/model-components/model-node-impl.cpp

index 51cfd76..257cbd0 100644 (file)
@@ -319,19 +319,25 @@ void ModelNode::UpdateBoneMatrix(Scene3D::ModelPrimitive primitive)
       continue;
     }
 
+    Dali::Shader shader = renderer.GetShader();
+    if(!shader)
+    {
+      continue;
+    }
+
     if(boneData.constraint)
     {
       boneData.constraint.Remove();
       boneData.constraint.Reset();
     }
 
-    if(renderer.GetPropertyIndex(boneData.propertyName) == Property::INVALID_INDEX)
+    if(shader.GetPropertyIndex(boneData.propertyName) == Property::INVALID_INDEX)
     {
-      auto propBoneXform = renderer.RegisterProperty(boneData.propertyName, Matrix{false});
+      auto propBoneXform = shader.RegisterProperty(boneData.propertyName, Matrix{false});
 
       Matrix inverseMatrix = boneData.inverseMatrix;
       // Constrain bone matrix to joint transform.
-      boneData.constraint = Constraint::New<Matrix>(renderer, propBoneXform, [inverseMatrix](Matrix& output, const PropertyInputContainer& inputs)
+      boneData.constraint = Constraint::New<Matrix>(shader, propBoneXform, [inverseMatrix](Matrix& output, const PropertyInputContainer& inputs)
                                                     { Matrix::Multiply(output, inverseMatrix, inputs[0]->GetMatrix()); });
 
       Actor joint = Self();