diff --git a/CMSceneGraph b/CMSceneGraph index 8110a4ca..62363619 160000 --- a/CMSceneGraph +++ b/CMSceneGraph @@ -1 +1 @@ -Subproject commit 8110a4cade5a91b11082f62c3952834ef39b0ec3 +Subproject commit 6236361903f2a94f7ae8400294ff048263ff3725 diff --git a/inc/hgl/shadergen/ShaderCreateInfoVertex.h b/inc/hgl/shadergen/ShaderCreateInfoVertex.h index e3cb734b..11152e2a 100644 --- a/inc/hgl/shadergen/ShaderCreateInfoVertex.h +++ b/inc/hgl/shadergen/ShaderCreateInfoVertex.h @@ -23,6 +23,7 @@ namespace hgl void AddLocalToWorld(); void AddMaterialInstanceID(); + void AddJoint(); };//class ShaderCreateInfoVertex:public ShaderCreateInfo }//namespace graph diff --git a/src/ShaderGen/ShaderCreateInfoVertex.cpp b/src/ShaderGen/ShaderCreateInfoVertex.cpp index fd5a24ad..a1fb5a06 100644 --- a/src/ShaderGen/ShaderCreateInfoVertex.cpp +++ b/src/ShaderGen/ShaderCreateInfoVertex.cpp @@ -50,7 +50,9 @@ void ShaderCreateInfoVertex::AddJoint() namespace { - constexpr const char MF_GetLocalToWorld[]=R"( + constexpr const char MF_GetLocalToWorld_ByID[]="\nmat4 GetLocalToWorld(){return l2w.mats[LocalToWorld_ID];}\n"; + + constexpr const char MF_GetLocalToWorld_by4VI[]=R"( mat4 GetLocalToWorld() { return mat4(LocalToWorld_0, @@ -72,7 +74,7 @@ void ShaderCreateInfoVertex::AddLocalToWorld() AddInput(VAT_VEC4,name,VK_VERTEX_INPUT_RATE_INSTANCE,VertexInputGroup::LocalToWorld); } - AddFunction(MF_GetLocalToWorld); + AddFunction(MF_GetLocalToWorld_by4VI); } void ShaderCreateInfoVertex::AddMaterialInstanceID()