使用鼠标应用脉冲时出现问题
Issue applying impulse with mouse
我目前正在将Bullet SDK集成到我的游戏引擎中。目前,我正在尝试使用鼠标单击对对象施加力。到目前为止,我失败了。下面是单击对象时调用的代码:
void PhysicsComponent::ApplyForce(glm::vec3& hitPoint, glm::vec3& direction, float amount)
{
if (!m_body)
return;
m_body->activate(true);
btVector3 force = btVector3(0, 1, 0) * amount;
m_body->applyImpulse(force, centerOfMass);
}
如果我在我的 update() 函数中使用相同的想法,它可以正常工作。这是为什么呢?
解决了。
问题与子弹无关。我将物理组件作为引用存储在向量中,并将 &(m_physicsComponents.back()) 附加到我的对象。调整大小的矢量 1 个对象的时间会中断。直到现在我才注意到这个问题,因为损坏的物体恰好是我的测试对象所坐的物体。更改了我的矢量以存储指针,一切正常。
相关文章:
- 警告处理为错误这里有什么问题
- 最小硬币更换问题(自上而下方法)
- 为"adjacent"变量赋值时出现问题
- 我的神经网络不起作用 [XOR 问题]
- 在Ubuntu 16.04上安装Cilk时出现问题
- C++我的数学有什么问题,为什么我的代码不能正确循环
- 编译包含字符串的代码时遇到问题
- Project Euler问题4的错误解决方案
- 问题:什么是QAbstractItemView::NoEditTriggers的反面
- 在编译C++代码(具有dlib和opencv)到WASM时面临问题
- 在进程中对同一管道进行读取和写入时C++管道出现问题
- 静态数据成员的问题-修复链接错误会导致编译器错误
- C++ 雷神库 - 使用资源加载器类时出现问题(不命名类型)
- 一个关于在C++中重载布尔运算符的问题
- 首要问题的答案让值班员搞错了
- setlocale的C++土耳其字符串问题
- 如何重构类层次结构以避免菱形问题
- 基于boost的程序的静态链接——zlib问题
- C++格式化输出问题
- 使用鼠标应用脉冲时出现问题