通过覆盖 PxSimulationFilterCallback 与 PhysX 进行特定对碰撞有什么问题?

问题描述

我们有一个非常专业的游戏引擎,需要一些非常规的东西。 其中之一是执行一对特定的 actor 碰撞切换,而不是像常规推荐的 physx 行为那样进行组碰撞。

为此,我们覆盖了 PxSimulationFilterCallback 并实现了所有 API(pairFoundpairLoststatusChange)。

除了 API 之外,我们还添加一个方法,允许我们的引擎插入输入,关于这些输入,几个参与者可以和不能发生冲突。

每次调用 pairFound 回调时,该类都会返回 physx 引擎是否应该抑制碰撞 PxFilterFlag::eSUPPRESS。这也意味着它也将返回 PxFilterFlag::eNOTIFY,以确保我们将在这个特定对上被调用 pairLost,无论我们是否希望抑制,如果我们的引擎改变状态,我们可以在有效对上使用 statusChange

我们解决了一些问题(由配对数据引起的各种崩溃,即哪个配对有效),但到目前为止,这似乎运行顺利,没有出现任何问题,也没有显着的性能影响。

我的问题是:

  • 这不好吗? physx 含糊其辞地提到它对性能至关重要,但据我所知,它并没有那么有影响力。
  • 如果这很简单,为什么我在传统游戏引擎中看不到它?当然不是认的。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...