- Editado
LWRP OpenGL 3.0 Android always renders a object at identity
Did someone report this yet? When in editor or iOS LWRP could be used with Spine just fine, but on Android real device everything from Spine was rendered at world position 0,0,0, rotation identity, and scale 1,1,1.
It's a really weird behaviour. All Spine animations are still playing. Skins correct. Debugging the actual position (transform.position / localPosition / etc) still prints their expected position, but the rendering is just not there. It's clear that my non-Spine shadow remains at the correct place but only the character ended up with default transform.
Occurs only to SkeletonAnimation and not SkeletionGraphic. If the camera is at 0, 0, -10 or something it's very clear that everything from Spine got jumbled together to the center of the screen. It still looks like a character, the parts are offsetted properly but the origin (The 0,0 in Spine GUI editor) is now at 0,0,0 / identity rotation / 1,1,1 scale.
I found that the problem is Android + GL3.0 + LWRP.
- iOS works fine with LWRP + Metal
- Android works fine with 3.0 + NO LWRP / LWRP + 2.0 / LWRP + Vulkan
I have submitted the case to here : https://fogbugz.unity3d.com/default.asp?1167960_af02s0vcgbeof55e
But still not sure it is an incompatibility of Spine shader or an actual Unity bug. Does Spine shader use any GL2.0-only feature?
Here are all the images in that case :
LWRP asset also attached.
Thanks very much for the report and detailed writeup! What would be very interesting to know is which shader you are using at the respective material.
We are just about to release new shaders for LWRP: Spine/Skeleton Lit
and Spine/Sprite
have received a complete re-write to be compatible with LWRP.
I have added your report to the issue ticket here. We will try to reproduce and fix your problem as well and let you know once the new LWRP shaders are released.
Hello, thanks! I will wait for it. The material is "Spine/Skeleton".
Thanks for the info! We will have a look at it very soon.
Unfortunately, we were unable to reproduce the problem.
Could you please send us a zip file of a minimal reproduction project where the problem still occurs to contact@esotericsoftware.com, that would help us a lot!
Was this ever resolved? We are having the exact same issue. Last version of Unity where this still worked was 2019.1.2. We upgraded to 2019.1.6 and this problem appeared. Link to a sample project: https://ufile.io/gx27bpiv
Unfortuantely this has not been resolved yet, since we did not receive a reproduction package back then.
Thanks very much for providing the sample project, very much appreciated!
We will have a look at it and get back to you as soon as we have gained any insights.
Issue ticket link:
https://github.com/EsotericSoftware/spine-runtimes/issues/1446
The issue has been fixed by releasing an additional lightweight shader variant Lightweight Render Pipeline/Spine/Skeleton
as part of the Spine LWRP shaders UPM package. (Unfortunately additions to the existing shader did not have any effect, thus we resorted to a separate shader.)
Please exchange the shader at your materials accordingly from Spine/Skeleton
to Lightweight Render Pipeline/Spine/Skeleton
when using LWRP.
You can download the respective UPM package here as usual:
Spine Unity Download: The Latest Spine Unity 3.8 Extension Packages %28Unity Package Manager%29%3A
Thanks again very much for reporting the problem and providing the very good sample project!
Thanks for a fast response and the fix!
Unity also successfully reproduced the issue and they are now looking into a fix for it. Just be aware that once they fix it, it might again break the new LWRP shader you added to the UPM package.
Here is the link to the bug: http://fogbugz.unity3d.com/default.asp?1176195_ck08sdop1idop0ja
You're welcome!
Thanks for the info about the Unity bugreport, in this case it will most likely still work but only render it unnecessary/duplicate (and who knows when Unity will fix this issue..).