jba*_*g10 -3 unity-game-engine
我正在使用3D老虎机。对于卷轴,我试图弄清楚如何计算X,Y,Z位置以及Y旋转以放置诸如樱桃,橘子等对象。总的来说,一共有28件。
我以为计算周长会有所帮助,但我不确定如何。
This is actually really simple and done in a few lines
public GameObject prefab;
public float radius;
public float amount;
// Start is called before the first frame update
private void Start()
{
var angle = 0f;
for (var i = 0; i <= amount; i++)
{
var y = Mathf.Sin(Mathf.Deg2Rad * angle) * radius;
var z = - Mathf.Cos(Mathf.Deg2Rad * angle) * radius;
var obj = Instantiate(prefab, transform);
obj.transform.localPosition = new Vector3(0, y, z);
obj.transform.localRotation = Quaternion.Euler(angle, 0, 0);
angle += (360f / amount);
}
}
// just for demo
private void Update()
{
transform.localRotation = Quaternion.Euler(Time.time * 45, 0, 0);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
53 次 |
| 最近记录: |