-
Notifications
You must be signed in to change notification settings - Fork 0
BlitStudio
NtinosTheGamer2324 edited this page Mar 7, 2026
·
1 revision
Create games without writing code! BlitStudio is a visual level editor for Blit Engine.
BlitStudio is a graphical tool that lets you design game levels by clicking and dragging instead of writing code.
// Manually place 50 objects in code... tedious!
Entity *e1 = blit_entity_create(100, 150, 32, 32, sprite);
Entity *e2 = blit_entity_create(250, 200, 32, 32, sprite);
// ... 48 more lines ...- Click, drag, place ✨
- Save level
- Load in game
- Done! 🎮
- 📐 Visual editing - Click to place, drag to move
- 🎯 Grid system - Perfect alignment
- 💾 Save/Load - Persistent levels
- 📤 Export code - Generate C code for games
- 🎮 Test mode - Play instantly without compiling
- 🎨 Multiple modes - SELECT, PAINT, ENTITY, COLLISION, TEST
# Compile
gcc -c blitstudio_main.c -o editor_main.o
gcc -c BlitStudio.c -o BlitStudio.o
gcc -c Blit Engine.c -o Blit Engine.o
# Link
ld -T user.ld editor_main.o BlitStudio.o Blit Engine.o lib_NodGL.a libc.a -o BlitStudio.sqr
# Run
./BlitStudio.sqr- Press TAB to switch modes
- Click to place objects (ENTITY mode)
- Drag to move objects (SELECT mode)
- Press Ctrl+S to save
- Press ESC to exit
| Mode | Purpose |
|---|---|
| SELECT | Select and move objects |
| PAINT | Draw sprites pixel-by-pixel |
| ENTITY | Place game entities |
| COLLISION | Add collision boxes |
| TEST | Play your level instantly |
| Key | Action |
|---|---|
| TAB | Cycle modes |
| F1 | Toggle help |
| G | Toggle grid |
| Ctrl+S | Save level |
| Ctrl+O | Load level |
| Ctrl+E | Export as code |
| DELETE | Delete selected |
| ESC | Exit |
- Introduction - What is BlitStudio?
- Getting Started - Your first level
- User Guide - Complete features (coming soon)
- Workflow Guide - Best practices (coming soon)
1. Start editor → ./BlitStudio.sqr
2. Press TAB → Switch to ENTITY mode
3. Click around → Place enemies, items
4. Press TAB → Switch to SELECT mode
5. Drag objects → Fine-tune positions
6. Press Ctrl+S → Save level
7. Press Ctrl+E → Export code
#include "level.c" // Generated by BlitStudio
int md_main() {
Blit Engine engine;
blit_init(&engine);
load_level(); // Loads all objects!
// Game loop...
blit_shutdown(&engine);
return 0;
}-
BlitStudio.h- Editor API -
BlitStudio.c- Editor implementation -
blitstudio_main.c- Main application
-
level.dat- Binary level data -
level.c- Exported C code
+--------------------------------------------------------+
| Mode: SELECT | Objects: 5 | Grid: ON [TOOLBAR] |
+--------------------------------------------------------+
| Objects | |
| -------- | [MAIN CANVAS - Your Level] |
| Player | |
| Enemy_1 | Click to place, drag to move objects |
| Coin_1 ✓ | |
| [PANEL] | [GRID] |
+--------------------------------------------------------+
| X:256 Y:192 Status messages [STATUS] |
+--------------------------------------------------------+
Create platformer levels, puzzle layouts, and game maps visually.
Test different layouts without recompiling.
Understand game design concepts hands-on.
See how sprites look in your game.
- Max Objects: 256 per level
- Grid Size: Adjustable (default 32px)
- File Format: Binary (.dat) or C code (.c)
- Supported Types: Entities, Collision boxes, Sprites
Complete Beginner:
- Read Introduction
- Follow Getting Started
- Create a simple 5-object level
- Export and use in a test game
Intermediate:
- Learn all 5 modes
- Create complex multi-layer levels
- Use collision boxes effectively
- Integrate with Blit Engine games
Advanced:
- Extend BlitStudio code
- Add custom object types
- Create editor tools
- Build game-specific editors
Current version:
- ❌ No undo/redo
- ❌ No copy/paste
- ❌ Single level at a time
- ❌ Basic sprite editor
- ❌ No layer system
Future improvements planned!
Want to improve BlitStudio?
Ideas:
- Add undo/redo system
- Improve sprite editor
- Add more drawing tools
- Create object templates
- Better file formats
- Multi-level projects
BlitStudio is part of the ModuOS project.
Licensed under GPL v2.0
Ready to create games visually? Get Started →
Need the game engine? [Blit Engine →](../Blit Engine/README.md)