Physics 2D のグローバル設定は以下のプロパティで適用されます。3D 物理のグローバル設定を管理したい場合は、代わりに Physics Manager 設定を参照してください。
Physics 2D の設定では、物理シミュレーションの精度の制限を定義します。より正確なシミュレーションを行うためには、処理のオーバーヘッドが増えます。そのため、これらの設定を使用すると、プロジェクトに適した精度とパフォーマンスのバランスを設定することができます。詳細は、Physics を参照してください。
プロパティ | 機能 |
---|---|
Gravity | すべての Rigidbody 2D ゲームオブジェクトに適用される重力の大きさを設定します。一般的に、Y 軸の負の方向にのみ重力を設定します。 |
Default Material | 個々の 2D コライダーに割り当てられていない場合に使用する Physics Material 2D への参照を設定します。 |
Velocity Iterations | 物理エンジンによる反復回数を設定し、速度エフェクトを解決します。数値が高いほど物理演算はより正確になりますが、CPU 時間を犠牲にします。 |
Position Iterations | 物理エンジンによる反復回数を設定し、位置の変化を解決します。数値が高いほど物理演算はより正確になりますが、CPU 時間を犠牲にします。 |
Velocity Threshold | 弾性衝突のしきい値を設定します。 Unity は、相対速度がこの値より低い衝突を非弾性的な衝突 (衝突するゲームオブジェクトが互いにバウンスしない衝突) として扱います。 |
Max Linear Correction | 制約を解くときに使用する最大のリニア位置補正を設定します (0.0001 から 1000000 の範囲)。これにより、オーバーシュートを防ぐことができます。 |
Max Angular Correction | 制約を解くときに使用する最大角度補正を設定します(0.0001 から 1000000 の範囲)。これにより、オーバーシュートを防ぐことができます。 |
Max Translation Speed | 物理演算の更新中に Rigidbody 2D ゲームオブジェクトの最大直線速度を設定します。 |
Max Rotation Speed | 物理演算の更新中に Rigidbody 2D ゲームオブジェクトの最大回転速度を設定します。 |
Baumgarte Scale | Unity が衝突の重複を解決する速さを決定するスケール係数を設定します。 |
Baumgarte Time of Impact Scale | Unity が衝突時間の重複をどのくらい早く解決するかを決定するスケール係数を設定します。 |
Time to Sleep | Rigidbody 2D の動きが止まってから、スリープ状態になるまでに経過する時間 (秒単位) 。 |
Linear Sleep Tolerance | Time to Sleep 経過後に Rigidbody 2D がスリープ状態になる直線速度を設定します。 |
Angular Sleep Tolerance | Time to Sleep 経過後に Rigidbody 2D がスリープ状態になる回転速度を設定します。 |
Default Contact Offset | コライダーが実際に接触していない場合でも、接触しているとみなされるコライダーの近接距離の値を設定します。 contactOffset 値の合計よりも距離が短いコライダーは接触したとみなされます。これにより、衝突検知システムは、オブジェクトがわずかに離れていても接触制約を予測的に強制することができます。注意: この値をあまり小さくすると、連続ポリゴン衝突を計算する Unity の能力が損なわれる可能性があります。逆に、値をあまり大きくすると、頂点衝突のアーティファクトが発生する可能性があります。 |
Simulation Mode | Unity が 2D 物理シミュレーションを実行するタイミングを、ドロップダウンメニューから選択します。 |
Fixed Update | MonoBehaviour.FixedUpdate が呼び出された直後に、Unity が物理シミュレーションを実行する場合は、これを選択します。 |
Update | MonoBehaviour.Update が呼び出された直後に Unity が物理シミュレーションを実行する場合は、これを選択します。 |
Script | スクリプト を使って物理シミュレーションを手動で実行する場合は、これを選択します。 |
Queries Hit Triggers | このオプションを有効にすると、Triggers として設定した Collider 2D が、物理クエリ (Linecast や Raycast など) と交差したときにヒットを返すようにします。デフォルトで有効になっています。 |
Queries Start In Colliders | このオプションを有効にすると、物理クエリを Collider 2D 内で開始しコライダーを検出します。 |
Callbacks On Disable | このオプションを有効にすると、コライダーがコンタクトを無効にしたときにコリジョンコールバックを送信します。 |
Reuse Collision Callbacks | この設定を有効にすると、物理エンジンは 1 つの Collision2D インスタンスをすべてのコリジョンコールバックに再利用します。無効にすると、物理エンジンはコリジョンコールバックごとに新しい Collision2D インスタンスを作成します。 |
Auto Sync Transforms | このオプションを有効にすると、Transform の変更を物理システムと自動的に同期させます。 |
Job Options(Experimental) | 後述の Job Options のセクションを参照してください。 |
Gizmos | 下の ギズモ セクションを参照してください。 |
Layer Collision Matrix | レイヤーベースの衝突 検出システムの動作を定義します。チェックボックスにチェックを入れて、Collision Matrix のどのレイヤーがどのレイヤーと相互作用するかを選択します。 |
Job Options セクションの設定で C# Job System を使用してマルチスレッド物理演算を設定できます。
プロパティ | 機能 |
---|---|
Use Multithreading | このオプションを有効にすると、ジョブシステムを使用してシミュレーションステップを実行し、残りのオプションを使用して制御できます。 |
Use Consistency Sorting | 一貫性のある処理順を維持することがシミュレーションにとって重要になる場合は、このオプションを有効にします。 複数の CPU スレッドでシミュレーションステップを実行すると、別々のバッチデータが生成されます。これらの別々のバッチを処理することで、より高速な結果が得られますが、処理順序の決定性は低下します。 |
Interpolation Poses Per Job | 各シミュレーションジョブで補間される Rigidbody 2D オブジェクトの最小数を設定します。 |
New Contacts Per Job | 各シミュレーションジョブで検索する新しい接触の最小数を設定します。 |
Collide Contacts Per Job | 各シミュレーションジョブで衝突させる接触の最小数を設定します。 |
Clear Flags Per Job | 各シミュレーションジョブでクリアするフラグの最小数を設定します。 |
Clear Body Forces Per Job | 各シミュレーションジョブでクリアするボディの最小数を設定します。 |
Sync Discrete Fixtures Per Job | 各シミュレーションジョブでの非連続的なアイランドの解決中に、ブロードフェーズで同期するフィクスチャの最小数を設定します。 |
Sync Continuous Fixtures Per Job | 各シミュレーションジョブでの連続的なアイランドの解決中に、ブロードフェーズで同期するフィクスチャの最小数を制御します。 |
Find Nearest Contacts Per Job | 各シミュレーションジョブで検索する最も距離が近い接触の最小数を設定します。 |
Update Trigger Contacts per Job | 各シミュレーションジョブで更新するトリガーの接触の最小数を設定します。 |
Island Solver Cost Threshold | 非連続的なアイランドの解決の間の、1 つのアイランドでの、すべての物体、接触、およびジョイントのコストの最小しきい値。 |
Island Solver Body Cost Scale | 非連続的なアイランドの解決の間の、各ボディのコストスケールを設定します。 |
Island Solver Contact Cost Scale | 非連続的なアイランドの解決の間の、各接触のコストスケールを設定します。 |
Island Solver Joint Cost Scale | 非連続的なアイランドの解決の間の、各ジョイントのコストスケールを設定します。 |
Island Solver Bodies Per Job | アイランドの解決を行う場合に、各シミュレーションジョブで解決するボディの最小数を設定します。 |
Island Solver Contacts Per Job | アイランドの解決を行う場合に、各シミュレーションジョブで解決する接触の最小数を設定します。 |
プロパティ | 機能 |
---|---|
Always Show Colliders | このオプションを有効にすると、選択されていなくてもコライダーギズモは表示されます。 |
Show Collider Sleep | このオプションを有効にすると、各コライダーのスリープ状態を表示します。 |
Collider Awake Color | コライダー (ボディ) が起きていることを示す色を設定します。 |
Collider Asleep Color | コライダー (ボディ) がスリープ状態であることを示す色を設定します。 |
Show Collider Contacts | このオプションを有効にすると、各ギズモの現在の接触が表示されます。 |
Contact Arrow Scale | コライダーギズモに表示される接点矢印のサイズを設定します。 |
Collider Contact Color | ギズモ色を設定してコライダーの接触を示します。 |
Show Collider AABB | このオプションを有効にすると、コライダーのバウンディングボックスが表示されます。 |
Collider AABB Color | コライダーのバウンディングボックスのギズモ色を設定します。 |
2018–10–02 修正されたページ
Unified Settings の更新