Я нашел статью, которая описывает то, что вам нужно - вычисление ограничивающей квадрики. См:
http://web4.cs.ucl.ac.uk/staff/t.weyrich/projects/quadrics/pbg06.pdf
Раздел 3.2, Расчет ограничительной рамки. В документе также упоминается, что это делается на вершинном шейдере, так что это может быть тем, что вам нужно.
Некоторые личные мысли:
Вы можете аппроксимировать ограничивающую рамку, хотя аппроксимируете размер сферы по ее радиусу. Преобразуйте это в пространство экрана, и вы получите немного больше, чем правильная ограничивающая рамка, но это будет не так уж далеко. Это терпит неудачу, когда камера находится слишком близко к точке, или когда сфера слишком велика, конечно. Но в противном случае расчет должен быть достаточно оптимальным, поскольку это будет просто соотношение между двумя одинаковыми прямоугольными треугольниками.
Если вы сможете определить длину аккорда, то соотношение даст точный ответ, но сейчас это немного не так.
альтернативный текст http://xavierho.com/temp/Sphere-Screen-Space.png
Конечно, это всего лишь приблизительное приближение, иногда с ошибкой большой , но это может привести к быстрому и легкому развитию событий.
В противном случае см. Связанную бумагу выше и используйте правильный путь. =] * * Тысяча двадцать-семь