Hyperlane Panel UI Kit — double-framed panels and buttons
=========================================================

Double-framed nine-slice arcade speed window panels, inset list frames and
four pill button states, as SVG plus transparent PNG at 1x, 2x and 4x.

Arcade panels where the colour is the body, not the border: saturated
orange-to-magenta slabs with pointed ends. The trace exists to separate the
slab from the ground, nothing more.

Two nine-slice panels — a double-framed window frame with 0 px corners and a
recessed inset frame with 0 px corners — cover almost every box a menu needs:
dialogs, inventory grids, list backgrounds, tooltips and stat panels. Two
concentric borders with a gap between them read as carved rather than drawn,
which is what separates a crafted interface from a rectangle with a stroke.
Both stretch cleanly to any size because the corners never scale and the
centre is a flat fill.

On top of the panels sit four pill button states: default, hover, pressed and
disabled. They are drawn on the same 192×48 base with 0 px corners, so you can
swap the texture on a single button widget and get the whole interaction loop
without moving a rectangle. The pressed state drops its face two pixels and
removes the top highlight rather than just darkening, which is what makes a
button feel clicked rather than merely recoloured.

Everything ships twice. The SVG sources are the files the kit was drawn in —
open them, change the six deep violet tones or the single sunset orange
accent, and re-export. The PNG exports are flat, transparent and pre-scaled at
1x, 2x and 4x for engines that want bitmaps, with no premultiplied alpha and
no baked-in shadow outside the sprite bounds.

HOW TO USE

  - In Unity, import the PNGs, set Texture Type to Sprite (2D and UI), and set
    the border to 0, 0, 0, 0 for the window panel and 0, 0, 0, 0 for the
    buttons; then set Image Type to Sliced on the UI component.
  - In Godot 4, use a NinePatchRect and set the patch margins to the same
    numbers, or drop the SVG straight in and let Godot rasterise it at the
    scale you set in the import options.
  - In Unreal, import as a Texture2D, create a Slate Brush with Draw As set to
    Box, and enter the margin as a fraction of the texture size — for the 156
    px panel and for the 192 px button.
  - For crisp results at non-integer UI scales, use the 2x or 4x PNG rather
    than upscaling the 1x, or point your engine at the SVG source and let it
    rasterise at the final size.

License: CC-BY-4.0 — see LICENSE.txt
Page: https://www.colorosse.com/assets/2d/ui/hyperlane-panel-ui-kit
More free assets: https://www.colorosse.com
