What's Changed With Havok4/ja

From Second Life Wiki
Jump to navigation Jump to search

相互貫入の解決

オブジェクトが衝突する時、最終的にお互いに貫通し、2つのオブジェクトは"同じ場所を占領しようと試みる"状態になります。Havok4はHavok1よりも別のおおまかな改善策で相互貫入の筋書きを解決します。

  • 相互貫入の解決は全ての動的オブジェクトに有効です
    • Havok1では、貫通が始まった動的オブジェクトは、貫通が終わるまで衝突しているのが止まります
    • Havok4では、動的オブジェクトは貫通時にバラバラにプッシュされるでしょう

体積探知

  • 体積探知は現在、境界となる箱の代わりにオブジェクトの正確な形状です。
  • 均一に拡大される球体が潜在します。(カットされたブロックの代わりに球体で制御します)
  • 形状は量子化されています。
    • 衝突している形状は明らかな形状からは多少異なる可能性があります
    • エラーは許容限界よりも小さくすべきで、それ故目立ちません
    • 形状のエラーは、大きなオブジェクトが全く通達しない場合は通達すべきでしょう

物体質量

  • llGetMass()はオブジェクトが装着されたとき、大きな値を返す傾向にあるでしょう
    • アタッチメントの"質量"は実際の形状に代わって各プリムの境界となる箱を用いて見積もられます

リンク能力ルール

  • リンクルールとは異なります
    • プリミティブの(回転、切り込み、傾き、ねじれ、先細、穴明けではなく)位置と形状のみで決まり、さらに強固に
    • (形状の合計に比例して、合計の二乗平均平方根よりかえって)より大きなリンク能力距離

アバタの挙動

  • アバタの挙動は微妙に変わるでしょう
    • 飛行(歩行)の傾きは速度促進をもたらさないでしょう
    • 進行可能な急な坂や傾斜が変わる可能性があります
    • 上昇可能な最も大きな段障害物が変わる可能性があります
    • 階段を上がる速度が変わる可能性があります
    • 走る速度が変わる可能性があります
    • 飛ぶ高さと着地時反動が可能性があります
    • 加速(減速)は歩いているときと止まるときがより高いです

エネルギー

  • エネルギーシステム限界が変わる可能性があります
    • エネルギーはオブジェクトの全プリムの質量で決まります
    • アタッチメントのエネルギーは常にアタッチされていないときと同じかそれ以上です(llMass()問題上のためです)
    • llPushObject()はもはや長距離を任意で激しくプッシュできません
    • オブジェクトを絶対的に最も大きく押し出そうとする試みは、(Havok1による、現在のエネルギー割当量と距離に基づいて弱まった)実装エネルギータンクの大きさによって決められるでしょう

物理エンジンの負荷と段階の詳細 (LOD)

  • オブジェクトの詳細(LOD)な衝突段階は物理エンジンのラグ(これはランタイム衝突制御システム(RSSC)でコントロールされます)時に変わる可能性があります
    • プリミティブがぶつかり合うような衝突が、一瞬でLOD高水準以下になります
    • 衝突形状の補正は物理エンジンが回復するときに(物理エンジンのタイムスタンプごとに、各プリムが評価されて)次第に通常に戻るでしょう
    • オブジェクトが性的から動的に転移するとき、オブジェクトの(LOD)は落下して空直前になり、RCCSが自動的に上昇するまで低いLODで衝突するでしょう
  • 繰り返す定型的な動きはマルチプリムオブジェクト上では失墜します
    • 動きは、ビークルや浮遊、または静止挙動のように、オブジェクト周りをプッシュする挙動をとります
    • 一つのオブジェクトに2つのスクリプトを作り、それぞれ同じ動き(llSetBuoyancy()のような)を作り出すと、二つの代わりに一つの動作をもたらします
    • マルチプリムオブジェクトの異なるプリムにある2つのスクリプトが、2つの異なるプリミティブから全く同じ動作を発生しようとしたときと、リンク解除操作で分離したプリムは、単一のアクション事例には最初に作られたスクリプトが移行するでしょう。オブジェクトのほかの要素は何もアクションを起こさないでしょう。

他の幾つかの変更

  • 縦のシミュレーションの広がりは(変化は、Havok4展開後の、アップデートされたビューアバージョンが発表されて明らかになるでしょう)で768mから4096mに増加し、一方スクリプトとUIの制限はまだ伴って変更されてはいません。

何が変わらなかった?

  • 動くオブジェクトは30プリミティブがまだ限界のままです
  • 殆どのプリミティブは0.1mの衝突範囲のままです(全て黙示的な球体であることをのぞいて)
  • 均一ではない球体の大きさはカットされた形状で衝突するでしょう
  • リージョンを横切るラグはHavok4の変更で著しく開放されるわけではないでしょう
  • アタッチメント上のllGetCenterOfMass()は失敗します

既知のバグ

  • シミュレータが延長された動作時間後のクラッシュで引き起こされる可能性のある、リソースリークがあります
  • アバタは常に"適地"に座りません
  • LSL collision()イベントは壊れています
  • LSL VolumeDetectの仕様は壊れています