azuredusk10 Hi there, I've created Spine animations and I'd like to use the 2D animations in a 3D scene, in a similar style to Cult of the Lamb: The animations also have normal maps set up as I'd like them to interact with 3D lighting. I just saw that SpineSprites are 2D nodes in Godot. I tried to add one to my 3D scene but it does not show up. Is there any way I can use SpineSprites in a 3D scene in Godot, complete with lighting effects?
Spinebot To use SpineSprite nodes in a 3D scene in Godot, you can use a Viewport node to render the 2D content and then display it in the 3D scene using a ViewportTexture. First, create a Viewport node and set its size to match the resolution you want for your 2D content. Add your SpineSprite to this Viewport. Then, create a MeshInstance in your 3D scene and apply a material that uses the ViewportTexture from the Viewport node. This way, your 2D animations can be rendered as textures on 3D objects, allowing them to interact with 3D lighting and other effects.
azuredusk10 I should probably add, we're expecting to have up to 20 SpineSprites visible on-screen, and this game is for mobile. So if the workaround for using SpineSprites in a 3D scene with 3D lighting effects is very performance-heavy, then we'll unfortunately have to ditch the lighting effects and switch to using 2D scenes instead. (The main benefit of using a 3D scene for us was to take advantage of Godot's 3D lighting effects, which are more performant than 2D lighting effects and can achieve a wider range of effects)
Misaki azuredusk10 We have received numerous requests from users regarding support for 3D systems. Unfortunately, due to technical challenges, we have not yet scheduled its implementation in the near future. An open issue ticket has been created for this matter, and several users have proposed workarounds that can be achieved using the current functionality: EsotericSoftware/spine-runtimes2135
azuredusk10 Misaki thanks very much for clarifying and for the link to the GitHub issue. I’ve upvoted it and will follow any progress on it