Android 在不同设备屏幕边界内动态生成Unity 2d游戏对象

Android 在不同设备屏幕边界内动态生成Unity 2d游戏对象,android,ios,unity3d,screen-resolution,Android,Ios,Unity3d,Screen Resolution,我是unity的新手,我正在开发一个游戏,希望动态创建一个游戏对象。我的问题是如何计算游戏对象的随机位置,使其保留在不同android设备的屏幕中。以下是我尝试过的一些方法,但我的方法正确吗?这会给我在所有android和iOS设备上的正确随机位置吗 //Calculate the screen width and screen height screenheight = Camera.main.orthographicSize * 2.0f; screenwidth = screenheigh

我是unity的新手,我正在开发一个游戏,希望动态创建一个游戏对象。我的问题是如何计算游戏对象的随机位置,使其保留在不同android设备的屏幕中。以下是我尝试过的一些方法,但我的方法正确吗?这会给我在所有android和iOS设备上的正确随机位置吗

//Calculate the screen width and screen height
screenheight = Camera.main.orthographicSize * 2.0f;
screenwidth = screenheight * Screen.width / Screen.height;

//get a random number in width of the screen
float randomX = Random.Range(-screenwidth / 2, screenwidth / 2);

//get a random number in height of the screen
float randomY = Random.Range(-screenheight / 2, screenheight / 2);

现在游戏对象的位置将是(randomX,randomY)。

Unity3D的正确标签是Unity3D。我没有任何android经验,但是为什么你要使用
-screenwidth/2
为什么不只是一个介于0和
Screen.width
之间的随机数?@ILiveForVR,因为对象没有在屏幕空间中实例化。它在世界空间中被实例化。@White Falcon至于正确性,你应该能够告诉我们:)在不同的视口大小上用该代码实例化一千个立方体,然后查看。好像写得对。