盒型碰撞器. 更多...
#include <Collider.h>
Public 成员函数 | |
| BoxCollider () | |
| virtual void | BeginPlay () |
| 初始化逻辑. | |
| virtual bool | IsMouseOver () override |
| 判断是否跟鼠标发生了碰撞. | |
| virtual void | Update (float deltaTime) override |
| 实现更新碰撞坐标, 进行容器的更新. | |
| virtual void | DrawDebugLine () |
| 绘制调试线 _debug_模式执行. | |
| Vector2D | GetSize () const |
| 获取大小. | |
| void | SetSize (Vector2D size) |
| 设置大小. | |
Public 成员函数 继承自 Collider | |
| Collider () | |
| 构造函数. | |
| virtual | ~Collider () |
| virtual void | EndPlay () override |
| 处理析构处理不了的. | |
| const std::vector< Object * > & | GetCollisionsByType (CollisionType type) |
| 由种类名获取所有跟这个碰撞体有碰撞的物体容器. | |
| const int | GetLayer () const |
| 获取碰撞层级. | |
| void | SetLayer (int layer) |
| 设置碰撞层级. | |
| CollisionType | GetType () const |
| 获取碰撞物体种类. | |
| void | SetType (CollisionType type) |
| 设置碰撞物体种类. | |
| ColliderShape | GetShape () const |
| 获取碰撞形状. | |
| void | SetCollisionMode (ColliderMode mode) |
| 设置碰撞模式. | |
| ColliderMode | GetCollisionMode () |
| 获取碰撞模式. | |
| virtual void | Deactivate () override |
| 停用碰撞体. | |
| bool | IsCollisionsEmpty () const |
| 是否与任何碰撞体无接触 | |
| void | SetPhysicsMaterial (const PhysicsMaterial &material) |
| 设置物理材质 | |
| Rect | GetRect () const |
| HitResult | CollisionHit (Collider *another) |
Public 成员函数 继承自 SceneComponent | |
| void | AttachTo (SceneComponent *par) |
| 设置所属组件 | |
| void | DetachForm (SceneComponent *par) |
| 解除所属组件. | |
| virtual void | Destruct () |
| 解除场景组件绑定并销毁 | |
| Vector2D | GetLocalPosition () const |
| 获取相对坐标 | |
| float | GetLocalRotation () const |
| 获取相对角度 | |
| Vector2D | GetLocalScale () const |
| 获取相对缩放大小 | |
| Vector2D | GetWorldPosition () const |
| 获取场景组件的世界坐标 | |
| float | GetWorldRotation () const |
| 获取场景组件的世界旋转角度 | |
| Vector2D | GetWorldScale () const |
| 获取场景组件的世界的缩放大小 | |
| void | SetLocalPosition (const Vector2D &pos) |
| 设置相对坐标 | |
| void | SetLocalRotation (float rot) |
| 设置相对角度 | |
| void | SetLocalScale (const Vector2D &scale) |
| 设置相对缩放大小 | |
| void | AddPosition (const Vector2D &pos) |
| 加上一个坐标 | |
| void | AddRotation (float rot) |
| 加上一个角度 | |
Public 成员函数 继承自 Component | |
| void | SetOwner (class Object *owner) |
| 设置绑定对象. | |
| virtual void | Activate () |
| 激活组件 | |
| Object * | GetOwner () const |
| 获取绑定对象指针 | |
Public 成员函数 继承自 base | |
| base () | |
| virtual | ~base () |
| std::string | GetName () const |
| void | SetName (const std::string &name) |
静态 Public 成员函数 | |
| static Vector2D | GetOverlapRect (Rect rect1, Rect rect2) |
| 获取重叠的矩阵大小. | |
静态 Public 成员函数 继承自 Collider | |
| static HitResult | CollisionHitCircleToCircle (Collider *, Collider *) |
| 圆实体类型之间发生物理碰撞 | |
| static HitResult | CollisionHitCircleToBox (Collider *, Collider *) |
| 圆实体和盒型实体之间发生物理碰撞 | |
| static HitResult | CollisionHitBoxToBox (Collider *, Collider *) |
| 盒型和盒型实体之间发生物理碰撞 | |
Private 成员函数 | |
| virtual bool | CollisionJudge (Collider *another) override |
| 碰撞判断(纯虚函数). | |
Private 属性 | |
| Vector2D | size = Vector2D(0, 0) |
| 盒型大小 | |
| Vector2D | size_ini = Vector2D(0, 0) |
额外继承的成员函数 | |
Public 属性 继承自 Collider | |
| CollisionOverlapDelegate | OnComponentBeginOverlap |
| 碰撞体刚接触的委托 | |
| CollisionOverlapDelegate | OnComponentEndOverlap |
| 碰撞体刚从接触到不重叠的委托 | |
| CollisionHitOverlapDelegate | OnComponentHitOverlap |
| 发生实体碰撞的委托 | |
静态 Public 属性 继承自 Collider | |
| static HitResult(* | CollisionHitMap [3])(Collider *, Collider *) |
| 映射关系 圆是0 方是1 进行加法 | |
Protected 成员函数 继承自 Collider | |
Protected 成员函数 继承自 SceneComponent | |
| void | process_Destruct () |
| 销毁组件 | |
Protected 属性 继承自 Collider | |
| PhysicsMaterial | material |
| 物理材质 | |
| ColliderShape | shape = ColliderShape::Circle |
| 碰撞形状 | |
| Rect | rec_pos = {0,0,0,0} |
| 矩形框区域 | |
Protected 属性 继承自 SceneComponent | |
| SceneComponent * | parent = nullptr |
| 父指针 | |
Protected 属性 继承自 Component | |
| class Object * | pOwner = nullptr |
| 处理控制逻辑 有对象物体的指针才能进行控制 | |
| bool | bIsEnabled = true |
| 是否激活 | |
盒型碰撞器.
|
inline |
|
inlinevirtual |
|
overrideprivatevirtual |
|
virtual |
绘制调试线 _debug_模式执行.
实现了 Collider.
获取重叠的矩阵大小.
需传入已经确定发生碰撞的两个碰撞器
| [in] | rect1 | 矩形框1 |
| [in] | rect2 | 矩形框2 |
|
inline |
获取大小.
|
overridevirtual |
|
inline |
设置大小.
| [in] | radius | 设置的大小 |
|
overridevirtual |
实现更新碰撞坐标, 进行容器的更新.
重载 Collider .