我需要?jiǎng)?chuàng)建一個(gè)矢量或?qū)ο罅斜恚o(wú)論哪種方式都可以允許我執(zhí)行此操作)。實(shí)例化一個(gè)對(duì)象并將其添加到對(duì)象的向量或列表中。我需要在對(duì)象向量(或?qū)ο罅斜恚┲幸靡粋€(gè)對(duì)象,并引用該對(duì)象的一個(gè)組件來(lái)初始化存儲(chǔ)在游戲管理器中的變量。注意:這不是家庭作業(yè)或與工作相關(guān)的內(nèi)容。這是我正在研究的個(gè)人游戲機(jī)制。我可以完成一兩個(gè)。三是我被困住的地方。我不確定要使用向量還是列表,并且我不知道如何在Unity C#(使用MonoDevelop)(Singleton模式)中引用該向量或列表中的特定對(duì)象。instance = Instantiate (prefab, spawnPoint.position, spawnPoint.rotation); instance.GetComponent<Camera> ().enabled = false; cameraTwo = instance.GetComponent<Camera> (); 需要將cameraTwo變量設(shè)置為矢量或列表中對(duì)象的組成部分。
2 回答

呼喚遠(yuǎn)方
TA貢獻(xiàn)1856條經(jīng)驗(yàn) 獲得超11個(gè)贊
列表中的項(xiàng)目包含需要訪問(wèn)的相機(jī)組件。問(wèn)題是必須指向該特定對(duì)象才能獲取其組件。
您可以使用System.Linq查找具有Camera組件的項(xiàng)目。
using System.Linq;
...
List<GameObject> myList = new List<GameObject>();
public GameObject GetGameObjectWithCameraComponent() {
return myList.FirstOrDefault(item => item.GetComponent<Camera>() != null);
}
public IEnumerable<GameObject> GetAllGameObjectsWithCameraComponent() {
return myList.Where(item => item.GetComponent<Camera>() != null);
}
- 2 回答
- 0 關(guān)注
- 167 瀏覽
添加回答
舉報(bào)
0/150
提交
取消