为了账号安全,请及时绑定邮箱和手机立即绑定

在对象向量中引用对象

在对象向量中引用对象

C#
暮色呼如 2021-05-19 21:26:54
我需要创建一个矢量或对象列表(无论哪种方式都可以允许我执行此操作)。实例化一个对象并将其添加到对象的向量或列表中。我需要在对象向量(或对象列表)中引用一个对象,并引用该对象的一个组件来初始化存储在游戏管理器中的变量。注意:这不是家庭作业或与工作相关的内容。这是我正在研究的个人游戏机制。我可以完成一两个。三是我被困住的地方。我不确定要使用向量还是列表,并且我不知道如何在Unity C#(使用MonoDevelop)(Singleton模式)中引用该向量或列表中的特定对象。instance = Instantiate (prefab, spawnPoint.position, spawnPoint.rotation); instance.GetComponent<Camera> ().enabled = false; cameraTwo = instance.GetComponent<Camera> (); 需要将cameraTwo变量设置为矢量或列表中对象的组成部分。
查看完整描述

2 回答

?
呼唤远方

TA贡献1856条经验 获得超11个赞

列表中的项目包含需要访问的相机组件。问题是必须指向该特定对象才能获取其组件。


您可以使用System.Linq查找具有Camera组件的项目。


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);

}


查看完整回答
反对 回复 2021-05-23
?
小唯快跑啊

TA贡献1863条经验 获得超2个赞

列出[0] .GetComponent(); 问题解决了。谢谢你的回复。


查看完整回答
反对 回复 2021-05-23
  • 2 回答
  • 0 关注
  • 147 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信