拡大方式
| 方式 | 説明 |
|---|---|
| Nearest(そのまま拡大) | 各ピクセルをそのまま複製。ドットの形を完全に保つ(従来の挙動) |
| Scale2x(輪郭スムージング) | AdvMAME2x/3x。階段状の輪郭の角を埋めて滑らかにする。2・3・4・6倍などに対応 |
| Eagle(輪郭スムージング強) | Scale2xより角を強めに丸める。2・4・8倍などに対応 |
- スムージング方式は倍率を2倍・3倍の段に分解して適用します(例: 6倍 = Scale3x + Scale2x)
- 2・3で割り切れない倍率分(5倍・7倍など)は、そのまま拡大(Nearest)で補います
- ベタ塗り部分はどの方式でも変化しません。効くのは輪郭の階段部分だけです
技術詳細
- 補間方式: ニアレストネイバー(最近傍補間)、または Scale2x / Eagle
- 拡大 (Enlarge): 出力サイズ =
input_width × scale×input_height × scale - 縮小 (Reduce): 出力サイズ =
input_width ÷ scale×input_height ÷ scale(Nピクセルおきにサンプリング) - scale=1: 入力画像をそのままパススルー(コピーなし、高速)
- 縮小時に1未満になる場合は最小1pxに制限
使用例
ゲームエンジン用2×拡大
32×32のドット絵を mode: Enlarge, scale: 2 → 64×64のピクセルパーフェクトな画像。
サムネイル用縮小
64×64の画像を mode: Reduce, scale: 2 → 32×32にダウンサンプリング。
プレビュー用3×拡大
16×16のアイコンを mode: Enlarge, scale: 3 → 48×48の鮮明なプレビュー画像。
Transform ノードとの違い
| 項目 | PixelScale | Transform |
|---|---|---|
| 目的 | スケーリング専用(拡大・縮小) | 移動・スケール・回転・反転の汎用変換 |
| パラメータ | mode + scale のみ |
offset_x/y, scale, rotation, flip_h/v |
| 適用場面 | エクスポート・プレビュー・サムネイル | グラフ内での画像変換 |