Проверьте, чтобы выровненная по оси ограничительная рамка находилась в усеченном виде - PullRequest
0 голосов
/ 07 сентября 2018

Допустим, что мой Frustum состоит из 6 плоскостей, и каждая из этих плоскостей имеет следующие переменные:

Vector3f tl;    // top left
Vector3f tr;    // top right
Vector3f bl;    // bottom left
Vector3f br;    // bottom right
Vector3f n;     // normal

Теперь у меня есть ограничивающий прямоугольник для каждой сущности на моей сцене. И я хочу проверить, находится ли ограничительная рамка внутри усеченного вида. Как бы я это сделал? Я не понимаю математику за этим.

1 Ответ

0 голосов
/ 07 сентября 2018

Ваши объекты - выпуклые многогранники, поэтому вы можете использовать теорему о разделении осей ( wiki , article ).

Для осей AABB довольно просто ( произвольно найденный пример показывает использование осей OX, OY, OZ)

...