UIパック
Basalt パネルキット — 単枠パネルとボタン
火山岩の単枠nine-sliceウィンドウパネル、沈んだリスト枠、角ばったボタン4状態。SVGとPNG 1x/2x/4x。

このパックについて
照準のオーバーレイではなく岩として描いたローポリです。SF側の姉妹は角の金具を使い続く縁を持たないのでヘッドアップ表示として読まれますが、こちらは本体を完全に閉じます。角の開いた石のパネルは未来的ではなく壊れているように読まれるからです。面の割り方は同じ(中心を外して出会う四つの平らな三角形)で、素材を変えているのはパレットと閉じ方です。
nine-sliceのパネル二枚 — 角8 pxの単枠のウィンドウ枠と、角6 pxの沈んだ内枠 — で、メニューに必要なほぼすべての箱をまかなえます。ダイアログ、インベントリのグリッド、リストの下地、ツールチップ、ステータスパネル。縁が一本続くだけなので、パネルは密度の高い文章の背後に置けるほど静かなままです。角は決して拡大されず中央はフラットな塗りなので、どちらもどんなサイズにもきれいに伸びます。
パネルの上には角の立ったボタンの4状態が載ります。通常、ホバー、押し込み、無効。いずれも同じ120×44の土台に角0 pxで描かれているので、ボタンのウィジェット一つでテクスチャを差し替えるだけで、矩形を動かさずに操作の一巡りがそろいます。押し込み状態は暗くするだけでなく面を2ピクセル下げて上のハイライトを外します。これが、ただ色が変わったのではなく押されたという手応えを作ります。
すべてが二通りで届きます。SVGソースはキットを実際に描いたファイルそのものです。開いて灰グレーの六色かマグマオレンジのアクセント一色を変え、書き出し直してください。PNGの書き出しはフラットで透明、ビットマップを求めるエンジン向けに1x・2x・4xへあらかじめ拡大してあり、アルファの事前乗算もスプライト外にはみ出す焼き込みの影もありません。
使い方
- UnityではPNGをインポートし、Texture TypeをSprite(2D and UI)に、ボーダーをウィンドウパネルは8, 8, 8, 8、ボタンは0, 0, 0, 0に設定し、UIコンポーネント側でImage TypeをSlicedにしてください。
- Godot 4ではNinePatchRectを使い、パッチの余白に同じ数値を入れてください。あるいはSVGをそのまま入れ、インポート設定の倍率でGodotにラスタライズさせても構いません。
- UnrealではTexture2Dとしてインポートし、Draw AsをBoxにしたSlate Brushを作り、余白をテクスチャサイズに対する比で入力してください。136 pxのパネルは0.05882、120 pxのボタンにも同じ比を使います。
- UI倍率が整数でない場合は、1xを拡大するのではなく2xか4xのPNGを使うか、エンジンにSVGソースを渡して最終サイズでラスタライズさせてください。
ライセンス
"Basalt パネルキット — 単枠パネルとボタン" by Oğuzhan Girgin, licensed under CC BY 4.0 — https://www.colorosse.com/assets/2d/ui/basalt-panel-ui-kit


