Efficient Visibility Approximation for Game AI using Neural Omnidirectional Distance Fields
Zhi Ying, Nicholas Edwards, Mikhail Kutuzov
TL;DR
This work tackles the costly visibility tests in game AI by introducing neural Omnidirectional Distance Fields (ODFs) over partitioned scene regions. By mapping omnidirectional distance data onto a UV plane and encoding directions with a multi-resolution grid, a compact MLP can efficiently reconstruct directional distances to determine visibility without raycasting. The method achieves substantial runtime speedups and predictable inference time across multiple scenes, with offline accuracy around 0.90 and memory efficient representations compared to uncompressed depth maps. The approach enables scalable, CPU-friendly visibility queries suitable for real-time NPC behaviors, while recognizing areas for future enhancement such as dynamic scenes and edge-aware hybrids.
Abstract
Visibility information is critical in game AI applications, but the computational cost of raycasting-based methods poses a challenge for real-time systems. To address this challenge, we propose a novel method that represents a partitioned game scene as neural Omnidirectional Distance Fields (ODFs), allowing scalable and efficient visibility approximation between positions without raycasting. For each position of interest, we map its omnidirectional distance data from the spherical surface onto a UV plane. We then use multi-resolution grids and bilinearly interpolated features to encode directions. This allows us to use a compact multi-layer perceptron (MLP) to reconstruct the high-frequency directional distance data at these positions, ensuring fast inference speed. We demonstrate the effectiveness of our method through offline experiments and in-game evaluation. For in-game evaluation, we conduct a side-by-side comparison with raycasting-based visibility tests in three different scenes. Using a compact MLP (128 neurons and 2 layers), our method achieves an average cold start speedup of 9.35 times and warm start speedup of 4.8 times across these scenes. In addition, unlike the raycasting-based method, whose evaluation time is affected by the characteristics of the scenes, our method's evaluation time remains constant.
