basic-02-parentchild | UnityユーザーのためのUEブループリント入門
UnityユーザーのためのUEブループリント入門
Unity C#コードとUEブループリントのビジュアル両方のスクリプトを比較してゲームエンジンを学びます
English
|
日本語
TOP
メニュー
1.基本操作
2.親子関係
3.マテリアルとシェーダー
4.物理演算
5.ゲームプログラミング
6.プログラムの実行順序
7.変数と型
8.計算
9.関数
10.条件分岐
11.繰り返し処理
12.名前空間
13.配列
14.アクセス指定子
15.プレハブとBPクラス
16.相互作用
17.物体検知
about
2. 親子関係
UnityとUnreal Engine両方にも親子関係を作ることができます。
親子関係
親子関係になるとどうなるのか
親子関係時の重心と向き
親子関係時のTransform表示
2. Unityの親子関係
2.1 親子関係
親子関係とは階層構造になっているゲームオブジェクトのことを指します。
Transformの値からゲームオブジェクトを操作したとき、親と相対的な位置になります。
Resetで位置を原点に回転、拡大縮小を無しにできます。
HierarchyにCubeを作成してSceneに置きます。
どこかをクリックすると画像は閉じます
どこかをクリックすると画像は閉じます
HierarchyにSphereを作成してSceneに置きます。
どこかをクリックすると画像は閉じます
Cubeを選択して、InspectorにあるTransformを確認します。
どこかをクリックすると画像は閉じます
どこかをクリックすると画像は閉じます
Transformのリセットは、右側の縦に三つの点があるアイコンを押してResetを選択するとLocation、Rotation、Scaleがリセットされます。
どこかをクリックすると画像は閉じます
どこかをクリックすると画像は閉じます
どこかをクリックすると画像は閉じます
次に親子関係を見てみます。
わかりやすいように、CubeのLocationをx:0,y:0.5,z:1、SphereのLocationをx:0,y:0.5,z:-2にします。
それからPlaneゲームオブジェクトを追加してリセットしておきます。
どこかをクリックすると画像は閉じます
LocationをそれぞれセットしたらHierarchyで、Sphereをクリックしてから、Cubeの項目にドラック&ドロップします。
どこかをクリックすると画像は閉じます
Cubeが親、Sphereが子の親子関係が作成できます。
どこかをクリックすると画像は閉じます
SphereのLocationを確認すると、Locationの値が変わっていることを確認します。
どこかをクリックすると画像は閉じます
親子関係はたくさんつくることもできます。
どこかをクリックすると画像は閉じます
どこかをクリックすると画像は閉じます
2.2 親子関係になるとどうなるのか
親であるCubeを動かすと、子のSphereも追従します。
どこかをクリックすると画像は閉じます
親であるCubeのLocation
どこかをクリックすると画像は閉じます
子であるSphereのLocation
どこかをクリックすると画像は閉じます
親は子の影響を受けません。
2.3 親子関係時の重心と向き
Pivot 単体の中心位置
Center 全ての子を含めた中心位置
Global 現在の回転を考慮しない
Local 現在の回転を考慮する
Globalは選択するたびに矢印の回転をリセットする
親子関係の解除は、ドラッグ&ドロップで違うところに置きます。
Transformは親から見た相対的な値になります。
2.4 親子関係時のTransform表示
親から見た相対的な座標はローカル座標です。
親とは無関係な絶対座標はグローバル(ワールド)座標です。
Transformの回転、大きさもローカル表示になります。
2. UEの親子関係
2.1 親子関係
Place ActorsパネルからCubeをレベル上に置きます。
どこかをクリックすると画像は閉じます
どこかをクリックすると画像は閉じます
続けてPlace ActorsからSphereをレベル上に置きます。
どこかをクリックすると画像は閉じます
Cubeを選択して、ワールドアウトライナの詳細パネルにあるTransformを確認します。
どこかをクリックすると画像は閉じます
どこかをクリックすると画像は閉じます
Transform Locationのリセットは、右側にある曲がった矢印を押すとリセットされます。
どこかをクリックすると画像は閉じます
どこかをクリックすると画像は閉じます
どこかをクリックすると画像は閉じます
Rotation、Scaleも同様に、矢印を押すとリセットされます。試しにRotaion、Scaleの値を適当に変えます。
どこかをクリックすると画像は閉じます
どこかをクリックすると画像は閉じます
矢印を押すとリセットされます。
どこかをクリックすると画像は閉じます
どこかをクリックすると画像は閉じます
TransformのLocation、Rotation、Scale全てをリセットする機能はないようです。
次に親子関係を見てみます。
わかりやすいように、CubeのLocationをx:0,y:0,z:70、SphereのLocationをx:0,y:-200,z:0にします。
どこかをクリックすると画像は閉じます
Locationをそれぞれセットしたらワールドアウトライナで、Sphereをクリックしてから、Cubeの項目にドラック&ドロップします。
どこかをクリックすると画像は閉じます
Unityと同じようにCubeが親、Sphereが子の親子関係が作成できます。
どこかをクリックすると画像は閉じます
SphereのLocationを確認しますと、Locationの値が変わっていないことを確認します。
どこかをクリックすると画像は閉じます
また、親子関係はたくさんつくることもできます。
どこかをクリックすると画像は閉じます
どこかをクリックすると画像は閉じます
2.2 親子関係になるとどうなるのか
親であるCubeを動かすと、子のSphereも追従します。
どこかをクリックすると画像は閉じます
親であるCubeのLocation
どこかをクリックすると画像は閉じます
子であるSphereのLocation
どこかをクリックすると画像は閉じます
Unityと同様に親は子の影響を受けません。
2.3 親子関係時の重心と向き
Unityのような中心位置を変更するCenter機能をUEで使う場合は、親と子を選択してから右クリック > Pivot > Center On Selectionを選びます。
どこかをクリックすると画像は閉じます
どこかをクリックすると画像は閉じます
どこかをクリックすると画像は閉じます
次にローカル座標やグローバル座標の変更についてみていきます。
いまレベル上にある親Cubeを選択します。
どこかをクリックすると画像は閉じます
そしてビューポートディスプレィの右上にある縦に並んでいるアイコンの左から4番目にある地球儀の形をしたアイコンがあります。いまはグローバル座標になっています。
どこかをクリックすると画像は閉じます
これをローカル座標に変更するために、地球儀アイコンをクリックします。すると、Cube状のアイコンに変わります。これでローカル座標に変更されます。
どこかをクリックすると画像は閉じます
試しに、ローカル座標になっている状態で親CubeのRotation xを30に変更します。
そうすると、ローカル座標に基づいて回転を考慮していることがわかります。
どこかをクリックすると画像は閉じます
どこかをクリックすると画像は閉じます
グローバル座標に変更します。
今度は回転を考慮しないことがわかります。
どこかをクリックすると画像は閉じます
親子関係の解除は、Unityと同じく、子を選択して違うところに置くと解除されます。
どこかをクリックすると画像は閉じます
どこかをクリックすると画像は閉じます
2.4 親子関係時のTransform表示
Unityと同じように、CubeとSphereそれぞれのLocation、Rotation、Scaleをリセットしてから、UEのスケールに合わせて、CubeのLocationをx:0, y:100, z:70、SphereのLocationをx:0, y:300, z:60にします。
どこかをクリックすると画像は閉じます
CubeのLocation
どこかをクリックすると画像は閉じます
SphereのLocation
どこかをクリックすると画像は閉じます
この状態から、SphereをCubeの子にします。
どこかをクリックすると画像は閉じます
子になったShpereのLocationを確認します。
子のSphereのLocation yの値が200になっていることがわかります。これは、親からみた相対的な位置(ローカル座標)になっていることがわかります。
どこかをクリックすると画像は閉じます
🔗 参考リンク
ヒストリア
[UE4]トランスフォーム関係の注意
https://historia.co.jp/archives/6288/