UIパック
Dusk パネルキット — タイトルバー付きパネルとボタン
薄暮のパープルのUIスプライト18点。タイトルバー付きnine-sliceパネル、ツールチップ、見出し、区切り、チップ、角ばったボタン12状態。

このパックについて
それでも本物のメニューが欲しいピクセルゲームのための、硬い縁のキットです。タイトルバーは後付けではなくパネルに組み込まれています。丸い角もアンチエイリアスもどこにもなく、どの縁も一列のフラットなピクセルです。4Kのモニタで3x表示されたときにパネルが形を保つ方法はそれだけです。紫は十分に冷たいので、赤を使わなくてもアンバーが警告として読めます。
Nine-sliceのパネル二枚 — 角16 pxのタイトルバー付きのウィンドウ枠と、角12 pxの沈んだ内枠 — で、メニューに必要なほぼすべての箱をまかなえます。ダイアログ、インベントリのグリッド、リストの下地、ツールチップ、ステータスパネル。タイトル帯がパネル上部に組み込まれているので、ダイアログの見出しに二枚目のスプライトも手作業の位置合わせも要りません。角は決して拡大されず中央はフラットな塗りなので、どちらもどんなサイズにもきれいに伸びます。
パネルの上には角ばったボタンのスプライトが12点。通常、ホバー、押下、無効の各状態を三通りに描いてあります——標準の96×32バー、正方形の角ばったアイコンボタン、そしてツールバーや行内アクション用のコンパクトボタン。3つのサイズを1枚の拡大縮小ではなく別ファイルにしたのは、描画がサイズに依存するからです。32pxで計算した面取りは、小さい方では縮小ではなく再計算されます。押下状態は面を2ピクセル下げて上のハイライトを外します。単に暗くするのではないからこそ、ボタンが色替えではなく押されたと感じられます。
小さな4点が、パネルとパネルのあいだでメニューに要るものを埋めます。しっぽ付きのツールチップ、パネルの上端に乗る見出しバー、中央に印のあるセクション区切り、そして数値やステータス用のラベルチップ。どれもウィンドウパネルの別サイズではありません——nine-sliceはもともと任意の大きさに伸びるので、幅違いの二枚目はコンポーネントではなく水増しになります。
すべてが二通りで届きます。SVGソースはキットを実際に描いたファイルそのものです。開いて夜のバイオレットの六色かアンバーのアクセント一色を変え、書き出し直してください。PNGの書き出しはフラットで透明、ビットマップを求めるエンジン向けに1x・2x・4xへあらかじめ拡大してあり、アルファの事前乗算もスプライト外にはみ出す焼き込みの影もありません。
使い方
- UnityではPNGをインポートし、Texture TypeをSprite(2D and UI)に、ボーダーをウィンドウパネルは16, 16, 16, 16、ボタンは8, 8, 8, 8に設定し、UIコンポーネント側でImage TypeをSlicedにしてください。
- Godot 4ではNinePatchRectを使い、パッチの余白に同じ数値を入れてください。あるいはSVGをそのまま入れ、インポート設定の倍率でGodotにラスタライズさせても構いません。
- UnrealではTexture2Dとしてインポートし、Draw AsをBoxにしたSlate Brushを作り、余白をテクスチャサイズに対する比で入力してください。80 pxのパネルは0.2、96 pxのボタンは0.08333です。
- UI倍率が整数でない場合は、1xを拡大するのではなく2xか4xのPNGを使うか、エンジンにSVGソースを渡して最終サイズでラスタライズさせてください。
- すべての縁が整数ピクセルに乗り、どこもアンチエイリアスされていません。1xのPNGをPoint(Unity)、Nearest(Godot)、Nearest-Neighbour(Unreal)のフィルタでインポートし、整数倍だけで拡大縮小してください。
ライセンス
"Dusk パネルキット — タイトルバー付きパネルとボタン" by Oğuzhan Girgin, licensed under CC BY 4.0 — https://www.colorosse.com/assets/2d/ui/dusk-panel-ui-kit


