Andrew Kensler's permute() is a stateless, constant-time technique for pseudorandom-order iteration over array elements without replacement, avoiding the need for Fisher-Yates shuffling. While popularized in offline rendering and rooted in cryptographic concepts, it has broad applicability across statistical analysis and casual sampling tasks.
Background
Permuted iteration techniques are commonly used in Monte Carlo rendering to sample pixels or light paths in random order. The method avoids O(n) shuffle overhead while providing deterministic yet visually random access patterns.
- Source
- Lobsters
- Published
- Nov 12, 2026 at 04:08 AM
- Score
- 6.0 / 10