[過去ログ] 【ゲームエンジン】Unityなんでも質問スレpart9 (1002レス)
前次1-
抽出解除 レス栞

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
508
(1): 名前は開発中のものです。 [] 2023/02/05(日) 21:49:45.71 ID:F7wUAxrX(1) AAS
Quaternionの回転量に係数を掛けたQuaternionを取得したいんだけど、
Quaternion.ToAngleAxis と Quaternion.AngleAxis を経由せずに行う計算方法ない?

徐々に回転が遅くなるコードを書きたいんだけど、
毎フレームやるとGameObjectの数増やした時にチリツモで重くなる気がする
void Update()
{
transform.rotation *= inertiaRotation;
inertiaRotation.ToAngleAxis(out var angle, out var axis);
inertiaRotation = Quaternion.AngleAxis(angle * 0.95f, axis);
}
510: 名前は開発中のものです。 [sage] 2023/02/06(月) 08:01:36.32 ID:ZOszYiF2(1) AAS
>>508
そこ以外でangleとaxisが変わらないなら、angleとaxisを変数に持っておけば、ToAngleAxis()は省ける
別の方法なら、Quaternion.RotateTowards()、Quaternion.Lerp()あたりも使えるかもしれないけど、AngleAxis()より軽いとは思えないな
Objectが大量にある時に重くなるのを軽くしたいなら、自分ならBurst、JobSystemを使うことを検討する
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.041s