Swift as a Godot Scripting Language #515
Replies: 5 comments
-
Swift as an (official) scripting language in Godot, same level as C# or even GDscript, would be so great. |
Beta Was this translation helpful? Give feedback.
-
+1 for this. I really hope we can see it happen someday; I'd love that! |
Beta Was this translation helpful? Give feedback.
-
+1 since I think swift is the most similar to GDScript with typing features |
Beta Was this translation helpful? Give feedback.
-
I really need to sit down and re-bootstrap this effort. I think the big thing that stopped me last time was that I really wanted to have the Swift plugin be "global" rather than be local to the project, so I did not have to struggle between the Swift plugin and the generated plugin by the user. |
Beta Was this translation helpful? Give feedback.
-
Btw, for those curious, the old branch that does this is on https://github.com/migueldeicaza/SwiftGodot/tree/editor-plugin |
Beta Was this translation helpful? Give feedback.
-
It seems that in
SwiftGodot
's current state it could be viable to useSwift
as a scripting language, but compared toC#
andGDScript
the workflow is slower and a bit more convoluted (especially when you're not using Mac) since this plugin technically isn't implemented as a scripting language.If you look at
GDScript
andC#
these are scripting languages because you can create aNode
and attach one of these scripts to theNode
to add functionality. However, forSwiftGodot
's implementation, it works closer to aC++
module where you're actually extending the engine and that newly createdNode
is what's added to the scene.This approach is great when adding native functionality, which seems to be the focus of
GDExtension
. However, as a scripting language, there's an unnecessary loss in efficiency since this workflow requires more steps. One way I think of it is thatGDExtension
enables the creation of native plugins inC++
andGodotSwift
enables the creation of native plugins inSwift
.So, I'm wondering if there's any desire for Swift being implemented as a scripting language?
An excellent example of
GDExtension
being used to create a new scripting language is Godot Orchestrator. Perhaps this could be considered an enhancement andSwift
would become a proper scripting language and still provide an avenue for extending the engine? This appears to be on the roadmap forC#
but in reverse with it currently being a scripting language and adding the ability for creating plugins usingGDExtension
in a future Godot version.Beta Was this translation helpful? Give feedback.
All reactions