HammeriteEditorColors

Editor. Inherits Resource

Every colour the editor draws the WORLD in: the viewports, the overlays, the gizmos (#48).

One resource rather than a field per colour on HammeriteMapEditorSettings and a const in whichever script happened to need it. They were in three places - the settings, private vars on the drawing nodes, and bare Color literals at the point of use - so there was no palette to look at, nothing a game could re-colour wholesale, and no way to tell a deliberate choice from a default nobody had thought about. Not the editor's own chrome. Panels, buttons, text and menus are HammeriteEditorTheme, which is a Theme and lives in the UI. The division is what the colour is FOR: this is the map, that is the tool looking at it. Changing one while the editor is up shows wherever it is drawn every frame; call HammeriteMapEditor.apply_colors() for the rest, which take theirs when they are built.

Properties

TypeNameDefault
Colorviewport_splitterColor(0.12, 0.12, 0.12, 1)
Colorviewport_focus_outlineColor(0.275, 0.448, 0.285, 1)
ColorgridColor(0.5, 0.5, 0.5, 0.5)
Colorruler_backgroundColor(0.035, 0.035, 0.035, 1)
Colorruler_tickColor(0.5, 0.5, 0.5, 1)
Colorruler_tick_minorColor(0.5, 0.5, 0.5, 0.5)
Coloraxis_xColor(0.8, 0, 0, 0.9)
Coloraxis_yColor(0, 0.8, 0, 0.9)
Coloraxis_zColor(0, 0, 0.8, 0.9)
Colorworking_plane_xColor(0.475, 0.018, 0.243, 1)
Colorworking_plane_yColor(0.37, 0.448, 0, 1)
Colorworking_plane_zColor(0, 0.167, 0.238, 1)
Colorbrush_outlineColor(0.85, 0.85, 0.85, 1)
Colorbrush_entity_outlineColor(0.85, 0.85, 0.85, 1)
Colorbrush_prefab_outlineColor(0.25, 0.65, 0.6, 1)
Colorentity_markerColor(0, 1, 1, 1)
Colorentity_facingColor(1, 0.8, 0.25, 1)
Colorbrush_selected_outlineColor(0.45, 0.75, 0.3, 1)
Colorbrush_selected_vertexColor(0.35, 0.6, 0.2, 1)
Colorselected_groupColor(1, 0, 1, 1)
Colorselected_wireframeColor(0.6039216, 0.8039216, 0.19607843, 1)
Colorentity_selected_outlineColor(0.6784314, 1, 0.18431373, 1)
Colorhovered_outlineColor(1, 1, 0, 1)
Colorselected_footprintColor(0, 1, 0, 1)
Colorselected_entity_brushColor(0, 1, 1, 1)
Colorface_selected_fillColor(0.65, 0.85, 0.3, 0.22)
Colorface_hovered_fillColor(1, 1, 1, 0.18)
Colorclip_kept<unknown>
Colorclip_kept_other_half<unknown>
Colorclip_removed<unknown>
Colorterrain_raiseColor(1, 1, 0, 1)
Colorterrain_lowerColor(1, 0.27058825, 0, 1)
Coloruv_pinned_lockedColor(0.35, 0.65, 1, 0.8)
Coloruv_pinned_unlockedColor(1, 0.5, 0.2, 0.8)
Coloruv_pinned_locked_fillColor(0.35, 0.65, 1, 0.16)
Coloruv_pinned_unlocked_fillColor(1, 0.5, 0.2, 0.16)
Colorcell_wallColor(0.45, 0.75, 1, 0.9)
Colorcell_wall_overlayColor(0.45, 0.75, 1, 0.7)
Colordiscarded_faceColor(1, 0.35, 0.2, 1)
Colordiscarded_fillColor(0.9, 0.35, 0.15, 0.18)
Colordiscarded_edgeColor(0.9, 0.35, 0.15, 0.55)
ColorportalColor(0.2, 0.95, 0.9, 0.95)
Colorportal_overlayColor(0.3, 0.9, 1, 1)
Colorroom_fillColor(0.3, 0.42, 0.58, 0.1)
Colorslice_guideColor(0.95, 0.82, 0.35, 0.6)
Colorvoid_window_fillColor(1, 0.1, 0.1, 0.35)
Colorvoid_window_edgeColor(1, 0.1, 0.1, 0.9)
Colorgraph_warn_sliverColor(1, 0.35, 0.2, 0.9)
Colorgraph_warn_overlapColor(1, 0.8, 0.2, 0.9)
Colorbake_warn_too_largeColor(0.95, 0.25, 0.2, 1)
Colorbake_warn_light_overflowColor(0.95, 0.55, 0.15, 1)
Colorbake_warn_wastefulColor(0.45, 0.6, 0.85, 1)

Methods

ReturnsMethod
Colorbake_warning(kind: int)
Colorgraph_warning(kind: int)

Property descriptions

viewport_splitter

var viewport_splitter: Color = Color(0.12, 0.12, 0.12, 1)

The lines dividing the four views.

viewport_focus_outline

var viewport_focus_outline: Color = Color(0.275, 0.448, 0.285, 1)

The outline round the view that has the keyboard.

grid

var grid: Color = Color(0.5, 0.5, 0.5, 0.5)

Grid lines, in the flat views and on the perspective view's ground grid. Its alpha is scaled down further as a flat view zooms out.

ruler_background

var ruler_background: Color = Color(0.035, 0.035, 0.035, 1)

Behind the rulers along a flat view's edges.

ruler_tick

var ruler_tick: Color = Color(0.5, 0.5, 0.5, 1)

A ruler's major ticks.

ruler_tick_minor

var ruler_tick_minor: Color = Color(0.5, 0.5, 0.5, 0.5)

A ruler's minor ticks.

axis_x

var axis_x: Color = Color(0.8, 0, 0, 0.9)

The X axis through the origin: in the flat views' grid, on their rulers and in the perspective grid.

axis_y

var axis_y: Color = Color(0, 0.8, 0, 0.9)

The Y axis through the origin, in the flat views' grid and on their rulers.

axis_z

var axis_z: Color = Color(0, 0, 0.8, 0.9)

The Z axis through the origin: in the flat views' grid, on their rulers and in the perspective grid.

working_plane_x

var working_plane_x: Color = Color(0.475, 0.018, 0.243, 1)

The working plane, per axis it is perpendicular to. Darker than the axes themselves: it is the ground a tool draws on, not a direction being pointed out.

working_plane_y

var working_plane_y: Color = Color(0.37, 0.448, 0, 1)

See working_plane_x.

working_plane_z

var working_plane_z: Color = Color(0, 0.167, 0.238, 1)

See working_plane_x.

brush_outline

var brush_outline: Color = Color(0.85, 0.85, 0.85, 1)

A brush's outline in the flat views.

brush_entity_outline

var brush_entity_outline: Color = Color(0.85, 0.85, 0.85, 1)

A brush entity's brushes in the flat views, multiplied by the entity type's _editor_tint display property.

brush_prefab_outline

var brush_prefab_outline: Color = Color(0.25, 0.65, 0.6, 1)

A brush belonging to a prefab instance, in the flat views and in the prefab tool's preview.

entity_marker

var entity_marker: Color = Color(0, 1, 1, 1)

A point entity's marker in the flat views.

entity_facing

var entity_facing: Color = Color(1, 0.8, 0.25, 1)

Which way a point entity is facing.

brush_selected_outline

var brush_selected_outline: Color = Color(0.45, 0.75, 0.3, 1)

A selected brush's outline in the flat views. See selected_wireframe.

brush_selected_vertex

var brush_selected_vertex: Color = Color(0.35, 0.6, 0.2, 1)

A selected brush's vertex handles in the flat views.

selected_group

var selected_group: Color = Color(1, 0, 1, 1)

A selected brush that is part of a group, so a click that took the whole group says so.

selected_wireframe

var selected_wireframe: Color = Color(0.6039216, 0.8039216, 0.19607843, 1)

Three greens for one idea. The flat views outline a selected brush in brush_selected_outline, the 3D gizmos in this, and a selected entity's box in entity_selected_outline - three shades nobody chose to differ, found only once they were in one place. Left as they were rather than quietly unified, since that is a look to change on purpose and not in a move; one palette is what makes it a one-line change when somebody does.

entity_selected_outline

var entity_selected_outline: Color = Color(0.6784314, 1, 0.18431373, 1)

A selected point entity's box in the flat views. See selected_wireframe.

hovered_outline

var hovered_outline: Color = Color(1, 1, 0, 1)

What is under the cursor but not chosen - a decal's footprint, a hovered outline.

selected_footprint

var selected_footprint: Color = Color(0, 1, 0, 1)

A decal's footprint where it is placed, flat on the wall it is projected onto.

selected_entity_brush

var selected_entity_brush: Color = Color(0, 1, 1, 1)

The brushwork of a selected brush entity.

face_selected_fill

var face_selected_fill: Color = Color(0.65, 0.85, 0.3, 0.22)

Faces, which are tinted rather than outlined in 3D - faint, so they read as a tint on the surface rather than a slab of colour over it.

face_hovered_fill

var face_hovered_fill: Color = Color(1, 1, 1, 0.18)

The tint on the face under the cursor in the perspective view. See face_selected_fill.

clip_kept

var clip_kept: Color = <unknown>

In the flat views, a brush the clip tool is about to cut: the part it keeps.

clip_kept_other_half

var clip_kept_other_half: Color = <unknown>

The part a clip that keeps both halves leaves on the other side of its plane.

clip_removed

var clip_removed: Color = <unknown>

The part a clip throws away.

terrain_raise

var terrain_raise: Color = Color(1, 1, 0, 1)

The terrain tool's ring, where it is about to raise the ground and where it is about to lower it.

terrain_lower

var terrain_lower: Color = Color(1, 0.27058825, 0, 1)

See terrain_raise.

uv_pinned_locked

var uv_pinned_locked: Color = Color(0.35, 0.65, 1, 0.8)

A face pinned either way about UV lock (#72), tinted in 3D and outlined in the flat views.

uv_pinned_unlocked

var uv_pinned_unlocked: Color = Color(1, 0.5, 0.2, 0.8)

See uv_pinned_locked.

uv_pinned_locked_fill

var uv_pinned_locked_fill: Color = Color(0.35, 0.65, 1, 0.16)

The perspective view's tint for uv_pinned_locked; the flat views outline in that.

uv_pinned_unlocked_fill

var uv_pinned_unlocked_fill: Color = Color(1, 0.5, 0.2, 0.16)

The perspective view's tint for uv_pinned_unlocked.

cell_wall

var cell_wall: Color = Color(0.45, 0.75, 1, 0.9)

A cell wall in the floorplan. cell_wall_overlay is the subtractive overlay's.

cell_wall_overlay

var cell_wall_overlay: Color = Color(0.45, 0.75, 1, 0.7)

A cell wall in the perspective view's subtractive overlay.

discarded_face

var discarded_face: Color = Color(1, 0.35, 0.2, 1)

A face the compiler threw away because it is buried in solid.

discarded_fill

var discarded_fill: Color = Color(0.9, 0.35, 0.15, 0.18)

The floorplan's fill for a discarded face. discarded_face is the perspective overlay's.

discarded_edge

var discarded_edge: Color = Color(0.9, 0.35, 0.15, 0.55)

The floorplan's outline for a discarded face.

portal

var portal: Color = Color(0.2, 0.95, 0.9, 0.95)

A portal in the floorplan.

portal_overlay

var portal_overlay: Color = Color(0.3, 0.9, 1, 1)

A portal in the perspective view's subtractive overlay.

room_fill

var room_fill: Color = Color(0.3, 0.42, 0.58, 0.1)

The cross-section of a room at the view's slice depth.

slice_guide

var slice_guide: Color = Color(0.95, 0.82, 0.35, 0.6)

Where the other views' slice planes cut through this one.

void_window_fill

var void_window_fill: Color = Color(1, 0.1, 0.1, 0.35)

A cell wall a transparent texture has turned into a window onto the void.

void_window_edge

var void_window_edge: Color = Color(1, 0.1, 0.1, 0.9)

A void window's outline in the floorplan, and the colour graph_warning() gives a HammeriteMap.VOID_WINDOW warning.

graph_warn_sliver

var graph_warn_sliver: Color = Color(1, 0.35, 0.2, 0.9)

The graph validators' findings: two rooms that nearly touch, two that overlap ambiguously.

graph_warn_overlap

var graph_warn_overlap: Color = Color(1, 0.8, 0.2, 0.9)

See graph_warn_sliver.

bake_warn_too_large

var bake_warn_too_large: Color = Color(0.95, 0.25, 0.2, 1)

What the last bake could not do. The first two are hotter than the graph's - they mean lighting is already wrong, where a graph warning means it will be. The third is cooler than either: nothing about that face renders wrong, it only costs more than it is worth.

bake_warn_light_overflow

var bake_warn_light_overflow: Color = Color(0.95, 0.55, 0.15, 1)

See bake_warn_too_large.

bake_warn_wasteful

var bake_warn_wasteful: Color = Color(0.45, 0.6, 0.85, 1)

See bake_warn_too_large.

Method descriptions

bake_warning()

func bake_warning(kind: int) -> Color

The marker colour for a HammeriteMap.BakeWarningKind, for the 2D viewports and the problem browser both - the cross in the viewport and the row that selects it have to be the same colour or neither means anything.

graph_warning()

func graph_warning(kind: int) -> Color

The marker colour for a HammeriteMap.WarningKind, as bake_warning() is for the bake's.

Hammerite 1.0 · built from a6dd634, 2026-10-10