Перед тем, как внедрить шейдерный куб, я попытался сделать skybox вручную с шестью текстурами вокруг него, но во время вращения я получаю искажение.OpenGL Почему карта куба деформируется во время просмотра?
В GL 3.3 с использованием униформы формы куба, есть ли какая-то добавленная математическая магия за кулисами (которая противодействует искажению), против создания шести плоских лиц и нанесения текстуры на каждую сторону вручную?
Пример
Это skymap с использованием шести отдельных текстур. Вы можете увидеть искажение в кубе угла, как сцена вращается
Ну, это отчасти верно. Главное здесь, что грани куба должны концептуально лежать на бесконечном расстоянии. Тогда движение камеры не имеет значения. Однако с программируемым конвейером все становится намного проще. Все, что нужно сделать в настоящее время, - это рисовать полноэкранный квадрат и использовать вектор направления из положения камеры для каждого фрагмента в виде куб-карт tex-коордов, что точно влияет на выборку карты куба, как если бы она была на бесконечности, как описано [здесь] (http://stackoverflow.com/questions/30015940/why-dont-people-use-tetrahedrons-for-skyboxes/30038392#30038392). – derhass