我注意到有很多可以光线投射的功能,但它们似乎使用 const NxRay
我遇到的问题是有一辆向下投射光线的车辆作为我的 NxRay。它不是恒定的,因为车辆可以以不同的角度移动,但我希望能够进行光线投射以找出撞击地面或其他物体所需的距离。谢谢。
使用 C++、Glut、PhysX
为什么你不能只做以下事情?
NxRay ray;
// fill in ray structure here
// ray.dir = ...
// call a ray cast
// scene->raycastClosestBounds(ray, ...
// scene->raycastClosestShape(ray, ...
raycast 调用中的 const 值只是向您保证它不会更改这些值。这并不意味着您必须提供 const NxRay。
AC函数带const
参数只意味着函数不修改其值,而不是值本身必须是常数。例如,我可以将非常量传递char *
给 的第一个参数printf()
,即使该参数已声明const char *
。
因此,使用变量 NxRay 作为光线投射函数的参数应该没有问题。