Search Results
6/22/2025, 6:42:06 PM
>>528371364
100% true.
Godot had two big innovations as a general purpose engine:
- gdscript being an interpreted, dynamically typed language that can call pre-compiled code
- the Node abstraction over the more complex, but still accessible, server functionality.
Most game engines two layers, a gory 'core' that's hyper-optimized and does the heavy processing like Rendering and Networking, and a softer 'shell' which allows you to write looser, easily changed scripts that call the gory core.
This is the reason Python was so successful, it provided the niceties of a programming language: complex data types, control flow, packaging, while still allowing you to call the pre-compiled Fortran or C code without having to do complex memory management or deal with pedantic type systems.
And per abstraction, many language libraries provide two interfaces: the meta-programming one that will generate boiler-plate code for you based on things like annotations and the more specific underlying code you can access if you need it. Godot Nodes and Servers are an example of this.
Unity fails in this regard by trying to use a statically-typed, 'compiled-ish' language that is C# for scripting and having an abstraction over core functionality that isn't immediately obvious. Unreal Blueprints are slightly better in this regard, but I think that visual scripting isn't expressive enough and is better suited for things like programming lab equipment rather then trying to make something so complex as a game, although a sprinkling of it in things like animation trees and state machines isn't so bad.
100% true.
Godot had two big innovations as a general purpose engine:
- gdscript being an interpreted, dynamically typed language that can call pre-compiled code
- the Node abstraction over the more complex, but still accessible, server functionality.
Most game engines two layers, a gory 'core' that's hyper-optimized and does the heavy processing like Rendering and Networking, and a softer 'shell' which allows you to write looser, easily changed scripts that call the gory core.
This is the reason Python was so successful, it provided the niceties of a programming language: complex data types, control flow, packaging, while still allowing you to call the pre-compiled Fortran or C code without having to do complex memory management or deal with pedantic type systems.
And per abstraction, many language libraries provide two interfaces: the meta-programming one that will generate boiler-plate code for you based on things like annotations and the more specific underlying code you can access if you need it. Godot Nodes and Servers are an example of this.
Unity fails in this regard by trying to use a statically-typed, 'compiled-ish' language that is C# for scripting and having an abstraction over core functionality that isn't immediately obvious. Unreal Blueprints are slightly better in this regard, but I think that visual scripting isn't expressive enough and is better suited for things like programming lab equipment rather then trying to make something so complex as a game, although a sprinkling of it in things like animation trees and state machines isn't so bad.
Page 1