|
|
1
10
Here's 允许您在单位球体上随机生成点的算法。 |
|
|
2
5
下面是我过去使用过的一个Java实现:
|
|
3
4
然后我建议ZCW角,它均匀分布在整个球体上,计算速度很快。 排斥法很好,但速度很慢:它在球体上迭代均匀地分布点。幸运的是,这只需要做一次。 这在结晶学和核磁共振中使用,因为对于粉末模式,使用均匀分布比使用随机分布更快(需要的点数更少)。 Here 是ZCW的Python实现。 有关详情,请参阅以下文件: |
|
|
4
2
在伪代码中:
这是规则的一个特例,该规则表示反转 Jacobian 那些 协调。
另外请注意:这实际上不是最快的方法,而是一种说明一般原理的方法。 |
|
|
5
2
除非只对琐碎的场景进行光线跟踪,否则渲染时间真的会由采样时间控制吗?如果没有,它可能还不值得优化,尽管它值得阅读和理解其他答案中给出的统一采样技术。 此外,您的样本不需要非常随机,就可以很好地估计所采样的函数。您可能希望使用拟随机数序列(如 Halton sequence 无论如何,你真的应该咨询ompf.org上的论坛。那里有一些超级强悍的光线追踪高手。 |