前提・実現したいこと
Unityで2D横スクロールアクションゲームを制作している初心者です。
リスト化した座標の中から6か所適当にアイテムを生成させようと試みた所エラーが発生しました。
解決の糸口が見いだせずにいます。宜しければ皆様の知恵をお借りしたいです。
発生している問題・エラーメッセージ
error CS1503: Argument 2: cannot convert from 'UnityEngine.Vector3' to 'UnityEngine.Transform' エラーCS1503:引数2:「UnityEngine.Vector3」から「UnityEngine.Transform」に変換できません
該当のソースコード
C#
1using System.Collections; 2using System.Collections.Generic; 3using UnityEngine; 4 5public class PresentGenerator : MonoBehaviour 6{ 7 public GameObject P1; 8 9 List<Vector3> Presentzahyo = new List<Vector3>//生成座標一覧 10 {new Vector3(-18f, 3f, 0),new Vector3(-17f, 0.5f, 0),new Vector3(-15f, -2f, 0),new Vector3(-10f, 1.5f, 0),new Vector3(-7f, 4f, 0),new Vector3(-3f, -1f, 0), 11 new Vector3(2f, 3f, 0),new Vector3(5f, -2.5f, 0f),new Vector3(8f, 3.5f, 0),new Vector3(12f, 2f, 0),new Vector3(14f, -0.5f, 0),new Vector3(19f, 1.5f, 0)};//プレゼントが生成される座標地点の一覧。 12 13 List<Vector3> Mainzahyo = new List<Vector3>(); 14 int random; 15 16 void Start() 17 { 18 for(int i = 0; i < 6; i++) 19 { 20 int random = Random.Range(0, Presentzahyo.Count); 21 Mainzahyo.Add(Presentzahyo[random]); 22 GameObject Present1_1 = Instantiate(P1,Mainzahyo[i]) as GameObject; 23 Presentzahyo.RemoveAt(random); 24 } 25 Presentzahyo = new List<Vector3> 26 {new Vector3(-18f, 3f, 0),new Vector3(-17f, 0.5f, 0),new Vector3(-15f, -2f, 0),new Vector3(-10f, 1.5f, 0),new Vector3(-7f, 4f, 0),new Vector3(-3f, -1f, 0), 27 new Vector3(2f, 3f, 0),new Vector3(5f, -2.5f, 0f),new Vector3(8f, 3.5f, 0),new Vector3(12f, 2f, 0),new Vector3(14f, -0.5f, 0),new Vector3(19f, 1.5f, 0) 28 }; 29 30 }
試したこと
GameObject Present1_1 = Instantiate(P1,Mainzahyo[i]) as GameObject;
を
GameObject Present1_1 = Instantiate(P1,new Vector3 (Mainzahyo[i])) as GameObject;
と書き換えましたが以下のエラーを吐きました
error CS1729: 'Vector3' does not contain a constructor that takes 1 arguments
エラーCS1729: 'Vector3'には1つの引数を取るコンストラクターが含まれていません
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。