stardance has been extended another month! the new deadline is october 31 :)

You are browsing as a guest. Sign up (or log in) to start making projects!

DMGTile

  • 21 Devlogs
  • 32 Total hours

A Gameboy Tile Editor build in Rust (So you don’t need GBTD, or Wine if you are not on Windows)

Ship #2

DMGTile v2 - GPUI Rewrite

This version is a full rewrite of the UI (and some other functionality) with GPUI (the framework that Zed use).

I kept every feature from the v1, 128-tile projects, undo/redo, copy/paste/cut, .dmgtile save/load, .bin and .c export, all the drawing tools.

And rebuilt the interface from scratch with a pixel-art aesthetic: pixelated corner on every panel, a pixel font, and cached GPU textures for thumbnails and previews.

What I added in this version ?

  • Toast notifications for save, export, and error feedback
  • Native macOS menu bar with File / Edit / Help, plus a matching in-window bar on Windows and Linux
  • Real app icon
  • Optimized tile list that only renders visible tiles, so scrolling stays smooth

I also added the toast notification (compared to V1)

The app is now more macOS compliant, I was able to add the top bar with the classic : File, Edit, View, Help etc… I was also able to put a icon !

What can I do now ?

Everything you need to know is in the README.md or in the GitHub Release

This might sound like a little update but the rewrite took me around 17 hour so…… thank you for reading ❤️

(I even made a cute little icon :D )

  • 9 devlogs
  • 16h
  • 11.12x multiplier
  • 183 Stardust
Try project → See source code →
Open comments for this post

56m 29s logged

This is the last devlogs for DMGTile. AKA the V2 Release :yay: :yippeee: . I modified the README for the GPUI version, made the github release and last minutes fix. Bye bye :byee:

0
0
103
Open comments for this post

1h 41m logged

After 1h40 of headache I FINNALY added a menu bar to Linux and Windows :yippeee: .

At first I wanted to use gpui-components but there was way to much issue with it so I build my own bar (in the same style as the whole app)

I even created a quick Dockerfile to test on my mac the linux build.

I also added the export to .c and .bin

0
0
49
Open comments for this post

2h 34m 19s logged

In those 2h30 I’ve done a lot of thing :big-eyes:

The most of it was optimization with the Tile List Rendering and Caching but I also rearrange all the code (before it’s was just a big main.rs file) And I added Save, Open & New Project and clean a little bit :yay: :yippeee:

0
0
42
Open comments for this post

1h 3m 33s logged

This is a short update because I fix some little bug like : :little_autism_creature: :yay:

  • Alignment on the tile list (with the number)
  • Not getting the little shortcut sign on macOS

And I added:

  • Toast notification style with error color or success color
0
0
56
Open comments for this post

1h 59m 39s logged

In 2 hours I added 2 big thing :yep:

  • The Copy/Paste/Cut integration
  • The tool bar
  • Icon for the toolbar

The icon was pretty long to make (because i suck at drawing… :heavysob: ) And implementing the tool bar too.

Here are some picture of the icon and the toolbar

(I use Aseprite btw)

0
0
37
Open comments for this post

28m 13s logged

This is a very very little update :shy: I added the same tools as in the EGUI version : Shift (Left, Right, Down, Up) and Rotate (it wasn’t difficult at all)

0
0
19
Open comments for this post

5h 21m 54s logged

A Lot of thing happen in 5h20 :wtff: :yay:

I create a custom UI with Game Boy related color, custom button, border, font, etc…

For now I have the drawing zone, the preview, the tiles list, the shade selector and tools

To be more specific I added rounder pixelated shade selector, rounded pixelated border, Undo, Redo, Draw/bucket tools

0
0
45
Open comments for this post

33m 8s logged

Little update : I added the Shade selector and the palette selector, but also the Early GameBoy font ! And I think it look nice :yay:

0
0
25
Open comments for this post

1h 49m 25s logged

I just discovered gpui it’s a UI library based on the GPU. It was created by the same team that make Zed (the code editor). And I found out that it very personalizable. So I am rewriting DMGTile in it :yay: . So far I have the basic grid and basic tools like the bucket, the pencil, eraser etc… The only problem is that I can’t track the right click drag. (I also got the native macOS toolbar)

0
0
21
Ship #1

What is this ?

DMGTile is a Gameboy Tile Editor/Designer build in Rust. Basically it’s a drawing program for Gameboy game.

Why ( °ヮ° ) ?

The idea for this project came from GBTD (Gameboy Tile Designer), who is Windows only and kinda old… So I recreated it from-scratch in Rust, so it can run on Linux, Windows & macOS without Wine (or equivalent). And all of this with the same features as GBTD.

Core Features ( ദ്ദി ˙ᗜ˙ )

Editor

  • Pixel Painting: Use the mouse to paint ദ്ദി(˵ •̀ ᴗ - ˵ ) ✧
  • Bucket Fill: A classic flood-fill tool
  • Transform Tools: You can flip, rotate, move the active tile
  • Live Previews: A little 4x4 grid to preview the active tile in a pattern (e.g: a background)
  • Cached Texture Rendering: Tile textures are cached and only rebuilt when a tile is modified

Project Management

  • Multi-Tile Support: You can draw up to 128 tiles per project file (you can scroll the list on the right of the screen to change tile)
  • Undo/Redo: Each action is store in a stack, so you are able to undo or redo an action !
  • Copy/Paste/Cut: Duplicate or move tile data between slots (in the same project)
  • File Format: Each project is saved in .dmgtile (JSON), storing only the modified tiles while preseving the tiles ID
  • Keyboard Shortcut: Full Cmd/Ctrl support for New Project, Open, Save, Undo, Redo, etc… Even the tools have there own shortcut

