I have a problem with skeleton graphic, I have a character, but it is so blur when displayed on the UI canvas.

My colleague set up for me a solution, it is new for me so my explanation will be little confusing here.

The setup is creating a skeleton animation, have a child that is a camera. Camera's target texture is render Texture named "Player Render" that have size 1080x1920, dimesion 2d, anti - aliasing is none. And then create a image raw in the canvas, with texture is "Player Render". Now the blur and Aliasing is no longer appear.

I do not understand why. Please explain for me

Related Discussions
...

In general (if possible) please always share a screenshot of your problem when you're encountering a visual issue. Did you perhaps create low resolution pixel art? Then be sure to change the skeleton's atlas texture import settings Filter Mode to Point (no filter). If you're already using this setting, you're perhaps having problems with mipmaps, then disable Advanced - Generate Mip Maps in the texture import settings. Otherwise please share a screenshot of your texture import settings.

Regarding your workaround using a render texture: this sounds rather strange and is not recommended, since it is costly performance-wise. The issue should be fixed properly at the source of the problem instead.


The image on the left is using render texture, and the right is using skeletongraphic. Both have same setting.

As you can see, quality of the left picture is better than the right.

@dawikiki Thanks for sharing the screenshots and for the additional info. This is a good example where a screenshot is much better than a text description, since you described the result to be blurry, however it is pixellated (and badly sampled) instead, and not blurry at all.

What is strange is that I can see compression artifacts in especially the left image (around the hair), did you perhaps capture the screenshot as jpg or in any compressed format first before uploading it here? If so, please always be sure to avoid using lossy formats when capturing images and e.g. use png instead.

Anyway, if you're using the same texture for both the RenderTexture and the SkeletonGraphic component (and not a copy of it), then it could be due to material settings (perhaps pixel snap being enabled, snapping to the wrong resolution). Which Material are you using at the SkeletonGraphic component, could you please share a screenshot of the SkeletonGraphic component as well, and also share inspector settings of the used Material (which should be SkeletonGraphicDefault)? If it's using SkeletonGraphicDefault and it is using the shader Spine/SkeletonGraphic, could you please send us a minimal Unity project which still shows this issue? You can send it as a zip package to contact@esotericsoftware.com, briefly mentioning this forum thread URL so that we know the context, then we can have a look at what's going wrong.

I have checked the Material and Shader you mentioned, but all things looked normal to me.

Too bad, I cannot send a minimal project for you right now. I guess maybe the texture of spine is too large(6000*6000) or contains too many images, so it caused pixellated. Because when I use a spine with 1 Image in texture, it worked perfectly fine.

    dawikiki Harald is on vacation until next Monday (14th), so there is no rush to send in the minimal project. However, if what you are describing is exactly the cause, then we should be able to reproduce the issue by simply creating a new Unity project and importing that skeleton files into it and displaying the skeleton in a scene using the SkeletonGraphic component. If you could just send us the skeleton files and tell us what version of Unity and the spine-unity runtime you are using, I will check if it can be displayed properly on my end.

    Note if you scale down a large 6000x6000 to a much smaller size, quality will suffer. To do that well you'd need to use mipmaps with bicubic and anisotropic filtering (as the Spine editor does). It's usually better to use source images that are closer to the size they will be rendered on the screen. Note this isn't a Spine issue, it's a Unity (and all other game toolkit) issue.

    6 months later
    Nate changed the title to Skeleton graphic is so blurry .