Нахождение объекта в поле зрения OpenGL

188
22 июля 2018, 06:10

Надо найти находится ли объект в поле зрения. Для этого можно его вписать в сферу и остаётся только узнать видна ли сфера.

glm::mat4 model;
glm::mat4 view;
glm::mat4 projection;
view=glm::lookAt(pos, look+pos, up);
projection = glm::perspective(45.0f, (GLfloat)WIDTH / (GLfloat)HEIGHT, 0.05f, 1000.0f);

И в шейдере:

gl_Position = projection * view * model * vec4(position, 1.0);

Модель отвечает за сдвижение, растягивание, поворот, и т.д. Если не трогать её - выходит как будто её нет.

Надо определить видна ли сфера(и как можно быстрее сделать это). Проверить точку на попадание вроде можно просто выполнив перемножение заместо шейдера и посмотреть x,y,z влезли ли в экран. Но со сферой то что делать?

READ ALSO
Перехват исключения при делении на 0

Перехват исключения при делении на 0

Пытаюсь отловить исключение через catch/try:

198
MSVS/MSVC function alias

MSVS/MSVC function alias

Попытки повторить аналог поведения __attribute__ ((alias ("realfunc"))) из GCC в MSVS/MSVC успехом не закончилисьЧто не так? и есть ли решения на базе pragma, macro?

191
Отличия в заголовках и их приемущества stdint-gcc.h и cstdint

Отличия в заголовках и их приемущества stdint-gcc.h и cstdint

Хотелось бы узнать в чем разница данных подключений, и в чем особенность каждого из stdint-gcch и cstdint, т

194
Синтаксис cpp (exception ntdll.dll) [дубликат]

Синтаксис cpp (exception ntdll.dll) [дубликат]

На данный вопрос уже ответили:

184