问题描述
我正在尝试使用 physx 在我的场景中执行重叠查询,但根据文档遇到了问题。我正在关注此处的信息:Scene Queries — NVIDIA PhysX SDK 4.1 Documentation
基于 SDK 指南中的示例,我创建了自己的回调类,继承自 PxOverlapCallback:
struct OverlapCallback : physx::PxOverlapCallback {
OverlapCallback(userData* userData) : physx::PxOverlapCallback(NULL,0) {
mUserData = userData;
}
physx::PxAgain processtouches(const physx::PxOverlapHit* buffer,physx::PxU32 nbHits) {
std::cout << "Number of overlap hits: " << nbHits << std::endl;
return true;
}
void finalizeQuery() {
std::cout << "Finalizing query" << std::endl;
}
userData* mUserData;
};
但是,如果我使用这个回调函数,我会收到来自 physx 的错误:
physx\src\53e20a06fa-b4a222d4bd.clean\physx\source\physx\src\NpSceneQueries.cpp (709):无效参数:PxScene::overlap() 和 PxBatchQuery::overlap() 调用没有 eANY_HIT 标志需要一个触摸命中缓冲区返回结果。
但是使用回调不是我不需要缓冲区的意义吗?重叠查询的默认标志应该是 eNO_HIT,所以我不确定为什么我会收到这个错误。
预先感谢您提供的任何指示或帮助!
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)