메쉬에서 변형 된 아핀 변환 문제와 잘못된 텍스처 좌표 보간 문제가 있습니다. 나는 고정 기능 파이프 라인에서 방금 folloing의 glHint을 설정할 수 있다고 생각 :OpenGL에서 원근감있는 텍스처 매핑을 위해 4D 텍스처 좌표가 필요합니까?
glHint(GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST);
그러나이가되지 않는 것 같다 문서를 찾고 있습니다. 그래서이 작업을 수행하는 "단순한"솔루션이 없다고 생각합니다. 모든 텍스처 좌표를 4D 벡터로 지정해야합니까? 또한 2D 텍스처 좌표 만 지정하는 메쉬를로드하려면 수동으로 쿼드를 감지하고이를 수정해야한다는 의미입니까?
아래 이미지는 4 개의 슬라이스로 만든 원환 체에 내 문제를 표시합니다.
또한 Nicol Bolas here에서 제안한대로 내 셰이더에서 보간 한정자를 사용하려고했습니다.
어쨌든 나는 부드럽게 기본 설정입니다 믿습니다. 이것은 내 결과에 영향을 미치지 않았습니다.
원근법 정확한 텍스처 매핑을 수행하는 방법에 대한 질문이 여기에 여러 번 나와 있습니다. 하지만 더 쉬운 해결책이 없는지 묻고 있습니다. 고정 기능 파이프 라인이 GL_QUADS 때문에 왜 이런 일을 할 수 있었는지에 대한 내 개인적인 결론이 있습니다. 그리고 4D 텍스처 코디네이트를 지정하는 것이 핵심 프로파일에서 유일한 해결책이라는 느낌이 들었습니다. 내가 무엇을 glHint(GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST);
에 대해 잘못 알고 있었다
Getting to know the Q texture coordinate...
perspective-correct-texturing-of-trapezoid-in-opengl-es-2-0
correct-glsl-affine-texture-mapping