PixelPerfectEngine
A downloadable engine
PixelPerfectEngine is a (currently) 2D engine written in D, which is specifically made for creating authentic pixel-art graphics without misalignment, etc.
Features:
- Color lookup and palette swap effects.
- Sprite layer with horizontal and vertical scaling, complete with the shimmering typical of old systems.
- Tile layer with some transformation effects.
- Has its own map format to support its own features, editor is capable of importing CSV tile maps.
- Graphical User Interface (Concrete), influenced by old GUIs (Amiga Workbench, Win3.1, etc). Primarily made for its own editors (e.g. PixelPerfectEditor), but probably could be used for games too.
- Text formatting support via a custom XML (ETML) file format, single file is capable of holding multiple text chunk in one.
- Bitmap text drawing with variable width.
- Audio subsystem that runs its own "plugins" (modules) for effects and sound synthesis.
- QM816 - phase modulation engine capable of replicating digital FM synthesis sounds, alongside with some extra capabilities (user-definable wavetables, amplitude/ring modulation for things like resonance, greater feedback control, etc.).
- PCM8 - PCM playback module, which is capable of playing back 8 and 16 bit PCM, IMA ADPCM, Dialogic ADPCM, Mu-Law and A-Law PCM.
- DelayLines - adds delay and reverb effects.
- MIDI sequencer.
- Editors:
- An embedded editor for tilemap and sprite layout.
- test1/PPE Audio Development Kit - Module routing, presets, etc. (MIDI 2.0 editing will be added later on).
- WindowMaker - Window layout editor.
Coming later:
- Scripting with WASM (or a Lua-like language).
- More audio modules.
- MIDI 2.0 file support (likely have to invent my own format).
- Guide on setting up a D development environment.
GitHub page: https://github.com/ZILtoid1991/pixelperfectengine
Example games, full with openly available sources are coming soon!
| Updated | 2 days ago |
| Status | In development |
| Category | Tool |
| Author | ZILtoid1991 |
| Tags | Game engine, Open Source, Pixel Art, Retro |
| Content | No generative AI was used |
Download
Install instructions
The download link provides some precompiled binaries of the test cases, an example game (Snake), and two of the editors. The currently supported CPU architectures are x86-64 and AArch64, previously 32bit x86 platforms were supported (likely still compile). Due to lack of hardware, MacOS is not supported, and Android support is not yet implemented.
A guide on how to set up a D development environment and the engine will be added later on. D is very similar to other popular curly-bracket languages (C, C++, C#, Java, etc.), so it's very easy to learn, for more info visit https://dlang.org/!
Development log
- Moving repository to Codeberg96 days ago
- v0.12.0-beta - now fully OpenGL renderedApr 20, 2025
- Fully OpenGL accelerated version incoming!Apr 14, 2025
- Anti-AI art commitmentJan 22, 2024
- v0.11.0-alphaJan 22, 2024
- On the subject of dropping Lua as a scripting engineDec 13, 2023
