Erika

We are happy to announce outline rendering support for all shaders in our spine-unity runtime! This makes it easy to show colored selection outlines around characters, animated Spine UI elements, and much more.

Read the blog post here:
Blog: Outline shaders for spine-unity

User avatar
Erika

Erikari
  • Posts: 3051

foriero

Great work Spine Team. :-) THANK YOU :-)
Founder & CEO Foriero s.r.o.
https://studio.foriero.com
User avatar
foriero
  • Posts: 471

derek99

Great work!!
This new function is pretty COOL! THANK YOU!!!
But the thickness of outline is varied in Unity.
Already leave space to not cut off the outline.
You do not have the required permissions to view the files attached to this post.
derek99
  • Posts: 2

Harald

Thanks for your kind words, glad you like it! :)
But the thickness of outline is varied in Unity.
The outline width is constant in texel size (in texture space), so if you the wing and hat parts are scaled twice as large (half the texel-density on screen), then the ouline will show the same "twice as large" scaling effect.

I have created an issue ticket here to support constant outline width in screen-space:
https://github.com/EsotericSoftware/spine-runtimes/issues/1615
User avatar
Harald

Harri
  • Posts: 3931

derek99

Harald wrote:I have created an issue ticket here to support constant outline width in screen-space:
https://github.com/EsotericSoftware/spine-runtimes/issues/1615
Thanks for reply! :) Great help!
derek99
  • Posts: 2

Arnissan

Is this URP compatible?
Arnissan
  • Posts: 70

Risu_chuu

Is there or will there be a packer for Spine projects?
Where Spine collects all source folders and save them to a master folder for when a project has been completed.
Similar to the 'Collect dependencies' in After effects.

*Im not sure where suggestions should go *
Risu_chuu
  • Posts: 5

Cranktrain

Arnissan wrote:Is this URP compatible?
I also have the same question!
User avatar
Cranktrain
  • Posts: 88

mulot

Damn I love the Spine team !!!
Thanks a lot ! :)
mulot
  • Posts: 6


inshong

Arnissan wrote:Is this URP compatible?
it has issue with URP look like this
URPOutline.PNG
You do not have the required permissions to view the files attached to this post.
inshong
  • Posts: 2

rxmarcus

Hello, also hoping that this feature can get released on the URP shaders?
rxmarcus
  • Posts: 76

Erika

Please check out the latest blog post about it: Blog: Unity Universal Render Pipeline support
User avatar
Erika

Erikari
  • Posts: 3051

rxmarcus

@Erika

I don't see anything mentioned in the post about the URP shaders supporting or not supporting outlines. Is there anything I'm missing?

---

I found this post in case it helps others. tldr: outlines are not supported in URP.

Issue with urp
rxmarcus
  • Posts: 76

Nevitiv

I don't understand why the outlines have different widths when I exported 2 characters with the same settings from Spine, and I have identical shaders settings in unity - but the characters have a drastic difference on their outlines. Would be nice if I didn't have to manually work on the outline width for each character.
Nevitiv
  • Posts: 1

Harald

We have an issue ticket on our roadmap that deals with implementing screen-space constant ouline width:
https://github.com/EsotericSoftware/spine-runtimes/issues/1615

In the current implementation it it is constant in texel space, so the material property will set it to e.g. 3 texels width. So it depends on the resolution of your input attachment images, if e.g. a head.png attachment has twice the resolution at the same display size, the outline will be half as thick using the same 3 texel width.
User avatar
Harald

Harri
  • Posts: 3931

BarbaraTGE

We also stumbled upon the issue that different spine characters get different outline sizes in our project and we are too far along to change the attachment images for all the characters.

Do you have an estimation of when the issue ticket will be resolved? If it's too far off we will have to continue development without outlines. Or alternatively, can you share the approach you want to take for it? Maybe we can code something ourselves.
BarbaraTGE
  • Posts: 2

Harald

BarbaraTGE wrote:We also stumbled upon the issue that different spine characters get different outline sizes in our project and we are too far along to change the attachment images for all the characters.
Just to be sure: Is changing the Outline width Material property per Material not an option for you?

A potential solution to this is listed in the issue ticket, using ddx/ddy functions:
https://github.com/EsotericSoftware/spine-runtimes/issues/1615
Basically what is needed is calculating the ddx(uvCoords) and ddy(uvCoords) values (which provides how much each fragment changes in UV space) and multiplying this value with the outlineWidth parameter.
User avatar
Harald

Harri
  • Posts: 3931

BarbaraTGE

Just to be sure: Is changing the Outline width Material property per Material not an option for you?
Not really as the differences in png size we have are too big, when we scale up the outline width as much as we would need to, we get other problems.

Thanks for pointing us in the right direction, we will try to make that work!
BarbaraTGE
  • Posts: 2

Harald

You're welcome, don't hesitate to ask if you should encounter any problems along the way.
User avatar
Harald

Harri
  • Posts: 3931

beejam

I'm trying to modify the shader to have a much more pronounced thickness as well as some soft alpha falloff but I'm running into a lot of issues mostly a result of my poor knowledge of shaders. From what I understand the outline would be thicker if the sprite assets that were used in spine had more padding originally? Is there any way that I can tell spine to export with some extra padding? otherwise, anyone have any advice on modifying the shader? It's a bit out of my skillset tbh and I'm lost
beejam
  • Posts: 3

Harald

Please check out the blog post here:
Blog: Outline shaders for spine-unity
Exporting with more padding allows you to increase the outline width and not clash with nearby regions of the atlas.
If you are using Mesh Attachments as well, you need to make sure that they provide enough space so that the outline fits.
User avatar
Harald

Harri
  • Posts: 3931

EladFlaish

Hello,
So I know this is an old post but I thought It is worth a try.
I am building a character creator for a game I am working on and I am trying to make it so only specific skin parts have an outline.
I tried splitting the skeleton into 3 separate ones and have each one of them outline independently but the outline is also outlining parts inside of my skin and lot only around lt.

Does anyone here know how I might be able to fix this?
You do not have the required permissions to view the files attached to this post.
EladFlaish
  • Posts: 4

Harald

I'm afraid we need a bit more information about what you want to achieve and what your project configuration is.

Are you using Universal Render Pipeline? If so, are you using a URP 2D or 3D renderer setup?

Do you want to have an outline-only effect and nothing of the original attachments showing? I'm asking because the screenshot shows only the outline and no non-transparent attachment images.
User avatar
Harald

Harri
  • Posts: 3931

EladFlaish

First of all, thanks so much for the quick response!

I am using the default Unity Pipeline, for models, I am using the MixMatch example skeleton if it helps.

I am looking to have only the outline showing while having the rest of the skin transperent so I can use it to make an outline only around a specific body part by laying it on top of it. The goal is for the player to be able to click a body part to show the Char customization menu for that body part and have the clocked body part glow(or outlined) as a result.
You do not have the required permissions to view the files attached to this post.
EladFlaish
  • Posts: 4


Return to Unity