我怎样才能编写逼真的随机骰子?

时间:2017-12-11 05:48:36

标签: ios random game-physics arkit dice

我喜欢做骰子游戏,但我对骰子的随机性有一些疑问。 如果可能,id喜欢使用与现实世界相同的随机性。 该应用程序将用于ios,我将使用苹果的一些ar套件快速编码。 我想知道为滚动制作算法是否更好,或者我是否应该让用户在游戏中摇动/滚动3D骰子(依赖于滚动的物理定律)。 哪些会复制现实世界的随机性?

Thakns!

1 个答案:

答案 0 :(得分:3)

A"真实世界的随机性"投掷骰子只是意味着没有足够的信息来预测结果"。很难包括你的投掷精度,空气流动的影响,然后更多的是你的骰子和材料的杂质反弹。

同样的事情可能不会发生在计算机程序中。无论物理学如何,对于具有相同输入数据的2种情况,您将获得相同的输出。所以你需要在某个时候随机或者你需要用户互动。

对于用户交互,您可能会再次遇到问题,因为您可能没有足够的输入数据来生成随机事件。例如,该事件由用户在屏幕上进行滑动手势播种。现在,此特定用户正在进行训练,以便在执行手势时始终进行100px的拖动。他并没有完美的成功,但他仍然可以将你的事件播种得如此之近,以至于他有3/6的机会投出他的价值而不是1/6。

最后,即使用户交互足够随机,您也可能会错误地创建环境以使其平衡,并且可能会更频繁地发生某些结果。

但即使一切都很完美,你设法创造一个完美的随机,你的用户可能会对它不满意。在完全随机的情况下,可能会发生诸如连续20次抛出相同值的事情。或者它可能会发生你不会连续20次抛出你需要的值。身体上投掷骰子甚至不会成为一个问题,但我保证,如果有人在应用程序中看到它,他会声称它是错误的,平衡的......

随机通常是个大问题。让机会通常太重要了。大多数人只想要一系列分布良好的值,他们无法从中找到预测下一个值的算法。

所以没有人会复制现实世界的随机性。您需要根据用户的需求进行选择。