https://github.com/electronstudio/megabunny
https://github.com/electronstudio/megabunny
benchmark bunnymark raylib sdl
Last synced: about 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/electronstudio/megabunny
- Owner: electronstudio
- License: gpl-3.0
- Created: 2024-05-12T04:23:35.000Z (12 months ago)
- Default Branch: master
- Last Pushed: 2024-05-21T07:11:06.000Z (12 months ago)
- Last Synced: 2024-05-21T09:58:54.146Z (12 months ago)
- Topics: benchmark, bunnymark, raylib, sdl
- Language: Python
- Homepage:
- Size: 9.96 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: COPYING
Awesome Lists containing this project
README
# Megabunny
Bunnymark is a traditional benchmark for game *engines* like Godot or Unity.
It's a very simple game that renders and moves a large number of
sprites.However, it's not so useful for comparing rendering *frameworks* such as Raylib and SDL because it includes game logic
as well as rendering, something that is completely independent of the framework or library you are using.It's also not so useful for comparing different language bindings of one framework, where we are really interested
in just the speed of the FFI calls.Thus Megabunny simply draws one million identical static bunnies per frame and outputs the mbunnies/second.
Note that this benchmark is not a good reason for end users to choose one framework, language or binding over another.
It's most useful for library authors to check that your library isn't doing something ridiculously slow
and to check if your optimisations are having any effect.# My results
Library | Language | Binding | mbunnies
--- | --- |------------|------------
SDL2 opengl | C | | 21.9
SFML | C | | 12.4
Raylib | C | | 9.6 |
Raylib | Java | Jaylib-FFM | 9.5
Raylib | Java | Jaylib | 8.9
Raylib | Python | raylib-python-jaylib | 5.9
Raylib | Python | raylib-python-cffi | 5.1
Raylib | Python | raylib-python-cffi (pyray) | 3.9## Python versions comparison
Version | mbunnies
--- | ---
C | 9.6
GraalPy | 5.9
Pypy 3.10 | 5.1
CPython 3.10 | 3.4
CPython 3.12 | 3.1# See also
https://codeberg.org/glowiak/rl-bunnymarks