Skip to content
This repository was archived by the owner on Oct 12, 2024. It is now read-only.

Latest commit

 

History

History
70 lines (45 loc) · 3.03 KB

README.md

File metadata and controls

70 lines (45 loc) · 3.03 KB

HxGodot BunnymarkV2 for Godot 4

Renders an increasing number of bunny sprites until a stable 60fps is hit. This is a decent test of real world usage as it combines Godot api usage with raw computation. Feel free to contribute language implementations or improvements!

For each run, the benchmark will create a new report in the reports folder.

I'm aggregating my reports in a google sheet here.

HxGodot Bunnymark

Disclaimer

The performance differences here might appear significant, but these benchmarks test the limits of each language (and the engine), which most games will never hit. Do not pick a language because it is "fastest" unless you know you need the fastest language. The smarter choice would be to pick the language you are most productive in. I personally think that most people will be more productive in GDScript or C#. A lot of time and energy went into making GDScript an integrated, seamless experience so it is a good starting point if you don't have a preference for any of the other languages listed.

It is also important to note that C#/Mono and GDExtension are both very young. Its possible that their performance characteristics will change. And please don't use these benchmarks to say "Language X is better / faster than Language Y", we don't have enough data to make those assertions. If anything this proves that any of the choices below are viable. Choose the language that you are comfortable with and do your own testing to cover your own scenarios.

building & running

gdscript

Open the project in Godot Editor at least once to import everything

<path to your godot executable> --lang=csharp

csharp

Open the project in Godot Editor and build the csharp code at least once. Have either .net6 or .net7 SDK installed.

<path to your godot executable with C# support> --lang=csharp

hxgodot

Setup and build the hxgodot extension

haxelib git hxgodot https://github.com/HxGodot/hxgodot.git
haxelib run hxgodot generate_bindings -y
scons platform=<windows|linux|macos> target=<debug|release>
<path to your godot executable> --lang=hxgodot

godot-cpp

Git clone godot-cpp somewhere of to liking. Adjust the path to its SConstruct file in scenes/cpp/SConstruct

cd scenes/cpp
scons target=template_debug
scons target=template_release

<path to your godot executable> --lang=godotcpp

Credits