Graphics Editor - CheMiguel23/SMB3-Bank12 GitHub Wiki
Last updated: 2026-04-05
The Graphics Editor is the main workspace for editing the visual assets of the project. It operates in three modes, switched via the three buttons at the top of the center panel:
-
Metatiles- Edit metatile pixel art and tile composition. -
Objects- Edit individual tiles that form in-game objects and characters. -
Tiles- Edit raw tile banks directly.
Shared across all modes:
- A tree on the left for navigating available assets. Structure varies by mode.
- A Preview panel at the bottom - select any level from the dropdown to render it live. All edits are reflected immediately. Supports zoom and pan. The selected level persists when switching between modes and editors.
âšī¸ Transparent pixels are shown as a checkerboard in tile and metatile views, and as grey in color swatches.
đĄ Color picker: Alt+Click any pixel to sample its color as the active drawing color.
Edit the pixel art and tile composition of metatiles. A metatile is a 2Ã2 arrangement of 4 tiles used as the base building block for level layouts.
The left panel lists all generators derived from the selected tileset and BG bank. Entries are split into two collapsible groups: Var and Fixed. A filter field is available at the top.
At the top of the right panel, two dropdowns define the source:
-
Tileset- The rendering tileset. -
BG Bank- The background tile bank.
đĄ Enable From Level to replace both dropdowns with a single level selector. The editor automatically derives the tileset and BG bank from the selected level's Header settings.
Displays all metatiles available for the selected tileset and BG bank combination. Supports zoom and pan.
When a generator is selected in the tree, its corresponding metatile is highlighted with a yellow border in this view.
Metatiles Right panel - enlarged metatile + dissected view |
Selecting a metatile in the tree opens its details in the right panel:
-
Index- Hex index of the metatile. -
Palette- Sub-palette used by this metatile (0â3). Each sub-palette provides 4 colors. The available sub-palettes are determined by the BG bank. Which sub-palette applies to a metatile is determined by its position within the metatile set - the set is divided into 4 sections, each using one of the 4 sub-palettes.
Below the index and palette, an enlarged metatile view shows the 2Ã2 tile composition with light divider lines between quadrants. Transparent pixels are shown as a checkerboard.
Drawing:
Four color swatches are shown below the enlarged view, corresponding to the metatile's sub-palette. Click any color to select it, then draw on the enlarged metatile using the pixel pencil. The first color is always transparent (shown as grey in the swatch).
All changes are immediately reflected in the enlarged view and in the center panel.
â ī¸ If any of the 4 tiles forming the metatile is shared with another metatile, a warning is displayed below the metatile. Drawing on a shared tile will affect all metatiles that use it. Shared tiles are not yet highlighted visually - this will be added in a future version.
Replacing a tile:
Click any of the 4 tiles in the dissected view to open a tile picker. The picker shows all available tiles in greyscale. Clicking any tile immediately replaces the selected quadrant. The picker closes when clicking anywhere outside it.
Below the enlarged metatile, the right panel shows the 4 individual tiles that form the metatile in greyscale, labeled by position:
| Label | Position |
|---|---|
UL |
Upper Left |
UR |
Upper Right |
LL |
Lower Left |
LR |
Lower Right |
Each quadrant displays the tile graphic and its hex index. Click any quadrant to open the tile picker and replace that tile.
Edit individual tiles that form in-game objects and characters. Objects are assembled from individual tiles. Clicking any tile within the assembled view selects it for editing.
The left panel lists all objects organized into groups.
Animated objects form collapsible groups:
- The object itself serves as Frame 1.
- Additional frames appear as children:
Frame 2,Frame 3, etc. Non-animated objects appear as flat entries with no children.
âšī¸ Many objects do not yet have all frames decoded.
Level Objects All objects placeable via the Level Editor, plus additional derived objects such as mushroom variants.
World Map Map objects as they appear on the world map.
Kings Two groups of 7 objects each:
- Normal form
- Transformed form
Bosses All Koopalings with their animation frames, and an Extras subgroup containing additional objects used by Koopalings such as balls and rays.
Players Mario and Luigi in all forms and animation frames.
Specials Reward objects.
NPCs Toad in two variations.
Displays the assembled object built from individual tiles. Clicking any tile within the assembled object selects it for editing in the right panel.
-
Enlarged tile- The selected tile shown at larger scale in greyscale by default. -
Colors- 4 color swatches derived from the sprite palette. Click any color to select it for drawing. -
Greyscalecheckbox - Toggle color rendering on the enlarged tile. -
Mirrorcheckbox - Mirrors the tile horizontally. -
Sprite Palette- Dropdown to select the active sprite palette (8â11). Controls which colors are shown in the color swatches.
Drawing:
Left-click draws the selected color. Right-click paints transparent. The first color is always transparent (shown as grey in the swatch). All changes are immediately reflected in the assembled object view and in the Preview panel.
Edit raw tile banks directly. Tiles are the base graphic units that metatiles and objects are assembled from.
A flat list of all tile banks in the project â 128 CHR banks in total (0x00â0x7F). Four banks are animated - 0x60, 0x62, 0x64, 0x66 - and cycle between each other continuously. Animation cannot be disabled and is always live in the center panel.
âšī¸ Animation controls and settings will be added in a future version.
Displays the selected tile bank as an 8Ã8 grid of 64 tiles. Colors are applied based on the palette and sub-palette selected in the right panel. Defaults to greyscale until a palette is selected. Animated banks show live animation.
Clicking any tile selects it for editing in the right panel.
-
Enlarged tile- The selected tile shown at larger scale. Colors reflect the selected palette and sub-palette. -
Colors- Color swatches for the selected palette and sub-palette. For reference only - colors are not stored on the tile itself. -
Palettedropdown - Selects the palette to preview colors from. -
Sub-palettedropdown - Selects the sub-palette within the chosen palette.
Drawing:
Left-click draws the selected color. Right-click paints transparent. The first color is always transparent. All changes are immediately reflected in the center panel and in the Preview panel.
Changelog
2026-04-05 Initial commit