• Editor
  • After splicing AB animation into C animation, some actions become invalid.

herolulu Okay, so see the videos below. The copy-and-paste should have been done in the following way (To make the problem easier to understand, I reproduced the problem with an animation leaving only the path position animation.):

To fix this, delete the middle key and double the value of the last key to the original value:

The reason for doubling the value of the last key is that if the original value is left unchanged, it would take twice as long to reach the specified path position. (This is the state shown at 0:02-0:06 in the video above.) To make it move at the same speed, we need to double the value.

For a closed path, changing the path position from 0 to 100 means that the constrained bones will move along the path. So if we think in terms of the constrained bones' coordinates, their coordinates at path position 0 and at path position 100 will be the same. However, the value that the path position keys have is different, and this is what we need to be aware of when copying and pasting the key.

Next, let's look at how to set the path position to 100 at frame 59.99 and back to 0 at frame 60. To set the key at frame 59.99, either hold the SHIFT key and move the timeline bar to set the key there, or use the Current field of the Dopesheet view to move the timeline bar to frame 59.99. In the following video, I used the former approach. I then selected the key at frame 59.99 and switched the curve to stepped.:

If you copy and paste this animation to repeat it, there is no need to modify the path position values after pasting:

For your information, a frame like 59.99 is called a fractional frame. This is explained on the Keys page of the User Guide: https://zh.esotericsoftware.com/spine-keys#%E5%B8%A7%E5%AF%B9%E9%BD%90

  • herolulu ответили на это сообщение.
    Related Discussions
    ...

    Misaki

    太感谢你了!我知道怎么处理了。真的非常感谢。我自己完全不知道怎么处理。看了你的视频我才知道怎么做。谢谢!

    Misaki 你好。我想咨询最后一个问题。如果我想将一个动画倒过来播放。就是最后一帧变成第一帧,第一帧变成最后一帧。这样整个动画顺序颠倒过来播放。SPINE 有便捷的操作手段吗?

    • Misaki ответили на это сообщение.

      herolulu I am glad the videos were helpful!

      As for how to invert the entire animation, this can be accomplished by performing a box selection of keys in the dopesheet view and scaling them. Scaling can be used to reverse the order of the keys by moving the left edge past the right, or the right edge past the left. See the User Guide for instructions on how to make box selections:
      https://zh.esotericsoftware.com/spine-dopesheet#%E6%A1%86%E9%80%89

      Incidentally, if the animation is to be played using the Spine runtime, you can specify reverse playback via the code for playing the animation. See the API reference if you are interested:
      https://esotericsoftware.com/spine-api-reference#TrackEntry-reverse

      • herolulu ответили на это сообщение.

        Misaki
        我试了一下“右边缘移”方法有点问题。会有大量关键帧消失。如果能有像photoshop里的“水平翻转”命令就好了。XD

        • Misaki ответили на это сообщение.

          herolulu Oh, when doing box selection and inverting, be aware of the fact that if you have not held down the Shift key, the keys on the fractional frames will be placed on the integer frames, and the key may disappear if the near integer frames have keys. On the other hand, if you do it with the Shift key pressed, the operation is a little more difficult because the frame you want to place on the integer frame is not properly aligned with the integer frame. A feature that would make it easier to invert the animation might be something we could consider. I will think about how best to add this.

          • herolulu ответили на это сообщение.
          • Fabiano оценил это.
            месяц спустя

            Misaki 非常感谢你。

            Misaki 你好,我现在遇到个小问题,和上一次遇到的情况不太一样。我已经上传了文件。就是“zuoxiaobi” 第一帧和最后一帧无法保持一致。他是通过“变形”做成动画的,我试着复制第一帧的“zuoxiaobi” 复制到最后一帧,但是没有效果。之前的问题可以通过调节“constraints”里对应的项目解决。这个文件里“constraints”是空的。

            https://mega.nz/file/34RmjKRR#edC1PaKQqf8_vvv9eHJI1DlKjCsF7Iz6TLYTgptriCw

            • Misaki ответили на это сообщение.

              herolulu Hmm, I checked the Spine project, but I can offset the zuoxiaobi bone's timeline and the mesh shapes seen in the viewport seem to match at frame 0 and at the last frame, so I'm not sure what the problem is. If you have sorted out the constraints so that it works, could you please show me the project where the problem occurs?

              By the way, if you send us a Spine project that is too complicated, it tends to be unclear where to look, so it would be helpful if you could send us a project with only the parts that cause problems and remove the rest.

              • herolulu ответили на это сообщение.
                6 дней спустя

                Misaki

                对不起,是我的错。这里面有多个动画,其中1个动画有问题。我已经将所有无关的内容都删除了。只留下了发生错误的部分。现在可以看到这个问题了。非常感谢你一直帮助我。

                https://mega.nz/file/vtp3nISR#vwBK74LLnUWkqEIfRebShwmfwzTLBWdE2l5VpMw-AmU

                • Misaki ответили на это сообщение.

                  herolulu Thanks for submitting the simplified Spine project! It seems that the rotation keys for bone84, bone85 and bone86 do not match in frame 0 and the last frame:


                  Did you filter the rotation timeline? When you filter the timeline of a particular transformation in the Dopesheet or Graph view, you may think you have selected all the keys, but you have not. If you can think of any reason for this confusion, please let us know for our reference.

                  • herolulu ответили на это сообщение.

                    Misaki 目前我有什么办法能让第一帧和最后一帧保持一致?我尝试复制,粘贴关键帧没有效果,他无法被改变。

                    • Misaki ответили на это сообщение.

                      herolulu Hmm, that's weird. As far as I have tested, I have been able to match the rotation values of the first and last keys by copying and pasting the keys:

                      So I am not sure what the actual cause of the problem is. However, I noticed that while the offset button is enabled, even if you select the white key in the overview row, you cannot select the keys in all the timelines of the same frame, so I thought that might be the reason why you thought you had selected all the keys, but actually hadn't:

                      In the video above, you can see that when the offset button is disabled, selecting the white key in the overview row selects keys in all rows, but when it is enabled, only the key of the top bone is selected. This has always been the case, so it's not a bug, it's design, but I thought it might cause confusion when trying to copy keys.

                      Could you please try again to see if you can copy and paste the keys correctly?

                      • herolulu ответили на это сообщение.
                        6 дней спустя
                        • Изменено

                        Misaki 我知道问题的原因了。我因为手的第一帧和最后一帧不同步,所以我“选中”手,然后复制粘贴帧。这样并没有选中所有的帧,必须在没有“选中”手的情况下操作才行。

                        Misaki
                        不好意思,我还有最后一个问题。很多模型在导入软件中,带有“网格”和不带网格的“区域”,这两者缩放倍率不统一(比如“区域”“缩放”扩大4倍=“网格”),我如何才能快速找到“区域”与“网格”之间的缩放倍率?我现在为了找寻它们的倍率只能手动不停地输入放大倍率,用肉眼来观测倍率是否正确。其实这样并不准确,而且需要花费大量时间。

                        • Misaki ответили на это сообщение.

                          herolulu Hmm, I'm not sure I fully understand the content of your question, but is it correct to say that you are asking where you can check the correct scale when importing a skeleton that has been exported once? If the skeleton's texture was scaled when exporting, the scale information is saved in the atlas file.

                          If you set the scale based on this value when importing the skeleton data, you can set the correct size for all the attachments at once without having to manually modify the size of each attachment:

                          The following blog post, which explains how to import skeleton data, also explains this, so you may find it helpful:
                          Blog 导入骨架数据 #疑难解答 - 为何有些部分比正确尺寸小或大?

                          • herolulu ответили на это сообщение.

                            Misaki 非常感谢

                            17 дней спустя

                            Misaki 你好,我发现这个文件里的 bounding box 无法编辑。我想使用“修改”扩大边界,因为我修改了贴图。部分贴图在范围外。我有什么办法能解除这个 bounding box 的锁定吗?

                            https://mega.nz/file/a4YUxSoC#4frhkOE20Tzyz5Z72BGjCCMoWBvrdoknwbTibW9n2ss

                            • Misaki ответили на это сообщение.

                              herolulu Sorry for the delay in answering! I was on holiday and hadn't checked it yet. However, it seems that your question is different from the one you asked when you first started this thread, so could you please post a new question? I will answer your question in the new thread.

                              • herolulu ответили на это сообщение.

                                Misaki 好的,我重新开个帖子。谢谢。