これはばかげた質問のように思えるかもしれませんが、私はそれにこだわっています。リスト ( List<GameObject>
) に GameObjects があり、それらをシーン ランタイムに、できれば事前に定義された場所 (プレースホルダーなど) に追加したいと考えています。それを行う良い方法は何ですか?私はネットを検索してきましたが、これを解決するものは本当に見つかりません。これまでの私のコードは次のとおりです。
public static List<GameObject> imglist = new List<GameObject>();
private Vector3 newposition;
public static GameObject firstGO;
public GameObject frame1;//added line
void Start (){
newposition = transform.position;
firstGO = GameObject.Find ("pic1");
frame1 = GameObject.Find ("Placeholder1");//added line
//this happens when a button is pressed
imglist.Add(firstGO);
foreach(GameObject gos in imglist ){
if(gos != null){
print("List: " + gos.name);
try{
//Vector3 temp = new Vector3 (0f, 0f, -5f);
Vector3 temp = new Vector3( frame1.transform.position.x, frame1.transform.position.y, -1f);//added line
newposition = temp;
gos.transform.position += newposition;
print ("position: " + gos.transform.position);
}catch(System.NullReferenceException e){}
}
}
}
写真 (5) を所定の場所に配置するにはどうすればよいですか?
//----------------
編集: 1 つの画像をプレースホルダー (透明な png) に配置できるようになりました。何らかの理由で z 値が至る所にあるため、強制的に -1f にする必要がありますが、それで問題ありません。他のシーンの画像をリストに追加すると、1 ~ 5 枚の画像が表示されます。プレースホルダーを別のリストまたは配列に入れる必要がありますか? 私はここで少し迷っています。