Есть ли способ приведения лучей с помощью библиотеки PhysX без использования const NxRay? - PullRequest
1 голос
/ 06 февраля 2010

Я заметил, что есть много функций, которые могут передавать радиопередачи, но они, кажется, используют const NxRay

У меня проблема с транспортным средством, которое излучает луч вниз как мой NxRay. Оно не является постоянным, потому что транспортное средство может двигаться под разными углами, но я хочу, чтобы луч был способен отбрасывать лучи, чтобы узнать расстояние, необходимое для удара о землю или другие объекты. Спасибо.

Использование C ++, Glut, PhysX

Ответы [ 2 ]

2 голосов
/ 06 февраля 2010

Почему вы не можете просто сделать следующее?

NxRay ray;

// fill in ray structure here
// ray.dir = ...

// call a ray cast
// scene->raycastClosestBounds(ray, ...
// scene->raycastClosestShape(ray, ...

Значение const в вызовах raycast просто гарантирует, что оно не изменит эти значения. Это не значит, что вы должны предоставить const NxRay.

1 голос
/ 06 февраля 2010

Функция C, принимающая параметр const, означает только то, что функция не изменяет свое значение, а не то, что само значение должно быть постоянным. Например, я могу передать неконстантный char * первому параметру printf(), даже если этот параметр объявлен const char *.

Итак, у вас не должно возникнуть проблем с использованием вашей переменной NxRay в качестве аргумента для функций приведения лучей.

...