2021.10.18回転するアイテムは配置できたけど、接触しても跳ね返されてしまう。当たり判定をするプログラムを実装して解決しましょう。実際に画面操作をしながら理解を深めていただきたく、以下の続きとして解説していきます。エッセンスだけを知りたい方は、このステップをスキップして本文へお進みください。以下の1記事の内容をベースに解説しますので、事前に実施をお願いします。「Unityはインストールしたけど、何から作ろう...」とお困りの方向けに、キーボード操作で動くゲームの作り方を解説していきます。基礎的な内容のため、最初にぜひ身につけてステップアップしてください。takugymnastics.com2021.10.12解説画面と全く同じ環境にしたい場合は、追加で以下の3記事を実施お願いします。【Unity】オブジェクトに色を付ける|ようこそ、カラフルな世界へ!Unityのオブジェクトに色や模様を付けてみよう!デフォルトでは、グレー一色の味気ない世界をカラフルに染める方法をご紹介します。【Unity】オブジェクトの複製|同じ作業を徹底的に効率化!同じオブジェクトを複数作ること、あるあるですよね!ただ、途中で方針が変わったりして、一つ一つを修正していく作業は骨が折れます。そんな手間を一挙に解決してくれるのが、Prefab(プレハブ)という機能。【Unity】Public変数はこう使う|エディタでパラメータ調整プログラムからオブジェクトを操作する場合、付いて回るのが「パラメータの調整」です。何度も修正して確認するのは、なかなかの手間なのです。そこで、エディタから直接操作する方法で効率化をしていきましょう。【Unity】回転するアイテム配置|超簡単!Rotateメソッドの使い方ゲームにおいて変化をもたらすのが「アイテム」です。回転するアイテムを配置するまでを解説していきます。takugymnastics.com2021.10.17ここまでで、事前準備は完了したと思いますので、早速解説していきましょう。アイテムをGETするというのは、どのような状態なのか整理していきましょう。「オブジェクト同士(球とアイテム)の当たり判定」→「オブジェクトの一方(アイテム)を非表示」の状態。当たり判定をトリガーに非表示化するかの確認オブジェクト同士の当たり判定オブジェクト同士の当たり判定(接触検出)は、Colliderコンポーネントの役割です。ゲームには欠かせないコンポーネントです。Renderer]で確認しましょう。Hierarchyウインドウの[Player](オブジェクトなら何でも可)を選択します。Renderer]の左側のチェックを外してOFFにします。Renderer]のON/OFFでこのように変化します。Renderer]がOFFの時に表示される「緑の球線」が、当たり判定がされる領域という訳です。オブジェクトの形状毎に当たり判定領域は異なりますので、他のオブジェクトも確認してみてください。当たり判定を入れるまずは、球[Player]がアイテム[Item]を通り抜けるようにしていきます。ここで、Colliderコンポーネントの出番です。当たり判定は、接触するオブジェクトの片方に入っていれば動作します。そのため、今回は、[Item]の方に設定します。Prefab]をクリックします。編集モードに移行します。Trigger]にチェックを付けてONにします。これで、物理演算をせず(接触して止まらず)に、「当たり判定」のみを実施するようになります。Trigger]をONにすると、プレハブ化されている[Item(1)]と[Item(2)]にも、ここでの設定内容が反映されます。これで、[Player]が[Item]、[Item(1)]、[Item(2)]を通り抜けるようになります。当たり判定の確認[▶︎]ゲームプレイで、実際に通り抜けるかを確認してみてください。[Player]が[Item]を通り抜けています。これで、通り抜けは完了です。当たり判定により、アイテム[Item]を非表示にします。「球[Player]に当たった相手(アイテム等)を非表示にする」というプログラムをScriptに書いていきます。そのため、球[Player]に関連付けられているScriptを開きます。Projectウインドウの[PlayerController]をクリックして、VisualStudioでScriptを開きます。「OnTiggerEnterメソッド」の出番です。OnTiggerEnterメソッド他のオブジェクトのトリガーに、自分のColliderが入った(接触した)瞬間だけ実行されるメソッド。Scriptは、以下のオレンジ枠部の内容を追記します。other):引数で、other(自分以外の他のオブジェクト)に接触するとその相手(オブジェクト)のColliderが代入される。other.gameObject:自分以外の他のオブジェクトを表す。SetActive():Inspectorウインドウの下のチェックをON/OFFするメソッドです。オブジェクトのアクティブ/非アクティブを切り替えます。False:Bool型でFalse(偽)は非表示、True(真)は表示になります。追記が完了したら、保存します。当たり判定をトリガーに非表示化するかの確認[▶︎]ゲームプレイで、当たり判定により非表示化するかを確認しましょう。当たり判定(接触検出)で、アイテムを非表示化することができました。System1複数のアニメーションを連結させて、キャラクターに動作させる方法を解説していきます。そんな話題のツール「Unity」について、重要なポイントに絞って紹介していきます。Source入門ARオブジェクトに音楽を付ける方法です。Recorderの使い方Unityで作ったゲームを動画として残しておきたいことありますよね?そんな時に便利な録画機能をUnityは備えています。インストール方法から使い方まで解説していきます。development【Unity】UIでゲーム感演出|大きなCanvasにテキストを!ゲームに欠かせないUIの作り方です。Uniyではスコア表示などは、Canvas上にTextを配置します。実際の画面に沿って解説していきます。development【Unity】ジャンプするアニメーション|キーボードで操作編キャラクターのジャンプするタイミングをキーボードから操作する方法を解説します。developmentプロフィール管理人まくろアラサーエンジニア。ふたり息子(0歳・3歳)のパパ。息子達に伝えていきたい内容を書き留めるために、ブログ執筆を開始。検索タイトルとURLをコピーしました。