89 lines
926 B
Markdown
89 lines
926 B
Markdown
|
|
## 数据烘培
|
||
|
|
|
||
|
|
## 体素化
|
||
|
|
|
||
|
|
遍历所有遮挡物,标记体素
|
||
|
|
|
||
|
|
## 空间划分
|
||
|
|
|
||
|
|
### Tile
|
||
|
|
|
||
|
|
大场景划分为小场景
|
||
|
|
|
||
|
|
### Cell
|
||
|
|
|
||
|
|
小场景空间划分为小房间
|
||
|
|
|
||
|
|
### Portal
|
||
|
|
|
||
|
|
定义小房间之间的连接空间 - 门
|
||
|
|
|
||
|
|
## 可见性检测
|
||
|
|
|
||
|
|
通过门递归检测房间可见性
|
||
|
|
|
||
|
|
射线检测判断所有门是否可见
|
||
|
|
|
||
|
|
所有 tile 的所有 cell 之间的可见性检测
|
||
|
|
|
||
|
|
## 模型划分
|
||
|
|
|
||
|
|
- 遮挡物 ==> AABB ==> cellList
|
||
|
|
- 被遮挡物 ==> 所有外附Cell ==> CellList
|
||
|
|
|
||
|
|
## 数据存储
|
||
|
|
|
||
|
|
### Header
|
||
|
|
|
||
|
|
- Voxel Size
|
||
|
|
- Scene AABB
|
||
|
|
|
||
|
|
### Cell Info
|
||
|
|
|
||
|
|
- Cell AABB
|
||
|
|
- ID PVS Offset
|
||
|
|
- ID Model Offset
|
||
|
|
|
||
|
|
### Portal Info
|
||
|
|
|
||
|
|
- Portal AABB
|
||
|
|
|
||
|
|
- ID from_cell
|
||
|
|
- ID to_cell
|
||
|
|
- normal
|
||
|
|
|
||
|
|
### PVS
|
||
|
|
|
||
|
|
- ID Cell
|
||
|
|
- ListID Visible_Cell_List
|
||
|
|
|
||
|
|
### Model
|
||
|
|
|
||
|
|
- ID Model
|
||
|
|
- ListID Visible_Model_List
|
||
|
|
|
||
|
|
## Cell 查询
|
||
|
|
|
||
|
|
### 查找 Cell
|
||
|
|
|
||
|
|
遍历查找
|
||
|
|
|
||
|
|
### 可视Cell
|
||
|
|
|
||
|
|
遍历目标Cell的可视Cell
|
||
|
|
|
||
|
|
### 模型标记
|
||
|
|
|
||
|
|
标记Cell下的所有可视模型
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|