- Modifié
[ue4] Lit material is broken somehow...
(Sorry for the white,blocky and ugly looking example chracter. Because of the security reasons, I painted it all white)
Lights work weirdly on some parts of the mesh when I use SpineDefaultLitMaterial.
please let me know if you need any sample for this. I will send all the files that you need to reproduce the bug as soon as possible.
Hm, it looks like the normals are wrong. I can't reproduce this with the example assets I have. Could you provide me with a minimal map + assets to repro this? What UE4 and Spine Runtimes version are you using?
Sure! Here is the project file for the reproducing.
https://drive.google.com/file/d/1QUgQBj9XfayIffrYvMJ1ti8X_tgSnNRn/view?usp=sharing
(The file size is over 4mb, so I can not post it as an attachment, so I will give it to you through the drive)
UE version : 4.26.2 , Spine Runtime : 3.8, Spine 3.8.72
If you need, I can also provide the spine editor file for the troubleshooting, but I can not post it in public because of the security reasons, So If you need, Please let me know your email address for this.
...And thank you for the fast reply!
Thank you for the repro case. I've created an issue here which you can follow: https://github.com/EsotericSoftware/spine-runtimes/issues/2030
I know that you all are busy on solveing issues and improving the product, but It's been quite a while from your last reply..
I just wonder whether it is being handled and how long I should wait to get fix...
I'm sorry, I haven't gotten to it yet. I'll try to get to it by the end of next week the latest.
Mario asked me to take over so that you don't have to wait too long. The problem is that some of your Mesh Attachments contain flipped-over triangles, which can be seen here at the shoulder joint (marked in green):
The problem is that the SpineSkeletonRenderer Component needs to generate a single normal for a whole MeshAttachment based on the first triangle orientation of it (the normal needs to face either forward or backward depending on the triangle winding order). Now you have run into the unfortunate case that the first triangle happens to be located at the flipped-over armpit triangle and looks into the opposite side of all other triangles.
The solution would therefore be to either assign vertex weights so that such a flipover to the opposite side does not happen (i.e. by increasing the RightUpperArm
bone influence weight at the armpit vertices, until the outer mesh edges do not cross over any more), or to change the mesh so that a different triangle (which will not flip over at any bone rotation) is the first one.
Wow, that's pretty unlucky! Good find Harald!
It may help if you enable backface culling in the Spine settings, which will cause triangles facing away from the camera to not be drawn. If you see holes in your mesh, it means those triangles are facing the wrong way and you probably don't want that.
Wow, That was really an unfortunate case! Good find for sure I'm glad to know that there is an easy workaround for this issue, and thank you for letting me know that tip to prevent further problems!
Glad we could resolve your issue, thanks for your kind words! :nerd: