fc2ブログ

凛(kagring)のUE5/UE4とゲーム制作と雑記ブログ

2016 年から UE4 / 2021年から UE5 を触り始めました。勉強したもののメモ用ブログです。ゲーム制作に関するメモや雑記とか色々あります。C++ での Qt、Unity もほんの少しあります。

2013年12月 | ARCHIVE-SELECT | 2014年02月

| PAGE-SELECT |

≫ EDIT

transform の回転をプログラムから制御

今回はよくある transform の回転などをプログラムから変更する処理です。
首のボーンであれば、キャラが近寄ったときにこっちを見るとか、移動しながら特定の方向を見たりなど
結構いろいろな用途につかえるのではないでしょうか。

モーション適用後の transform の位置や回転を変更するためには
LateUpdate() 関数のタイミングで行います。

こんな感じのソースに。

public void LateUpdate ()
{
Transform neckTransform = GameObject.Find ("Neck").GetComponent< Transform> ();
Quaternion quaternionNeck = Quaternion.AngleAxis (90.0f, Vector3.up);
neckTransform.localRotation = quaternionNeck;
}


というわけでプログラムからボーンを動かせるようになった状態がこちら。


怖い!ですがまあ実験ということで…。
これを特定の方向に向けるとこうなります。今回はカメラ目線にしてみました。
カメラ目線

こっちみんな。みたいになってしまいましたが…。
ちゃんとする場合は、首だけでなく背骨なども曲げるといい感じになると思うので
そのうち実装してみようと思います。

| Unity | 03:08 | comments:0 | trackbacks:0 | TOP↑

| PAGE-SELECT |