Unityチュートリアル「はじめてのUnity」のブロック崩しと同等をC#で::(3)動くボール をやってみた②
さて前回設置したボールを動くようにします。
Inspecterの下のほうにある、Add Component を押します。
なんか色々出てきますが、一番下のほうの、New Scriptを選択。
名前をBallとし、Create and Addを押します。
すると、できました!
少し前に、壁のマテリアルを作ったところに、何かが!
さてこれは、少し前に、少しかじったC#です。
さっそくダブルクリックすると、Visual Studioが立ち上がりました。これ、立ち上がるの少し時間かかるのよねえ。
立ち上がった画面はこんな感じです。
すでに何かが書いてあります。相変わらずさっぱり分かりませんが、とりあえずやってみます。
とりあえず言われるがまま丸写しです。
しかし、意味はさっぱり分かりません。解説がついていたので読んでみます。
あれ?日本語なのに頭に入ってこない…。
こまけえことはいいか!
さて保存して動かしてみます。
上の再生ボタンをぽちりとすると、
ボールが勢いよく右上へ射出され、その後慣性で上へゆっくりと動きました。
おお、説明にあった通りの動きだ!
ここで、カメラのアングルを変えました。上から見下ろしている感じにしました。
これらの数字、どこをどういじれば希望のカメラワークになるのかまだよくわからないので、説明にあるとおりにしました。
さてボールに戻りますが、先ほど右上に勢いよく射出されたボールは、壁に当たると失速しました。ブロック崩しのボールは、空気抵抗や摩擦は必要ないでしょう。
ということで、設定をいじります。
空気抵抗である、DragとAngular Dragの値を0にしました。
軸を固定するためにConstraintsのFreezePositionのyにチェック、FreezeRotationのXYZにチェックを入れました。ボールの移動範囲をXZ軸に固定するためです。(と偉そうに言っていますが、ほぼ意味は分かっていません…)
そうして再生をしたら、右上に射出されたボールは失速することなく上へ転がり、上の壁に当たって止まりました。
壁に当たったら跳ね返ってほしいので、以下の作業をします。
Criateから、PhysicsMaterialを選択。
すると、ゴルフっぽいアイコンが新しくできました!
これをこんな感じに設定します。
次はBall側のInspecterの設定。
そして、ここにさっき設定したゴルフっぽいアイコンをぽいっと。
これで、壁にあったったら跳ね返るはずです!
再生ボタンを押してみます。
むふー!!いい感じに跳ね返っております!
今日はこのあたりで。