如何解决如何在 NVIDA Physx 中使用 PxOverlapCallback 进行重叠查询
我正在尝试使用 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 举报,一经查实,本站将立刻删除。