Test ran at 2025-07-22 12:27:14.082459+00:00 SOLUTION: geste=1.1.0: GEneric Sprite and Tile Engine Origin: source archive GESTE-1.1.0.zip at https://github.com/Fabien-Chouteau/GESTE/releases/download/v1.1.0/GESTE-1.1.0.zip with hash sha512:55da4926a318a664e798131b094711d8eef151c0ff905ae13fbc5d2c116b1c7724d936b6e5a37ace5b72c49980b7c6ae8549a261501b861e4d5af5101931efef Properties: Author: Fabien Chouteau Auto_Gpr_With: auto-gpr-with=false Description: GEneric Sprite and Tile Engine License: BSD-3-Clause Long_Description: [![Build Status](https://travis-ci.org/Fabien-Chouteau/GESTE.svg?branch=master)](https://travis-ci.org/Fabien-Chouteau/GESTE) [![codecov](https://codecov.io/gh/Fabien-Chouteau/GESTE/branch/master/graph/badge.svg)](https://codecov.io/gh/Fabien-Chouteau/GESTE) GESTE is a sprite and tile 2D render engine designed to run on micro-controllers low performance systems. GESTE also provides a basic math and physic engine using fixed point arithmetic. ## Creating maps GESTE is developed in parallel with [tiled-code-gen](https://github.com/Fabien-Chouteau/tiled-code-gen), a tool that generates code from the [Tiled Map Editor](https://www.mapeditor.org/). ## Examples The crate `geste_examples` contains 3 examples of different game genre: - platformer - RPG - racing ## Design ### Layers In GESTE, a scene is made of layers. Native layers can be `Sprite`, `Grid` or `Text`. You can implement you own type of layers if you want to. - `Sprite` layers display a single tile at a given position - `Grid` layers display a grid of tiles at a given position - `Text` layers display a text at a given position Layers have a priority which tells in which order they will be drawn on the screen. ### Rendering The rendering algorithm is somewhat similar to ray casting. Instead of taking each objects of the scene and drawing it on the screen, the engine takes each pixel and tries to find its color from the different objects of the scene. For each pixel of the area that is being drawn, GESTE will go through the list of layers and see if the corresponding pixel inside the layer is transparent or not. When a non transparent pixel is found, the pixel is pushed to the screen and the procedure starts again for the next pixel. If all the layers have a transparent pixel, the background color is used. The more layers to go through, the more time time it will take to render a pixel. Maintainer: fabien.chouteau@gmail.com Maintainers_Logins: Fabien-Chouteau Name: geste Project_File: geste.gpr Tag: game Tag: nostd Tag: rendering Tag: sprite Version: 1.1.0 Website: https://github.com/Fabien-Chouteau/GESTE LOG: [alr test] Testing geste=1.1.0 [alr test] Spawning retrieval for remote crate: alr -d -n get geste=1.1.0 Note: Deploying geste=1.1.0... #=#=# 0.4% ###### 9.1% ######################################################## 78.2% ######################################################################## 100.0% geste=1.1.0 successfully retrieved. There are no dependencies. [alr test] Spawning default test for remote crate: alr -d -n build --release -- -cargs:Ada -gnatwn Note: Building geste=1.1.0/geste.gpr... Setup [mkdir] object directory for project GESTE Compile [Ada] geste_fonts-freesansbold5pt7b.ads [Ada] geste_fonts-freesansbold24pt7b.ads [Ada] geste_fonts-freeserifbold6pt7b.ads [Ada] geste_fonts-freeserif8pt7b.ads [Ada] geste_fonts-freemonobold8pt7b.ads [Ada] geste_fonts-freesans12pt7b.ads [Ada] geste_fonts-freemonoboldoblique8pt7b.ads [Ada] geste_fonts-freesansboldoblique5pt7b.ads [Ada] geste_fonts-freesansoblique6pt7b.ads [Ada] geste_fonts-freemonooblique18pt7b.ads [Ada] geste_fonts-freemonoboldoblique12pt7b.ads [Ada] geste_fonts-freemono5pt7b.ads [Ada] geste_fonts-freeserif12pt7b.ads [Ada] geste_fonts-freemonooblique8pt7b.ads [Ada] geste_fonts-freeserifbolditalic5pt7b.ads [Ada] geste_fonts-freesansboldoblique18pt7b.ads [Ada] geste_fonts-freemono8pt7b.ads [Ada] geste_fonts-freeserifbolditalic6pt7b.ads [Ada] geste_fonts-freeserifitalic24pt7b.ads [Ada] geste_fonts-freesansboldoblique24pt7b.ads [Ada] geste_fonts-freesans6pt7b.ads [Ada] geste_fonts-freeserif24pt7b.ads [Ada] geste_fonts-freeserifitalic5pt7b.ads [Ada] geste_fonts-freeserifbold8pt7b.ads [Ada] geste_fonts-freesans24pt7b.ads [Ada] geste_fonts-freesansboldoblique12pt7b.ads [Ada] geste_fonts-freeserifbold18pt7b.ads [Ada] geste_fonts-freemonoboldoblique24pt7b.ads [Ada] geste_fonts-freeserifbolditalic12pt7b.ads [Ada] geste_fonts-freesansbold6pt7b.ads [Ada] geste_fonts-freesans18pt7b.ads [Ada] geste_fonts-freesans8pt7b.ads [Ada] geste_fonts-freemonobold12pt7b.ads [Ada] geste_fonts-freeserif5pt7b.ads [Ada] geste_fonts-freeserifbolditalic8pt7b.ads [Ada] geste_fonts-freeserifitalic12pt7b.ads [Ada] geste_fonts-freemonobold24pt7b.ads [Ada] geste_fonts-freemonooblique12pt7b.ads [Ada] geste_fonts-freesansbold8pt7b.ads [Ada] geste_fonts-freemonobold6pt7b.ads [Ada] geste_fonts-freesans5pt7b.ads [Ada] geste_fonts-freeserif18pt7b.ads [Ada] geste_fonts-freemonoboldoblique6pt7b.ads [Ada] geste_fonts-freemono12pt7b.ads [Ada] geste_fonts-freemonooblique5pt7b.ads [Ada] geste_fonts-freeserifitalic6pt7b.ads [Ada] geste_fonts-freeserifbold24pt7b.ads [Ada] geste_fonts-freeserifbolditalic24pt7b.ads [Ada] geste_fonts-freesansoblique24pt7b.ads [Ada] geste_fonts-freemono24pt7b.ads [Ada] geste_fonts-freesansbold18pt7b.ads [Ada] geste_fonts.ads [Ada] geste_fonts-freemonobold5pt7b.ads [Ada] geste_fonts-freemonooblique24pt7b.ads [Ada] geste_fonts-freesansoblique5pt7b.ads [Ada] geste_fonts-freemono18pt7b.ads [Ada] geste_fonts-freemonobold18pt7b.ads [Ada] geste_fonts-freeserifbold5pt7b.ads [Ada] geste_fonts-freesansboldoblique6pt7b.ads [Ada] geste_fonts-freeserifbolditalic18pt7b.ads [Ada] geste_fonts-freemono6pt7b.ads [Ada] geste_fonts-freeserifbold12pt7b.ads [Ada] geste_fonts-freesansboldoblique8pt7b.ads [Ada] geste_fonts-freesansoblique18pt7b.ads [Ada] geste_fonts-freemonoboldoblique18pt7b.ads [Ada] geste_fonts-freeserifitalic8pt7b.ads [Ada] geste_fonts-freeserif6pt7b.ads [Ada] geste_fonts-freemonooblique6pt7b.ads [Ada] geste_fonts-freesansoblique12pt7b.ads [Ada] geste_fonts-freemonoboldoblique5pt7b.ads [Ada] geste_fonts-freesansbold12pt7b.ads [Ada] geste_fonts-freesansoblique8pt7b.ads [Ada] geste_fonts-freeserifitalic18pt7b.ads [Ada] geste-sprite-animated.adb [Ada] geste-maths_types.ads geste-sprite-animated.ads:35:21: file "geste_config.ads" not found geste-sprite-animated.ads:35:21: "GESTE.SPRITE.ANIMATED (body)" depends on "GESTE.SPRITE.ANIMATED (spec)" geste-sprite-animated.ads:35:21: "GESTE.SPRITE.ANIMATED (spec)" depends on "GESTE.SPRITE (spec)" geste-sprite-animated.ads:35:21: "GESTE.SPRITE (spec)" depends on "GESTE (spec)" geste-sprite-animated.ads:35:21: "GESTE (spec)" depends on "GESTE_CONFIG (spec)" geste-maths_types.ads:35:14: file "geste_config.ads" not found geste-maths_types.ads:35:14: "GESTE.MATHS_TYPES (spec)" depends on "GESTE (spec)" geste-maths_types.ads:35:14: "GESTE (spec)" depends on "GESTE_CONFIG (spec)" compilation of geste-maths_types.ads failed compilation of geste-sprite-animated.adb failed gprbuild: *** compilation phase failed stderr: Command ["gprbuild", "-s", "-j0", "-p", "-P", "/home/runner/work/alire-crates-ci/alire-crates-ci/test/ed30736b-70b7-4f7d-8960-2b1ed08040fd/geste_1.1.0_55da4926/geste.gpr", "-cargs:Ada", "-gnatwn"] exited with code 4 ERROR: Command ["gprbuild", "-s", "-j0", "-p", "-P", "/home/runner/work/alire-crates-ci/alire-crates-ci/test/ed30736b-70b7-4f7d-8960-2b1ed08040fd/geste_1.1.0_55da4926/geste.gpr", "-cargs:Ada", "-gnatwn"] exited with code 4 stderr: ALIRE.CHECKED_ERROR stderr: Command ["gprbuild", "-s", "-j0", "-p", "-P", "/home/runner/work/alire-crates-ci/alire-crates-ci/test/ed30736b-70b7-4f7d-8960-2b1ed08040fd/geste_1.1.0_55da4926/geste.gpr", "-cargs:Ada", "-gnatwn"] exited with code 4 stderr: raised ALIRE.CHECKED_ERROR : alire-stored-error:1 [/home/runner/work/alire-crates-ci/alire-crates-ci/alire_install/bin/alr] 0xe75bc6 Alire.Raise_Checked_Error at alire.adb:284 0xac1a54 Alire.Os_Lib.Subprocess.Checked_Spawn at alire-os_lib-subprocess.adb:111 0xd40276 Alire.Spawn.Command at alire-spawn.adb:22 0xd412ee Alire.Spawn.Gprbuild at alire-spawn.adb:68 0xc748cb Alire.Roots.Build at alire-roots.adb:189 0xc7301a Alire.Roots.Build at alire-roots.adb:255 0xc9832b Alire.Roots.Traverse at alire-roots.adb:2143 0xcfee85 Alire.Solutions.Traverse.Visit at alire-solutions.adb:1472 0xcfdfcc Alire.Solutions.Traverse at alire-solutions.adb:1555 0xc9841e Alire.Roots.Traverse at alire-roots.adb:2147 0xc984dd Alire.Roots.Traverse at alire-roots.adb:2127 0xc7359b Alire.Roots.Build at alire-roots.adb:286 0xc736d7 Alire.Roots.Build at alire-roots.adb:114 0x49aa0d Alr.Commands.Build.Execute at alr-commands-build.adb:145 0x49a36d Alr.Commands.Build.Execute at alr-commands-build.adb:113 0x49a51f Alr.Commands.Build.Execute at alr-commands-build.adb:54 0x53bbcc Alr.Commands.Sub_Cmd.Execute at clic-subcommand-instance.adb:749 0x5472be Alr.Commands.Execute at alr-commands.adb:632 0x43d48a Alr.Main at alr-main.adb:13 0x4403a3 Main at b__alr-main.adb:2445 [/lib/x86_64-linux-gnu/libc.so.6] 0x7fc62d82a1c8 0x7fc62d82a289 [/home/runner/work/alire-crates-ci/alire-crates-ci/alire_install/bin/alr] 0x43d323 _start at ??? 0xfffffffffffffffe stderr: ALIRE.ROOTS.BUILD._WRAPPED_STATEMENTS.BUILD_FAILED stderr: alire-roots.adb:202 stderr: raised ALIRE.ROOTS.BUILD._WRAPPED_STATEMENTS.BUILD_FAILED : alire-roots.adb:202 [/home/runner/work/alire-crates-ci/alire-crates-ci/alire_install/bin/alr] 0xc74cc7 Alire.Roots.Build at alire-roots.adb:202 0xc7301a Alire.Roots.Build at alire-roots.adb:255 0xc9832b Alire.Roots.Traverse at alire-roots.adb:2143 0xcfee85 Alire.Solutions.Traverse.Visit at alire-solutions.adb:1472 0xcfdfcc Alire.Solutions.Traverse at alire-solutions.adb:1555 0xc9841e Alire.Roots.Traverse at alire-roots.adb:2147 0xc984dd Alire.Roots.Traverse at alire-roots.adb:2127 0xc7359b Alire.Roots.Build at alire-roots.adb:286 0xc736d7 Alire.Roots.Build at alire-roots.adb:114 0x49aa0d Alr.Commands.Build.Execute at alr-commands-build.adb:145 0x49a36d Alr.Commands.Build.Execute at alr-commands-build.adb:113 0x49a51f Alr.Commands.Build.Execute at alr-commands-build.adb:54 0x53bbcc Alr.Commands.Sub_Cmd.Execute at clic-subcommand-instance.adb:749 0x5472be Alr.Commands.Execute at alr-commands.adb:632 0x43d48a Alr.Main at alr-main.adb:13 0x4403a3 Main at b__alr-main.adb:2445 [/lib/x86_64-linux-gnu/libc.so.6] 0x7fc62d82a1c8 0x7fc62d82a289 [/home/runner/work/alire-crates-ci/alire-crates-ci/alire_install/bin/alr] 0x43d323 _start at ??? 0xfffffffffffffffe ERROR: Compilation failed.