Kiwano Engine  v1.2.x
kiwano::physics::PhysicWorld类 参考

物理世界 更多...

#include <PhysicWorld.h>

类 kiwano::physics::PhysicWorld 继承关系图:
kiwano::physics::PhysicWorld 的协作图:

Public 成员函数

 PhysicWorld (const Vec2 &gravity)
 创建物理世界 更多...
 
void AddBody (PhysicBodyPtr body)
 添加物体
 
void RemoveBody (PhysicBodyPtr body)
 移除物体
 
void RemoveAllBodies ()
 移除所有物体
 
const List< PhysicBodyPtr > & GetAllBodies () const
 获取所有物体
 
void AddJoint (JointPtr joint)
 添加关节
 
void RemoveJoint (JointPtr joint)
 移除关节
 
void RemoveAllJoints ()
 移除所有关节
 
const List< JointPtr > & GetAllJoints () const
 获取所有关节
 
Vec2 GetGravity () const
 获取重力 [N]
 
void SetGravity (Vec2 gravity)
 设置重力 [N]
 
ContactList GetContactList ()
 获取物理接触列表
 
void SetVelocityIterations (int vel_iter)
 设置速度迭代次数, 默认为 6
 
void SetPositionIterations (int pos_iter)
 设置位置迭代次数, 默认为 2
 
void ShowDebugInfo (bool show)
 设置是否绘制调试信息
 
b2World * GetB2World ()
 获取b2World
 
const b2World * GetB2World () const
 获取b2World
 
- Public 成员函数 继承自 kiwano::Component
bool IsEnable () const
 是否启用组件
 
void SetEnabled (bool enabled)
 设置组件启用或禁用
 
ActorGetBoundActor () const
 获取绑定的角色
 
void RemoveFromActor ()
 从角色中移除
 
- Public 成员函数 继承自 kiwano::ObjectBase
 ObjectBase ()
 构造基础对象
 
void SetName (const String &name)
 设置对象名
 
String GetName () const
 获取对象名
 
bool IsName (const String &name) const
 判断对象的名称是否相同 更多...
 
void * GetUserData () const
 获取用户数据
 
void SetUserData (void *data)
 设置用户数据
 
uint64_t GetObjectID () const
 获取对象ID
 
void DoSerialize (Serializer *serializer) const override
 序列化
 
void DoDeserialize (Deserializer *deserializer) override
 反序列化
 
virtual bool IsValid () const
 判断对象是否有效
 
ObjectStatusGetStatus () const
 获取对象状态
 
void SetStatus (const ObjectStatus &status)
 设置对象状态
 
void Fail (const String &msg, int code=ObjectStatus::fail)
 将对象标记为失败状态
 
void ClearStatus ()
 清除对象状态
 
- Public 成员函数 继承自 kiwano::RefObject
void Retain ()
 增加引用计数
 
void Release ()
 减少引用计数
 
uint32_t GetRefCount () const
 获取引用计数
 
- Public 成员函数 继承自 kiwano::Serializable
Vector< uint8_t > Serialize () const
 序列化为字节串
 
void Deserialize (const Vector< uint8_t > &data)
 从字节串反序列化
 

Protected 成员函数

void InitComponent (Actor *actor) override
 初始化组件
 
void OnUpdate (Duration dt) override
 更新组件
 
void OnRender (RenderContext &ctx) override
 渲染组件
 
void DispatchEvent (Event *evt)
 分发物理世界事件
 
void JointRemoved (b2Joint *b2joint)
 关节移除时的回调函数
 
void BeforeSimulation (Actor *parent, const Matrix3x2 &parent_to_world, float parent_rotation)
 更新物理世界前
 
void AfterSimulation (Actor *parent, const Matrix3x2 &parent_to_world, float parent_rotation)
 更新物理世界后
 
- Protected 成员函数 继承自 kiwano::Component
virtual void DestroyComponent ()
 销毁组件
 
virtual void HandleEvent (Event *evt)
 处理角色事件
 

友元

class PhysicBody
 
class Joint
 

额外继承的成员函数

- 静态 Public 成员函数 继承自 kiwano::ObjectBase
static void SetObjectPolicy (const ObjectPolicyFunc &policy)
 设置对象处理策略
 
static bool IsTracingLeaks ()
 是否启用了内存泄漏追踪
 
static void StartTracingLeaks ()
 开始追踪内存泄漏
 
static void StopTracingLeaks ()
 停止追踪内存泄漏
 
static void DumpTracingObjects ()
 打印所有追踪中的对象信息
 
static Vector< ObjectBase * > & GetTracingObjects ()
 获取所有追踪中的对象
 
- 静态 Public 成员函数 继承自 kiwano::RefObject
static void * operator new (size_t size)
 
static void operator delete (void *ptr)
 
static void * operator new (size_t size, std::nothrow_t const &) noexcept
 
static void operator delete (void *ptr, std::nothrow_t const &) noexcept
 
static void * operator new (size_t size, void *ptr) noexcept
 
static void operator delete (void *ptr, void *place) noexcept
 

详细描述

物理世界

构造及析构函数说明

kiwano::physics::PhysicWorld::PhysicWorld ( const Vec2 gravity)

创建物理世界

参数
gravity重力