Prefab化したものを画面に表示する
PlayerController.csの
public class PlayerController : MonoBehaviour { の下に
public GameObject prefab;
書くと、Player>Inspector>PlayerControllerのところで、どのPrefabを使うか指定できるので
PlayerBulletを選択して
if (Input.GetButton ("Jump")) {}の中に
GameObject bullet = GameObject.Instantiate(prefab) as GameObject;
と書くと、ジャンプボタンを押すと、
どこかに、PlayerBulletが表示される

球を出す機能は、他のところでも使えるように
void Update () {}の下に
//キャラクター読み込み
GameObject LoadBullet(){
GameObject bullet = GameObject.Instantiate(prefab) as GameObject;
return bullet;
}
にして、
if (Input.GetButton ("Jump")) {
GameObject bullet = LoadBullet();
}
する。
さらに、 GameObject LoadBullet(){}の中に
bullet.transform.localPosition=transform.position;
とすると、Playerの場所に置かれるようになる。
さらに応用して
オブジェクトの正面の情報を得て
pForward = transform.TransformDirection(Vector3.forward);
高さを少し変えると
pForward.y = 1;
//キャラクター読み込み
GameObject LoadBullet(){
GameObject bullet = GameObject.Instantiate(prefab) as GameObject;
pForward = transform.TransformDirection(Vector3.forward); //オブジェクトの正面の情報を得る
pForward.y = 1;//高さ設定
bullet.transform.position = transform.position + pForward; //Prefabの座標
return bullet;
}
常にキャラクターの少し前に球が置かれるようになります。
- 関連記事
-
YouTubeで動画を定期的に出しています。ご視聴いただけると嬉しいです。
Reon Labo
- 2016/10/23(日) 18:00:00|
- Unity
-
| トラックバック:0
-
| コメント:0