今回は結構むずい クォータニオンの話です。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
using System.Collections; using System.Collections.Generic; using UnityEngine; public class TestRotation : MonoBehaviour{ void Update() { //マウスをクリクしたらトルクをかける if (Input.GetMouseButtonDown(0)) { //リジッドボディをとってくる var cube = GetComponent<Rigidbody>(); // トルクの成分を定義 ではなくて //var torque = new Vector3(0f, 1f, 0f); // 角速度を定義する var omega = new Vector3(0f, 1f, 0f); var R = transform.rotation; var RI = Quaternion.Inverse(transform.rotation); // T = I * omega // T =Ir Id IrI * omega var Id = cube.inertiaTensor; var Ir = cube.inertiaTensorRotation; var IrI = Quaternion.Inverse(Ir); var torque = R * Ir * Vector3.Scale(Id, IrI * RI * omega); // トルクを与える関数を使用する cube.AddTorque(torque, ForceMode.Impulse); } } } |
The following two tabs change content below.
Keita N
こんにちは すうがく を こよなくあいする
”二代目 圧倒的 かず まなぶ (´・ω・`)” です
心が豊かになる方法について 引き続き考えていきたいです。
最新記事 by Keita N (全て見る)
- python MNIST問題 - 2020年12月19日
- python バフェット流 バリュー投資判断 - 2020年12月19日
- Python:webカメラとOpenCVで動体検知してLine Notifyで画像を通知する - 2020年12月19日