PVS 可见性剔除示意图

+-----------------------------------------+
|                 World                   |
|                                         |
|  [Sector 1]  [Sector 2]  [Sector 3]    |
|     *           *          *            |
|     *           *          *            |
|  [Sector 4]  [Sector 5]  [Sector 6]    |
|                                         |
+-----------------------------------------+

摄像机 Camera 位于 Sector 5
                |
                v

PVS Query:
- 查询摄像机所在 Sector 的 Potentially Visible Set
- 可能可见的 Sector = {Sector 2, Sector 5, Sector 6}

渲染流程:
1. 遍历 World 的所有 Atomic
2. 对每个 Atomic:
   if RpPVSAtomicVisible(atomic) == TRUE:
       渲染
   else:
       剔除(不渲染)
       
World:整个场景

Sector:场景划分单元(房间、区域)

Camera:摄像机当前所在位置

PVS Query:查询摄像机所在 Sector 的潜在可见集

Atomic:场景中具体的可渲染对象

RpPVSAtomicVisible:判断该物体是否可见,如果不可见则剔除

posted on 2025-10-08 01:25  lydstory  阅读(15)  评论(0)    收藏  举报

导航