Unityを始めてみる。
Unityってなんだ?
unityとはゲーム開発を簡単に行うためのツール
とは言っても、物理エンジンやらシェーダやらを全部自前で
書くよりは簡単に行うためのツールということであり、
やることはそれなりに多い。
記憶力に不安のある私は、やったことをメモしていこうと思った。
なんといっても、iOSとandroidにも対応。
それがとても魅力に感じた。
開発環境概要
- Unity5.3.1
- Mac
最終的には、iosアプリとして出力する。
(正確には、xcodeプロジェクトを生成)
画面レイアウトについて
スクリーンキャプチャ画像について
window->layoutなんかを使って、配置変更してます。
説明が変わってしまう部分もあるかと思いますが、読み替えてもらえると。。。
物体を置く -> 落とす -> 跳ねる
* 画面内にキューブ状の物体を配置 *
3D Object -> Cube
Unityのバージョンによって場所が変わってるかもしれない。
続いて、Cubeを置いたときと同様にして、Sphereを作る。
何かあるけど、見えない。
生成されたポジションが板と重なっているので、ポジションを調整します。
直接キーボードで打ち込んでもいいし、Yのあたりをクリックして、
左右に動かしても変更することができる。
Y座標を1以上にすると、球体が顔を出してきます。
この球体に重力の影響を与えます。
Hierarchyで、Sphereが選択された状態で、
InspectorのAdd Componentをクリック
コンポーネントの一覧から、Physicsを選ぶ。
さらにその中にある、Rigidbodyを選択
Rigidbodyのパラメータ
- Mass 質量
- Drag
- Angular Drag
- Use Gravity
- Is Kinematic
- Interpolate
- Collision Detection
- Constraints
- -Freeze Position
- -Freeze Rotation
これで、球体に重力が加わる。
しかし、このまま動かしても、落ちて板に乗っかるだけです。
非常に不自然な動きになります。
跳ねる動作を追加します。
作成したNew Physic Materialを選択し、
Inspectorで以下のパラメータを変更
Bounciness = 1
減衰係数を設定する項目で、
1だと減衰しない
0だとはねない
Physic Material をオブジェクトに設定
HierarchyのCube,Sphereの
Cube :Box ColliderのMaterial と
Sphere:Sphere ColliderのMaterial に設定
計算ロジックとしては、
物体それぞれに反発係数を設定し、
ぶつかった二つの物体A,Bの減衰係数が
両方1の場合、減衰なし
A:1.0 B:0.5だと
AとBがぶつかった場合は、減衰率0.5となる。
ただ、A:1.0,B:0.0にした場合だと
跳ねないかと思ったが、試してみると少し跳ねる。
そのため、単純な積算とかではないのだろう。
そこらへんの詳細はドキュメントに書いているのか
必要になったら確認する。
とりあえず、
ここまで。