読者です 読者をやめる 読者になる 読者になる

It’s now or never

IT系の技術ブログです。気になったこと、勉強したことを備忘録的にまとめて行きます。

Unity メモ

最近Unityの勉強を始めました。 Unityは、色々と覚えることが多いのでメモに残しておきます。

RigidBody

ゲームオブジェクトに物理計算をつける

Component > Physics から RigidBodyと追加

重力を無効にする

Use Gravityのチェックを外す

ゲームオブジェクトに特定方向に動かさないようにする

インスペクター RigidBody > Constaints

Freeze Rotation => 回転を抑止 Freeze Position => 移動を抑止

ゲームオブジェクトの重力を変更する

インスペクター RigidBody > Mass

値が小さいと運動の影響を受けやすくなる (例) なにかと衝突したときに大きく跳ねさせたい => 小さくする

よく使うメソッド

AddForce(force: Vector3) RigidBodyに力を追加して移動させる

他のオブジェクトからは物理的影響をうけないオブジェクトに設定

Is Kinematicを有効にする

他のオブジェクトには物理的影響を与えるが、 他のオブジェクトからは物理的影響をうけないオブジェクトになる

※注意 RigidbodyのIsKinematicがTrue ColliderのIsTriggerがTrue に設定しないとOnCollisionがコールされない。

Physic Material

反射や摩擦などの物理運動の値を設定

ゲームオブジェクトを跳ねやすくする

[Physic Material] > Bouncinessを変更 大きい程はねやすい

[GameObject]インスペクタ > Sphere Collider > Material に設定したPhysic Materialを設定

反発係数の評価方式を設定する

BounceCombine・・・反発係数が大きい方の評価係数が適用

ゲーム全体の設定

重力を変更する

Edit > Project Settings > Physic Gravity

※デフォルトは「9.8」 この時の物理運動は、1.0が1メートルになる。 大きさ1.0に対して直径1メートルの物質をみているのと同じ。

MonoDevelopを使ってUnityでデバッグする

1.エディタをMonoDevelopにする(Preferences – External Script Editor) 2.UnityのメニューからAssets – Sync MonoDevelop Projectをクリック 3.MonoDevelopが起動したらツールバーにあるAttach to Processのアイコンをクリック 4.Unityが起動していればリストに出てくるので選択してAttachをクリック 5.MonoDevelopでスクリプトのソースを開いて適当な位置にブレークポイントを置く 6.Unity側でプレビューを実行 7.ブレークポイントの位置で止まるので、ツールバーからステップ実行とかする

その他

プレハブの変更をその他のプレハブへ反映させる

値を変更 > インスペクタ > Prefab > Apply