Unity对象池对象不可见
Unity Object Pool Objects Invisible
下面的代码显示了我所做的。 (Pooled square是我在另一个c#文件中设置的游戏对象)
[SerializeField] private Camera mainCamera;
private List<GameObject> PooledSquares = new List<GameObject>();
private Camera cam;
// Update is called once per frame
void Update()
{
if (Input.GetKeyDown(KeyCode.Mouse0)) {
Vector3 MousePosition = mainCamera.ScreenToWorldPoint(Input.mousePosition);
GameObject pooledSquare = ObjectPool.SharedInstance.GetPooledObject();
if (pooledSquare != null)
{
pooledSquare.SetActive(true);
pooledSquare.transform.position = MousePosition;
}
}
}
没有语法错误或节点错误,所有的物理工作如刚体,对象只是不可见。然后我意识到我没有预制件。所以我做了一个预制件。还是一样的问题。如果您需要更多信息,请联系我。
感谢您的帮助。
var mousePosition = Input.mousePosition;
mousePosition.z = 5f; // world position from the camera.
你应该给一个z位置,否则它是0,这意味着物体被放在相机的位置。
下面的代码显示了我所做的。 (Pooled square是我在另一个c#文件中设置的游戏对象)
[SerializeField] private Camera mainCamera;
private List<GameObject> PooledSquares = new List<GameObject>();
private Camera cam;
// Update is called once per frame
void Update()
{
if (Input.GetKeyDown(KeyCode.Mouse0)) {
Vector3 MousePosition = mainCamera.ScreenToWorldPoint(Input.mousePosition);
GameObject pooledSquare = ObjectPool.SharedInstance.GetPooledObject();
if (pooledSquare != null)
{
pooledSquare.SetActive(true);
pooledSquare.transform.position = MousePosition;
}
}
}
没有语法错误或节点错误,所有的物理工作如刚体,对象只是不可见。然后我意识到我没有预制件。所以我做了一个预制件。还是一样的问题。如果您需要更多信息,请联系我。
感谢您的帮助。
var mousePosition = Input.mousePosition;
mousePosition.z = 5f; // world position from the camera.
你应该给一个z位置,否则它是0,这意味着物体被放在相机的位置。