• Editor
  • 4 questions about functionality

Related Discussions
...

I'm using Spine for couple weeks already and i got some questions. Sorry if those questions was asked before. I haven't found the answers.

1. In spine i can preview the animation on 50%, 200%, 300%.. speed. But how do i export my animation with different speed than 100%? (in GIF)
I've been exporting it as a Sequence and speeding up in Photoshop, but Photoshop ruins quality of big animations.

2. What should i press to create a keyframe of ALL layers at the same time? For example on the frame 12(Example below).

3. How do i autogenerate weights on mask? Why isnt it allowed?

4. How can i copy one mesh grid and paste it on another mesh?

//2 more questions:

5. How can i make one layer solo for a while?

6. How can i block one layer, without using this panel?

Not official reply but here is a little suggestions.

  1. Just scale the whole animation (select all the keys and drag) to have the correct speed of the animation. If the keys are too dense on the timeline, you can adjust the frame per second, say to 60 frames instead of default 30 frames. Its more appropriate the have the speed right on the timeline than adjusting the preview speed.

2.There is a setting "Key Dopesheet" in the hotkeys.txt setting file. I think that might be what you are looking for. It doesn't key everything but key things that you modifed on the Dopesheet which is better IMO.

  1. I don't know but you can clone that meshed attachment and change the attachment image path to your new image then have that same mesh indirectly.

Hello Legosky007! Let's get into the answers:

  1. You may have found the Playback view:
    Playback - Spine User Guide

As you can read on that page, while changing the speed doesn't affect your project on export for gifs/videos, changing the Dopesheet FPS does.

If you created your animation at 30FPS but you want to export a gif or video at a slower speed, say 50%, then you can change the dopesheet FPS to 15 to make the whole project slower. Then, in the export section, you can specify the FPS to match the ones of your animation if you want the keyframes to match, or have a different framerate, but same total duration by using a different FPS setting, which explains why Dopesheet FPS are so important:
Export - Spine User Guide: GIF

  1. You can press K to key all changed, L to key the active transform, CTRL+L to key all transforms on selection, and CTRL+SHIFT+L to key all keyed dopesheet items (Key current pose). This last one is my favorite combination and I always use it! I suggest trying them out and see what fits you best, and as Nick said, you can customize your hotkeys as well.

Spine: Cheat Sheet
Settings - Spine User Guide: Hotkeys

  1. To generate weights automatically, you need to first bind bones to your mesh/clipping/etc. Bones that do not overlap the mesh/etc. will not be computed. Oftentimes it is easier to just manually edit the weights, especially for something that supposedly should have very little vertices as clipping.
    Weights - Spine User Guide
    Clipping - Spine User Guide

  2. There are 3 options:

  3. you can duplicate the mesh by selecting it, press the copy button in the mesh properties panel in the tree, then replace the image path to use the new image instead.
    Meshes - Spine User Guide

  4. you can turn the mesh into a linked mesh by selecting the mesh, press the linked mesh button in the mesh properties panel in the tree, then replace the image path to use the new image instead.
    Meshes - Spine User Guide: Linked meshes

  5. If the images have different dimensions but it is very important for the vertices to match, you can create a new mesh for the new image, check wireframe in the original image so that its vertices are visible even when editing another mesh, then add the same number of vertices to the new mesh. Next you can select one or more vertices while in world axis, press CTRL+C to copy their transforms, then select vertices in the new mesh possibly in the same order, and press CTRL+V to get their positions to perfectly match. you-ll need to manually weight the new mesh though.
    Tools - Spine User Guide: Transform copy

  6. if it's a mesh, you can press the isolate button in Edit mesh mode, otherwise you can:

  7. right click the first bone visibility dot to hide the bone and all of its children slots and bones. Repeating this will reverse the action

  8. Filter the tree on slots, select all of the slots with shift or ctrl, then press on a visibility dot or H to hide them all on bulk. PErforming this action a second time will reverse it.

  9. You can prevent a single bone or attachment from being selected by unchecking the select property in the properties in the tree.

16 jours plus tard

Thank you for your answers!

Erikari a écrit
  1. To generate weights automatically, you need to first bind bones to your mesh/clipping/etc. Bones that do not overlap the mesh/etc. will not be computed. Oftentimes it is easier to just manually edit the weights, especially for something that supposedly should have very little vertices as clipping.
    Weights - Spine User Guide
    Clipping - Spine User Guide

It doesnt answer, why there is no "auto" for clipping. Bones does not overlap anything.

Auto weights for clipping and bounding boxes has been on our TODO list for some time! Unfortunately it's not there yet.

un mois plus tard

As to question 5 I asked the same few months ago. It is really awkward and inconvenient to hide everything else if you want to focus on specific elements. Big pain for me at least ;]. If you want to talk to someone in private at a party, you don`t ask everyone to leave but rather take that person somwhere else with you 🙂 Temporary isolation for selected elements would be a huge improvement.
Cheers.

14 jours plus tard

4. How can i copy one mesh grid and paste it on another mesh?

About Q4, I also get to a situation that I want this to happen. It could be much more better if spine could provide a more straightforward way to copy a mesh configuration to another attachment directly.

I am working on a scene and there are multiple same objects on the stage. e.g. Traffic light, plants, etc
In order to save texture space. I generally want them to be mesh packed with polygon packing. It is very important that they point to the same image with same mesh configuration otherwise spine will export multiple instances for each of them.

The current workflow for this is to clone the mesh attachment and replace the target attachment. However, by doing so, the step itself introduce quite some maintenance works:

  1. Once cloned the attachment, original attachment became inactive, need to reactivate after moving.
  2. The position is keeping the old value after dragging. Need to correct it after dragged to the new slot.
  3. The attachment name has number on it because during the cloning, name cannot be the same under same slot. This sometimes is confusing because the cloned plant2 attachment is actually pointing to plant1 and there could actually have a plant2 image.

The desired operation is to have a "copy/paste special" like in MS Office Word. We could choose to paste "position", "mesh config", "attachment path", "animation key", or even something more like color, etc.

Extra hint:
If you want to improve inter process communication between multiple instances of Spine. The copy / paste system could actually push JSON data to the clipboard. When pasting, just pull back the clipboard value and apply. This will allow copy and paste content across multiple Spine instance. I remember there was several time I want to merge multiple version of the same spine project and hoping this cross application copy and paste operation could be possible.

Hope this helps

@Nick, are linked meshes a good fit for your use case? That allows you to have a single mesh definition that other meshes share.

Nate a écrit

@[supprimé], are linked meshes a good fit for your use case? That allows you to have a single mesh definition and that other meshes share.

The problem is, Linked Mesh can only be under the same slot. Otherwise, it is a safer choice than simple cloning attachment. However, even if linked mesh is improved to work across slots, I think those mentioned maintenance works are still there. Especially after dragging the attachment to a new slot but the attachment is keep at the old slot position is the most not wanted side effect. It is not much work when only dealing with two or three slots but when when dealing with objects that has like 1020 copies, the work become tedious.

Thanks for the clarification.

For 3.8 we can prevent the duplicate attachment from being set as the visible attachment, since it is common to want to move it out of the slot. Plus there's no way to know if you want it visible, so better to not make it visible. When you do plan to move it to another slot the renaming is unfortunate and would need a function that knows the desired slot, as you described with "paste special". Keeping vs not keeping the position when changing slots is an interesting idea. We'll need a whole form for you to fill out for paste special. :p I understand the need though, we'll see what we can do.