Sprite Editor (スプライトエディター) の Custom Physics Shape モジュールを使用すると、スプライトの物理形状を編集できます。スプライトの物理形状はスプライトの Collider 2D メッシュの初期形状を決定します。コライダーのコンポーネント設定で物理形状をさらに細かく調整できます。
Custom Physics Shape モジュールを開くには、Project ウィンドウで、編集したいスプライトを選択します。スプライトを Sprite Editor ウィンドウで開くには、スプライトの Inspector ウィンドウで、Sprite Editor ボタンを選択します。
Custom Physics Shape を開くには、Sprite Editor ウィンドウで左上のドロップダウンメニューを開き、Custom Physics Shape モジュールを選択します。
プロパティ | 機能 |
---|---|
Snap | コントロールポイントを最も近いピクセルにスナップします。 |
Outline Tolerance | このスライダーを使って、作成されたアウトラインがスプライトテクスチャのアウトラインにどれだけぴったりと正確に沿うかを制御します。最小値 (0) で、スプライトエディターはスプライトの周囲に基本的なアウトラインを作成します。最大値 (1) では、スプライトエディターはスプライトのアウトラインにできるだけ近いアウトラインを作成します。 |
Generate | このボタンをクリックすると、設定した Outline Tolerance の値に基づいて、Unity が自動的に物理形状アウトラインを作成します。 |
Copy | カスタム物理形状を生成または設定した後、この Copy ボタンをクリックして、カスタム物理形状を複製しますCustom Physics Shape モジュールを終了するか、Sprite Editor を閉じると、コピーされた物理形状はメモリから削除されます。 |
Paste | このボタンを使うと、コピーした物理形状を現在選択されているスプライトに貼り付けることができます。Copy 機能を使って物理形状をコピーしなかった場合は、このボタンは使用できません。 コピーしたカスタム物理シェイプを別のスプライトに貼り付けるには、Project ウィンドウで Custom Physics Shape エディターウィンドウが開いている状態で、そのスプライトを選択します。そして、Paste ボタンをクリックして、コピーした物理形状を新しいスプライトに貼り付けます。物理形状を貼り付ける際に、物理形状内のポイントがスプライトのフレームよりも大きい場合、Unity はそのポイントをスプライトのフレーム内に固定します。 |
Paste All | このボタンを使うと、コピーした物理形状を現在選択されているスプライトに貼り付けることができます。Copy 機能を使って物理形状をコピーしなかった場合は、このボタンは使用できません。同じテクスチャ内の複数のスプライトに同じ物理形状を適用するには、この関数を使用します (例えば、テクスチャの スプライトモード が ‘Multiple’ に設定されている場合など)。物理形状を貼り付けるときに、物理形状のポイントがスプライトのフレームを超えると、Unity はそのポイントをそのスプライトのフレームの内に固定します。 |
Revert | エディターウィンドウで行われた最近の変更のうち、保存されていないものを元に戻します。変更を保存するには、まず Apply をクリックします。 |
Apply | このボタンを選択すると、エディターウィンドウで行った変更がすべて保存されます。 |
Custom Physics Shape エディターが提供する様々な機能を使うと、スプライトの物理形状を作成できます。カスタムの物理形状を作成するには 2 つの方法があります。Unity が自動的に形状を 生成 する方法と、エディターウィンドウで 手動で作成し、編集する 方法があります。
オリジナルのスプライトテクスチャの形状に沿って、テクスチャの透明部分も考慮した物理形状を Unity が自動的に生成するには、Generate ボタンをクリックします。ただし、生成された物理形状がどの程度スプライトテクスチャに沿っているかは、Outline Tolerance スライダーを使って調整できます。
Outline Tolerance スライダーを調整して、Unity が生成する物理形状のアウトラインをより精密にします。値を大きくすると、アウトラインがより忠実にスプライトテクスチャの形状に沿うようになります。スライダーを 0 にすると、スプライトテクスチャへより緩く沿う物理形状が生成されます。
Outline Tolerance の値を調整した後、スライダーの設定に基づいて Unity が物理形状を自動生成するには、Generate をクリックします。アウトラインを生成した後にスライダーの値を調整して、更新したスライダーの値に基づいてアウトラインを再生成するには、 Generateを再度クリックします。
独自のカスタム物理形状を作成し、それを 2 つの方法で編集することができます。1 つ目の方法は、アウトラインを自動的に 生成 して、生成されたアウトラインのコントロールポイントを移動してさらに精密にする方法です。また、Custom Physics Shape ウィンドウの任意のスペースをクリックしてドラッグすると、4 つのコントロールポイントを持つ矩形のアウトラインが作成され、コントロールポイントを移動したり、追加や削除したりして、アウトラインを精密にする方法もあります。
メッシュのアウトラインの形状を調整するには、コントロールポイントをクリックしてドラッグします。コントロールポイントの上にカーソルを置くと青色に変わり、選択可能であることを示します。物理図形のアウトラインの形状を調整するには、コントロールポイントをクリックして異なる位置にドラッグします。ある領域でカーソルをクリックしてドラッグし、その領域内のすべてのコントロールポイントを選択することにより、一度に複数のコントロールポイントを選択できます。その後、選択したすべてのコントロールポイントの位置の変更や 削除 ができます。
制御点を追加するには、アウトラインの端にカーソルを置きます。アウトラインのエッジに沿って制御点のプレビューが表示されます。クリックすると、その位置に新しい制御点が追加されます。制御点を削除するには、その制御点を選択して Del/Command+Del キー を押します。
図 1: 透明なコントロールポイント | 図 2: クリックして新しい制御点を作る。 |
物理形状のコントロールポイントではなくエッジを選択するには、Control/Ctrl キーを押しながら操作します。ハイライトされたエッジをクリックしてからドラッグして、物理形状に影響を与える新しい位置に移動させます。
図 1: アウトラインのエッジを選択します | 図 2: 選択されたエッジをドラッグして自由に動かします |
スプライトの物理形状に複数の別々のアウトラインを含めることができます。これは、スプライトの特定の領域だけが衝突のための Collider 2D メッシュを必要とする場合に便利です。例えば、あるキャラクターのスプライトにゲームメカニックスの一部としてダメージを与えるために、特定の領域の衝突にのみ反応させたい場合があるかもしれません。
4 つのコントロールポイントを持つ新しい矩形のアウトラインを作成するには、Sprite Editor ウィンドウの何もない場所をクリックアンドドラッグします。この手順を繰り返して、さらにアウトラインを作成します。それぞれのアウトラインは、物理形状のアウトラインと同じように調整することができます。
図 1: クリックアンドドラッグで 4 点ボックスを作成 | 図 2: 4 つのコントロールポイントを持つボックス物理形状 |
図 3: クリックしてドラッグすると、別のボックスを作成 | 図 4: これを繰り返して、さらに別のアウトラインを作成 |
既存のゲームオブジェクトがすでに参照として使用されているスプライトの輪郭を編集する場合は、Collider 2D コンポーネントのラベルを右クリックして Reset を選択します。これにより、Collider 2D メッシュの形状が更新されます。
Copy & Paste エディターウィンドウ昨日は 2020.1 で追加NewIn20201
2018–05–24 公開ページ