碰撞管理器 更多...
#include <ColliderManager.h>
Public 成员函数 | |
| ColliderManager () | |
| void | Initialize () |
| 初始化映射关系 | |
| bool | ExistMapping (CollisionType type1, CollisionType type2) |
| 关键字之间是否存在映射 | |
| std::unordered_set< int > | FindMapping (CollisionType type1) |
| 查找与关键字有碰撞关系的种类 | |
| void | AddMapping (CollisionType type1, CollisionType type2) |
| 添加碰撞种类的映射. | |
Private 属性 | |
| std::unordered_set< int > | collisionmap |
| 实现相当于哈希映射 节省消耗 | |
碰撞管理器
用哈希映射实现碰撞物体的存储变少和碰撞检测变少 说白了就是进行碰撞体种类名的映射. 存在单向或者双向的关系. 一个正整数可以唯一表示为两个随机整数的平方和
|
inline |
| void ColliderManager::AddMapping | ( | CollisionType | type1, |
| CollisionType | type2 ) |
添加碰撞种类的映射.
| 碰撞种类1 | |
| 碰撞种类2 |
| bool ColliderManager::ExistMapping | ( | CollisionType | type1, |
| CollisionType | type2 ) |
关键字之间是否存在映射
在CollisionType中加入相应的种类
| 碰撞种类1 | |
| 碰撞种类1 |
| std::unordered_set< int > ColliderManager::FindMapping | ( | CollisionType | type1 | ) |
查找与关键字有碰撞关系的种类
| 碰撞种类 |
| void ColliderManager::Initialize | ( | ) |
初始化映射关系
把有映射关系的写在这里.
|
private |
实现相当于哈希映射 节省消耗