1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

猫じゃらしを作ろう #2

Last updated at Posted at 2022-03-25

なんてこった...
Unityのオブジェクトで#1の跳ね返りができてしまいました。。

必要なもの

  • Unity Hub ver:3.1.1(多分新しくても問題ないでしょう)
  • 猫への愛情
  • 遊び心
  • C#若干の知識

手順

  1. 言語を英語に戻す
  2. #1で実装したUpdateメソッドを削除する
  3. オブジェクトの準備
  4. 壁の設定
  5. 球の設定

言語を英語に戻す

色々調べているとみんな英語のまま作業してる感じなんですね。
言語を英語に戻しておきます。

#1で実装したUpdateメソッドを削除する

前回実装したのはいらない子になります。。

オブジェクトの準備

下記のような感じにオブジェクトを用意します。

"Wall"と"PlayObject"は"Create Empty"で空のものを作って、前者には2Dの四角形オブジェクトを4つ入れます。
後者には前回作った円オブジェクトを入れます(ドラッグ&ドロップでできます)。
objects.png

構成を見てなんとなく察すると思いますが、画面外の判定をするオブジェクトを配置することで、円とそのオブジェクトの衝突を判定する感じですね。
前回は無理やり過ぎました。。(笑)

壁の設定

配置

まずは4つのオブジェクトの大きさや位置を調整します。
厚さや配置方法は好みですが、私は4隅が重なった配置にしています。

  • 縦長の枠
    • Scale X:0.5, Y:11, Z:1
    • 左側のX地点: -9.75
    • 右側のX地点: 9.75
  • 横長の枠
    • Scale X:20, Y:0.5, Z:1
    • 下側のY地点: -5.25
    • 上側のY地点: 5.25
      私は上記のような設定をしましたが、四角形の枠ができていれば問題ないです。
      また、色はデフォルトで白でしたが透過率を上げて透明にしてもよいかもしれません。

wall_image.png

コンポーネント

そしてそれぞれの壁にBoxCollider2Dのコンポーネントをセットします。
これで壁に物理判定ができるようです。
boxcollider.png

球の設定

コンポーネント追加

さて肝になる部分です。
"跳ね返り"を定義するために、Assetフォルダを右クリックして"Physic Material 2D"というものを選択します。
これが摩擦係数や反発係数を持つ情報なようです。

create_physicmaterial.png

そしてこれを前回作成した"Rigidbody 2D"のMaterialにセットします(名前は変えた方がいいです)
rigidbody.png

更に!この球にも壁と同じように判定を与える必要があるので、球に"Circle Collider 2D"を追加します。
circlecollider.png

動かしてみる

動かすとなんと物理判定があります!!!
が!!跳ね返りませんでした。

ここでAssetに追加した"physic Material 2D"の設定を変更しましょう。

  • Friction: 摩擦係数 → 0 (減衰はいらないので)
  • Bounciness: 反発係数 → 1 (元の速度を維持したまま跳ね返してもらいます)

これで跳ね返りました!!

物理的な計算はオブジェクトを使えないか考えることが大事そうですね。
Unity素人でスミマセン!!
お詫びに画面で遊ぶ猫を。

追記

なんとなんと、"Dynamic Sprite"オブジェクトを追加することで、"Circle Collider 2D", "Ridgidbody 2D"コンポーネントを適用したCircleオブジェクトが生成できました。
やっぱりよく使われるものはあるんですね~
dynamicsprite.png

← PREV: ゴリ押しで球を反射させてみた(素人)

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?