Unity オブジェクトを瞬間移動させる床を設置してみよう!初心者編24
今回はオブジェクトが瞬間移動スクリプトがアタッチされた
床のオブジェクトに乗ったら決められた場所に瞬間移動する方法の紹介です。
オブジェクトを瞬間移動させる床を設置してみよう!
まず3Dでプロジェクトを開いてください。
※今回動かすオブジェクトはSphereと重力スクリプトから作成しています。
すぐ出来るので動かすオブジェクトを用意したい方は下記記事を参考にしてください。
www.unityprogram.info
まずHierarchy内にある①の+⇨3D Object⇨Sphereを2つ作成して、
それぞれの名前をSwitchとPointに変更して②のようにします。
2つともInspector内のTransform⇨③Scaleの値を
X⇨1,Y⇨0.1,Z⇨1に変更して薄い円盤状に変更します。
続けて、SphereColliderの④Is Triggerのチェックを入れてColliderが
衝突してしまわないようにします。
それぞれのオブジェクトの配置は自分が好きなように配置してください。
それぞれ色が付いていますが、色をつけたい方は、Project
Asset内の自分が分かりやすい所で右クリック⇨Create⇨Materialを選択して作成してください。
Inspector内のAlbedoにあるカラーを自分の好きな色に変更して
色をつけたいオブジェクトにドラッグ&ドロップすれば色が変わります。
今度は瞬間移動するスクリプトを書いていきます。
Project⇨Asset内で右クリック⇨Create⇨C# Scriptを選択して
名前をMoveに変更して①のスクリプトを作成します。
次のコードをコピー&ペーストするか同じ記述にしてください。
using System.Collections; using System.Collections.Generic; using UnityEngine; public class Move : MonoBehaviour { //GameObject型を変数pointで宣言します。 public GameObject point; //GameObject型を変数charaで宣言します。 public GameObject chara; //コライダーが乗った時の関数 private void OnTriggerEnter(Collider other) { //もしゴールオブジェクトのコライダーに接触した時の処理。 if (other.name == chara.name) { //Charaが接触したらpointオブジェクトの位置に移動するよ! chara.transform.position = point.transform.position; } } }
出来た①のスクリプトをHierarchy内にある②の
Switchにドラッグ&ドロップしてアタッチしてください。
SwitchのInspectorに追加されたスクリプトの設定ですが
Pointの部分にPointオブジェクトをドラッグ&ドロップします。
ここは、瞬間移動先のオブジェクトの指定になります。
次にCharaの部分にSphereをドラッグ&ドロップします。
ここは動かすキャラクターやオブジェクト指定になります。
この指定によってSwitchに触れたオブジェクトが瞬間移動先に移動させる仕組みになっています。
それでは再生してみましょう!
上手く瞬間移動することが出来たでしょうか??
あんまりにも嬉しくなって
ワクワクすっぞ!なーんて
言わないように気をつけましょう。
ご視聴いただきありがとうございました!
今日のゆうきさんのゲーム実況はコチラ!
ホラーなので注意してください。
youtu.be関連記事
※初心者に向けた基本的な内容の記事は下記カテゴリを参考にしてください。
www.unityprogram.info
※オススメのアセットの紹介は下記カテゴリより。便利なアセットがあります。
www.unityprogram.info
※実際に使ってみたオススメの学習本は下記カテゴリから覗いてみてください。
www.unityprogram.info
※Unityでの学習をしていきたい方は下記カテゴリを参照してください。少し込み入った内容になっています。
www.unityprogram.info
※本格的に3Dゲームを作っていきたい方は下記カテゴリより。
www.unityprogram.info