55 lines
2 KiB
Markdown
55 lines
2 KiB
Markdown
# Graphics Painter
|
|
|
|
## What It Owns
|
|
|
|
This is the dedicated art-editing environment for tile and sprite graphics. It covers shape tools, erasers, transforms, previewing, and animation timeline editing for the currently opened asset.
|
|
|
|
## Core Behaviors
|
|
|
|
- Shape drawing modes:
|
|
- rectangle
|
|
- circle
|
|
- triangle
|
|
- line
|
|
- Shape variants:
|
|
- outline
|
|
- fill
|
|
- outline + fill
|
|
- Shape erasers:
|
|
- rectangle
|
|
- circle
|
|
- triangle
|
|
- Transform workflows available through the painter menu.
|
|
- Animation timeline controls, frame order, playback speed, and preview.
|
|
|
|
## Important UI Surfaces
|
|
|
|
- Graphic Painter window
|
|
- Tool menu and tooltip menus
|
|
- Animation timeline row
|
|
- Preview card and frame preview
|
|
|
|
## Important Files
|
|
|
|
- `src/worldshaperStudio/tileArtEditorWindowController.ts`
|
|
- `src/worldshaperStudio/graphicsDocumentHelpers.ts`
|
|
- `src/worldshaperStudio/importController.ts`
|
|
- `src/worldshaperStudio/dom.ts`
|
|
|
|
## Known Tool Details
|
|
|
|
- Shape menus are nested by shape and variant, rather than being a single flat tool list.
|
|
- The active draw tool and active eraser shape are tracked separately.
|
|
- The painter already knows about animation preview, frame creation, and per-frame editing; many animation requests should be phrased as extensions to an existing timeline rather than brand-new systems.
|
|
- The preview and animation controls are editor-side only; runtime rendering requests often cross into `Rendering And Viewport`.
|
|
|
|
## Relationships
|
|
|
|
- Depends on `Content Catalog And Records` for source records and saved asset definitions.
|
|
- Depends on `Floating Window Shell` because the painter lives inside a movable editor window.
|
|
- Feeds `Rendering And Viewport` when edited assets are later shown in the live map renderer.
|
|
- Intersects with `Animation`-tagged requests when frame behavior changes.
|
|
|
|
## Triage Hints
|
|
|
|
Requests about sprite drawing, tile art tools, frame duplication, painter transforms, selection or move workflows, and editor-side animation controls should usually start here.
|