Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/armory3d/armorpaint/llms.txt

Use this file to discover all available pages before exploring further.

ArmorPaint’s interface is organized around a central viewport flanked by a vertical tool toolbar on the left and a tabbed sidebar panel on the right. A horizontal menubar sits at the top, an optional header bar just below it shows tool properties and workspace controls, and a collapsible status bar runs along the bottom. Every region can be resized by dragging its border, and the sidebar can be collapsed to a minimal strip or hidden entirely to maximize painting space.

Workspaces

ArmorPaint provides five workspaces, selectable from Workspace in the menubar or from the header bar’s workspace switcher. Each workspace reconfigures the central area for a different task.
WorkspaceEnum ValuePurpose
Paint 3DWORKSPACE_PAINT_3D (0)The primary workspace. The central area shows the 3D viewport where you paint directly onto the mesh in real time. All brush tools and PBR channel controls are active here.
Paint 2DWORKSPACE_PAINT_2D (1)Replaces the 3D viewport with a flat 2D view of the texture atlas. You can paint in UV space, view individual channels, UV maps, node outputs, fonts, or layer content via the 2D view type selector.
NodesWORKSPACE_NODES (2)Opens the node editor as the main content area, used to build procedural material graphs (CANVAS_TYPE_MATERIAL) or brush graphs (CANVAS_TYPE_BRUSH). Node previews can be toggled per-socket.
ScriptWORKSPACE_SCRIPT (3)Provides a built-in text editor for writing and running C scripts or plugin code without leaving the application.
PlayerWORKSPACE_PLAYER (4)Launches a real-time player preview for exported or scripted scenes. Available when the experimental flag is enabled in Preferences.

Interface Regions

Viewport (center)

The main 3D or 2D rendering area. In Paint 3D mode it displays the mesh under the active lighting and material using the selected Viewport Mode (Lit, Base Color, Normal, Occlusion, Roughness, Metallic, Opacity, Height, Emission, Subsurface, TexCoord, Object Normal, Material ID, Object ID, Mask, or Path Traced). Camera navigation, brush strokes, and gizmo transforms all take place here.

Toolbar (left)

A vertical strip of icon buttons along the left edge for selecting the active painting tool. The active tool is highlighted. Clicking the Properties icon at the top pins tool settings to the header bar; clicking it again collapses them into a floating popup accessible via the > button or by clicking a tool icon a second time.

Sidebar (right)

A context-sensitive panel area docked to the right edge, split into two resizable panes (SIDEBAR0 and SIDEBAR1). Each pane displays a row of tabs; clicking a tab switches the panel content. The sidebar can be collapsed to a minimal mini-strip or hidden entirely with the > / < toggle button.

Menubar (top)

A horizontal menu strip containing File, Edit, Viewport, Mode, Camera, Workspace, and Help categories. Each category opens a dropdown with grouped actions, toggles, sliders, and radio buttons. On touch devices the menubar is replaced with icon buttons for the most common actions.

Header Bar

Sits below the menubar and above the viewport. When visible (LAYOUT_SIZE_HEADER = 1), it shows context-sensitive tool properties (radius, opacity, hardness, blending mode, symmetry axes, etc.) for the active tool alongside the workspace tab switcher and the 3D view toggle. It can be hidden to recover vertical space; tool properties then appear in the floating toolbar popup instead.

Status Bar (bottom)

A narrow horizontal strip at the bottom of the window. It displays the current application version and provides access to additional status tabs. Its height is adjustable; collapsing it to the minimum hides the expanded content while keeping the version label visible.
The sidebar tabs are distributed across the two sidebar panes. The following panels are available:
TabContents
LayersFull layer stack with visibility toggles, blending modes, opacity, channel masks (base, opacity, occlusion, roughness, metallic, normal, height, emission, subsurface), fill material assignment, and drag-and-drop reordering. Supports layers, masks, and groups.
MaterialsList of project materials. Each material slot shows a live preview icon. New, duplicate, and delete operations are available, as well as a Nodes button that opens the node editor for that material.
BrushesLibrary of brush presets. Each brush stores a full node canvas defining its shape and behavior. Brushes can be created, duplicated, deleted, and exported.
TexturesImported texture assets used as inputs for nodes, layers, Color ID maps, decals, or environment maps. Textures can be promoted directly to a layer or mask.
MeshesList of mesh objects in the scene with visibility controls, material override assignment, and transform (location, rotation, scale) editing. Meshes can be reordered by dragging.
FontsImported font assets (TTF, TTC, OTF) available to the Text tool.
SwatchesA palette of saved swatch_color_t entries, each storing base color, opacity, occlusion, roughness, metallic, normal, emission, height, and subsurface values. Swatches can be imported and exported.
TimelineKeyframe timeline for animating layer content and mesh transforms across frames, with configurable frame rate and maximum frame count.
BrowserFile browser for navigating the filesystem and bookmarked folders. Asset files can be dragged directly into the project from here.
PluginsList of installed plugins with enable/disable controls. Plugin files are loaded at startup from the configured plugin directories.
ScriptsScript assets stored in the project, editable and runnable from within ArmorPaint.
ConsoleDisplays runtime log messages, warnings, and errors. Toast notifications from console_toast also appear here.
DebugDiagnostic information for developers, including render target inspection and internal state readouts.

Camera Controls

The camera control mode is selected under Camera → Mode in the menubar and persists across sessions. Three modes are available:
ModeEnum ValueBehavior
OrbitCAMERA_CONTROLS_ORBIT (0)The camera orbits around a fixed pivot point. Move the right mouse button (or the configured action_rotate shortcut) to rotate. Scroll or use action_zoom to zoom. Middle mouse or action_pan to pan. The pivot can be set to Cursor or Center under Camera → Pivot.
RotateCAMERA_CONTROLS_ROTATE (1)Similar to Orbit but the camera rotates in place rather than orbiting a separate pivot. The same mouse/keyboard bindings apply.
FlyCAMERA_CONTROLS_FLY (2)Hold the right mouse button and use W / Up / scroll up to move forward, S / Down / scroll down to move backward, A / Left to strafe left, D / Right to strafe right, E to move up, Q to move down. Move the mouse to look. Hold Shift to move faster or Alt to move slower.
Additional camera presets under Camera → View snap the camera to Front, Back, Right, Left, Top, or Bottom orthographic orientations. Camera → Type toggles between Perspective and Orthographic projection.
ArmorPaint supports a Split View mode toggled from Viewport → Split View. When enabled, the viewport is divided into two panels so you can compare two different viewport display modes (for example, Lit vs. Roughness) side by side while painting.
Press Tab (the toggle_node_editor shortcut by default) to instantly jump to the node editor for the currently active material without switching to the Nodes workspace. Press Shift+Tab (the toggle_2d_view shortcut) to open the 2D texture view for the active layer directly from the Paint 3D workspace.

Build docs developers (and LLMs) love