46 lines
1.7 KiB
Markdown
46 lines
1.7 KiB
Markdown
# pxl8
|
|
|
|
> [!WARNING]
|
|
> <strong>Heavy development. So... <em>here be dragons :3</em></strong>
|
|
|
|
## Features
|
|
|
|
- **Fennel scripting** - Lisp-on-Lua with interactive REPL and hot-reload
|
|
- **Aseprite integration** - Load sprites, palettes, and tilemaps with custom tile properties
|
|
- **Classic color modes** - FAMI (NES), MEGA (Genesis), GBA, SNES, HICOLOR
|
|
- **Tilemap system** - Multi-layer tilemaps with collision and custom tile data
|
|
- **SDL3 backend** - Cross-platform windowing, input, and GPU rendering
|
|
|
|
## Quick Start
|
|
|
|
```bash
|
|
./pxl8.sh build # Build framework
|
|
./pxl8.sh run demo # Run demo
|
|
./pxl8.sh run # Launch interactive REPL
|
|
```
|
|
|
|
Projects need `main.fnl` with `init()`, `update(dt)`, and `frame()` functions.
|
|
|
|
## Tools
|
|
|
|
- `tools/aseprite/tile-props/` - Aseprite extension for editing tile properties
|
|
|
|
<pre>
|
|
@@@@@@@@@@@@@@@@@@@@@**^^""~~~"^@@^*@*@@**@@@@@@@@@
|
|
@@@@@@@@@@@@@*^^'"~ , - ' '; ,@@b. ' -e@@@@@@@@@
|
|
@@@@@@@@*^"~ . ' . ' ,@@@@( e@*@@@@@@@@@@
|
|
@@@@@^~ . . ' @@@@@@, ~^@@@@@@@@@@@
|
|
@@@~ ,e**@@*e, ,e**e, . ' '@@@@@@e, "*@@@@@'^@
|
|
@',e@@@@@@@@@@ e@@@@@@ ' '*@@@@@@ @@@' 0
|
|
@@@@@@@@@@@@@@@@@@@@@',e, ; ~^*^' ;^~ ' 0
|
|
@@@@@@@@@@@@@@@^""^@@e@@@ .' ,' .' @
|
|
@@@@@@@@@@@@@@' '@@@@@ ' , ,e' . ;@
|
|
@@@@@@@@@@@@@' ,&&, ^@*' , . i^"@e, ,e@e @@
|
|
@@@@@@@@@@@@' ,@@@@, ; ,& !,,@@@e@@@@ e@@
|
|
@@@@@,~*@@*' ,@@@@@@e, ', e^~^@, ~'@@@@@@,@@@
|
|
@@@@@@, ~" ,e@@@@@@@@@*e*@* ,@e @@""@e,,@@@@@@@@@
|
|
@@@@@@@@ee@@@@@@@@@@@@@@@" ,e@' ,e@' e@@@@@@@@@@@@@
|
|
@@@@@@@@@@@@@@@@@@@@@@@@" ,@" ,e@@e,,@@@@@@@@@@@@@@
|
|
@@@@@@@@@@@@@@@@@@@@@@@~ ,@@@,,0@@@@@@@@@@@@@@@@@@@
|
|
@@@@@@@@@@@@@@@@@@@@@@@@,,@@@@@@@@@@@@@@@@@@@@@@@@@
|
|
</pre>
|