Export

  • .bin Export: Exports all the modified tiles into the Gameboy’s native 2bpp format
  • .c Export: Exports all the modified tiles as a C array, with configurable array name (Can be used with GBDK)
  • Selective export: Only the modified tiles are written out

Okay… but how to test it ?

There is multiple way to test DMGTile but the easiest is to go to the Github Release and download the program for your OS ദ്ദി(˵ •̀ ᴗ - ˵ ) ✧

Then you can launch it and start drawing ! You can also try the export part to a .bin or .c file (you can see the note.md file on github, it’s my personal note when I was building DMGTile)

Thank you

Just a little thank you ❤️

(Every things you need is probably in the README.md)
(I even made a cute little icon :D )

  • 12 devlogs
  • 15h
  • 13.92x multiplier
  • 211 Stardust
Try project → See source code →
Open comments for this post

1h 9m 42s logged

This might be the last devlogs before Ship Nº1 :yay:

After wayyyy to much time the macOS, Windows and Linux build are ready ! Apple GateKeeper and windows Defender don’t like my application 😭 they both flag as something weird / virus… I also realize that my Linux build wasn’t working so I fix it !

I released v1.0.0 :yippeee: ! I added those warning about Windows Defender and Apple GateKeeper !

I also added the --dev flag to get the dev menu and finished the README.md

0
0
74
Open comments for this post

59m 47s logged

I change a little bit the logo to add a background for the app icon. Now the app run on macOS, Windows & Linux with icon on each one ! The next step is to make the README & a little Manual ! (And of course publish & build the release version for Windows MacOS & Linux !)

0
0
51
Open comments for this post

1h 17m 11s logged

After 40min in Aseprite I am finally happy with a logo (I am so so pround of my self 😤 :yay: :yesyes: ). I designed it all by my self :yippeee: . Also I added some “toast” for a better UX.

0
0
91
Open comments for this post

44m 41s logged

This is a little update. In this devlogs I just created & tested my Makefile to cross built for Linux, Windows, MacOS from my Mac. And this work !

0
0
19
Open comments for this post

2h 45m 18s logged

Wow 2h45 :yippeee: :yesyes: This the devlogs with the most things I added :wowsers:

Here is a list of everything I added:

  • A Export window
  • Now allow up to 128 tiles on a single file
    • When you draw somethings in tile 1 and on tile 6 in the .dmgtile file there will save only those 2 with there ID. In the .c file is the same but without there ID so there will just be right after the other (same thing for .bin)
  • “New project” button, with it you can start a…. NEW PROJECT :wowsers:
  • Keyboard shortcut text in the top menu
  • Keyboard shortcut to use every tool and change shade easily
  • Hover text on every tool (to show the keyboard shortcut)
  • Multiple tile render
  • Move tool bar to the top for better UI
  • Copy, Cut, Paste tile
  • Add more Ctrl+Z utility :yep:
  • Big chunk of tile see if it’s look good on repeat

Andddd, that it :yay: (this was damn hard). You can find every commit on my github.

0
0
104
Open comments for this post

1h 13m 30s logged

A big feature here :cookie-huge-blahaj: :thumbs-up:

I added the export to .dmgtile file (it’s just a JSON but modified :lol_emoticon: ). You can also open it !

I also added the Undo / Redo with CTRL+Z & CTRL+SHIFT+Z (or the same but with CMD on macOS) and also in the Edit menu

But for me the biggest feature of this devlogs is the Export menu where you can choose the extension (.bin or .c) and if you choose .c you can modify the array name :yay: .

I also added the drag when using the bucket 🪣

0
0
9
Open comments for this post

1h 48m 48s logged

A lot of change :yay: :yesyes: .

I added a top bar to with the option to export the tile in .bin & .c :yay:

For the top bar I had the idea of using muda but it just a complete mess on macOS and over kill for what I wanted to do so i just use the eframe equivalent :thumbs-up:

I also added icon to replace the old text.

0
0
12
Open comments for this post

1h 0m 30s logged

Wow exaclty one hour :wowsers: Now the tile can be exported !
Understanting the Gameboy way to read tile was so hard that I started to write my own docs 💀 .

In this devlogs the important part is just to know that now every tile can be exported in a .bin (later I will do a .c/.h like GBTD)

0
0
60
Open comments for this post

1h 32m 9s logged

I added a LOT of thing (i think… :think: ) :yay-67: . I added all the basic tool for pixel art (for the gameboy).

Here is a list :

  • Canvas movement (move the pixel art in the canvas),
  • Horizontal and Vertical flip,
  • Rotate 90 clockwise,
  • Pen & Bucket tool.

I also added a new RGB palette to get the classic green one and the gray one :yep:

(I also did fixed some little bug with the UI and the canvas)

0
0
32
Open comments for this post

42m 51s logged

Little update here :yesyes: . I added some new things :yay: . I added the color selector ! Also some shade indicator for the left and right mouse button, since in the color selector you can change the color for both. (They even got there own little outline :cute: )

0
0
23
Open comments for this post

1h 15m 48s logged

:yay: 1st devlogs :strong_muscle_dino: . Right now I added the very basic feature, the grid with draw and erase. You can draw in dark grey with the left click and erase (paint in white) with the right click ! :yesyes:

0
0
17

Delete project?

Are you sure you want to permanently delete this project? This action cannot be undone.

All devlogs, followers, and associated data will be removed.

Followers

Loading…