spine-runtimes
spine-runtimes copied to clipboard
[Godot] Support for 3D system
It would be nice if the Godot integration supports the 3D system as well. The game we're making is 2D, but Godots 2D system is limited, forcing us to switch to 3D.
By the way, I'm currently maintaining my own branch for this: https://github.com/julhe/spine-runtimes which "works", but a official version would be really cool at some point.
EDIT: Please don't post stuff like "+1". Just upvote, please for the sake of my inbox
I considered this for the V1, but as you found in your fork, it's not exactly trivial to get feature parity with the 2D version. It's definitely planned, but not in the short term I'm afraid.
+1 for 3D support
+1
+1 Very necessary I also want to make 2.5D games
+1 2D/3D hybrid games are my jam
same here, 2.5D games have this special look and spine is awesome, so we need to combine both :)
Yeah, I've been looking forever for 2D puppet animation in 3D support for my Godot projects. The old one I used was DragonBones for Unity, but I can't stick with that one now due to certain recent issues regarding that game engine.
Is this feature still planned? When do you plan to add it? Thanks.
I would also like to signal our needs for this feature. Our studio plans are to migrate from libGDX to Godot, but we're working with 3D scenes to create 2.5D games, and having Spine to work with 3D is a must. Really looking forward to this feature, hopefully it gets a priority bump 😊
Folks, everytime you post a "+1" anyone subscribed to the repository gets an email. Could you please instead simply use the "upvote" emoji on the original comment in this issue?
I know this is of importance, but we are a small team and can only do so much given our resources. We couldn't anticipate the influx of Unity users to Godot given recent news, and we are trying our best to get the missing features in spine-godot going for spine-unity users. But we can't simply put all the work for all the other runtimes on the back burner immediately. Resource planning and such, you know :)
I did manage to get something working with SubViewport. I'm guessing people want this for an HD-2D game or any kind of 2.5D game.
I achieved it by adding a MeshInstance3D
and setting mesh to a quad. Add a material override, and set Transparency to Alpha Scissor
. This is so shadows can be cast.
Add a SubViewport
as a child node. Set Transparent BG
to true.
Add a SpineSprite
node as a child to SubViewport
node. Set the position to the middle of the SubViewport texture (256, 512) if the SubViewport size is 512x512.
Add a script to the MeshInstance3D
node
@tool
extends MeshInstance3D
func _ready():
if material_override != null:
material_override.albedo_texture = $SubViewport.get_texture()
Done. Works fine. Not sure if it's very scalable as I'm sure there is overhead to this approach, but it'll get me by as I prototype
Hope that helps anyone coming across this.
+1
+1
+1
+1
Any update on if this will be added anytime soon?
Is there any update? I’m still waiting for this feature.
Is there any update? I’m still waiting for this feature.
Why are you waiting for the feature?
- If you're making a game for production that requires this feature you shouldn't use Godot. Use another engine.
- If you're making a game for hobby and/or wanting to learn, then there is no rush, you can wait.
Plus you can already get this feature with a workaround, I'm already making a game for production without needing the feature. The workaround I've posted
This is Open Source, they will get it when they're ready, or until someone submits a PR adding the feature.
So if you want the feature, you gotta get in there and get your hands dirty and add it yourself, or patiently wait.
Everyone posting "Any update, is it ready yet?" etc. Is not helping, Its clearly not done yet as the issue is still Open.
EDIT The OP even has his own fork with the fix, have you tried that? I didn't notice it until now, I'll definitely try that out soon. lol @julhe you should submit PR for this :)
+1