瀏覽代碼

[godot] Call computeWorldVertices before fetching region. See #2154

Mario Zechner 3 年之前
父節點
當前提交
34534d0e90
共有 1 個文件被更改,包括 2 次插入2 次删除
  1. 2 2
      spine-godot/spine_godot/SpineSprite.cpp

+ 2 - 2
spine-godot/spine_godot/SpineSprite.cpp

@@ -552,10 +552,10 @@ void SpineSprite::update_meshes(Ref<SpineSkeleton> skeleton_ref) {
 
 		if (attachment->getRTTI().isExactly(spine::RegionAttachment::rtti)) {
 			auto *region = (spine::RegionAttachment *) attachment;
-			renderer_object = (SpineRendererObject *) ((spine::AtlasRegion *) region->getRendererObject())->page->getRendererObject();
 
 			vertices->setSize(8, 0);
 			region->computeWorldVertices(*slot, *vertices, 0);
+                        renderer_object = (SpineRendererObject *) ((spine::AtlasRegion *) region->getRendererObject())->page->getRendererObject();
 			uvs = &region->getUVs();
 			indices = &quad_indices;
 
@@ -566,10 +566,10 @@ void SpineSprite::update_meshes(Ref<SpineSkeleton> skeleton_ref) {
 			tint.a *= attachment_color.a;
 		} else if (attachment->getRTTI().isExactly(spine::MeshAttachment::rtti)) {
 			auto *mesh = (spine::MeshAttachment *) attachment;
-			renderer_object = (SpineRendererObject *) ((spine::AtlasRegion *) mesh->getRendererObject())->page->getRendererObject();
 
 			vertices->setSize(mesh->getWorldVerticesLength(), 0);
 			mesh->computeWorldVertices(*slot, *vertices);
+                        renderer_object = (SpineRendererObject *) ((spine::AtlasRegion *) mesh->getRendererObject())->page->getRendererObject();
 			uvs = &mesh->getUVs();
 			indices = &mesh->getTriangles();