Godot test bench
A downloadable game for Windows
As a Unity refugee, Godot is my choice of new shelter. I like to know the capabilities of my tools before I start working, so I decided to benchmark Godot.
How to test/play
- Select the type of agent you want to spawn, turn on/off the options you want, insert the spawn count and press "Spawn".
- Most options are fixed once the "Spawn" button is pressed. You'll need to restart the test by pressing "Spawn" again if you want new options to take effect. The test bench will hint it with an aqua button text color.
- The Agent Sprite options will only affect agents from Engine Access, Sorting and Pathfinding.
Tests included
Engine access speed
In this test the agent simply moves left and right.
Test variants:
- GDScript
- C#
Sorting speed
In this test each spawned agent sorts an array with 100 integers, every frame.
Test variants:
- statically typed GDScript
- dynamically typed GDScript
- C#
Options:
- Flip the sort direction every other frame
Test scripts here: https://github.com/kyboon/GodotTestBenchScripts
A* algorithm
This test spawns a number of agents which will navigate to a random destination on a 44x31 grid. A new random destination will be targeted once the previous one is reached.
Test variants:
- GDScript implementation
- C# implementation
- Built-in AStartGrid2D
Options:
- Recalculate path when the agent reaches a waypoint
- Draw path
- Toggle GDScript vs C# movement
- Editable Obstacles
- Slight variation in speed (so the agents reaches waypoint/destination at different times)
- Match unity test bench settings (see below)
Test scripts here: https://github.com/kyboon/GodotTestBenchScripts
Physics
This test spawns a number of physics body and drop them into a "bucket".
Test variants:
- 2D (Squares vs Circles)
- 3D (Cube vs Spheres). Note: 2 different executable for GodotPhysics3D & Jolt3D.
Option:
- Optimization with PhysicsServer2D/3D & RenderingServer
- Frictionless mode
- "Can sleep" toggle
- Editable body size
- Editable Physics FPS (doesn't need to re-spawn to take effect)
- Spawn rate (every X ms or every X frame) (doesn't need to re-spawn to take effect)
- Visibility toggle (doesn't need to re-spawn to take effect)
- Bop & fountain mode (doesn't need to re-spawn to take effect)
- Automated testing
- Ignores the spawn count entered. Will keep spawning physics body (based on spawn rate) until the frame rate drops below the Target FPS.
- Repeat X times and output the average spawn count.
Known bug:
The fountain mode doesn't work with Jolt3D.
Godot VS Unity performance comparison
The UnityTestBench only has 1 test scenario (Pathfinding), you can only change the spawn count and toggle sprite visibility. To match the test scenario on GodotTestBench, tap on the "Match Unity test bench" button and tap spawn.
Download
Development log
- Update v1.5Oct 01, 2023
- Update v1.4Sep 25, 2023
- Update v1.3Sep 24, 2023
Leave a comment
Log in with itch.io to leave a comment.