2013-03-05 3 views
0

흰색 배경에 형상을 렌더링하려고합니다. 문제는 기하학 내부에 임의의 흰색 점이 나타납니다. 창 크기를 조정하면 흰색 점이 바뀝니다 ... 창 크기를 조정하는 동안 모양이 무작위로 나타나고 사라집니다.OpenGL 무작위 흰색 점

나는 광범위한 테스트를 수행했으며 점들이 두 개의 삼각형 사이의 가장자리에만 나타남을 발견했습니다. 두 삼각형이 픽셀을 렌더링하지 못하는 것처럼 보이므로 (픽셀이 삼각형 중 하나에 포함되지 않은 것처럼) 흰색 배경이 렌더링됩니다. 그 경계에있는 몇 픽셀 만 흰색 (전부는 아님)이라는 점에 유의해야합니다. 그리고 어떤 종류의 텍스처 필터링 문제가 아니기 때문에 (심지어 셰이더 내부에 직접 설정 한) 단색으로 폴리곤을 렌더링하더라도 문제가 발생합니다.

정말, OpenGL 구현이 인접한 두 삼각형의 경계에서 일부 픽셀을 감지하지 못하는 일종의 히트 테스트 문제인 것 같습니다.

이 예제는 NVIDIA GeForce GTX 675MX가 장착 된 27 인치 iMac에서 실행됩니다. 인텔 통합 그래픽 카드가 장착 된 MacBook에서이 동일한 응용 프로그램을 테스트 할 것입니다.

누군가이 주제에 대해 밝힐 수 있습니까?

+1

인접 삼각형이 정점을 공유하지 않을 경우 정밀도/반올림 오류로 인해 발생할 수 있습니다. 그렇지 않으면 OpenGL 구현이 손상된 경우에만 발생할 수 있습니다. 정점을 공유하고 있습니까, 아니면 분리되어 있습니까? – Damon

+0

@Damon GL_POLYGON_SMOOTH의 남용 인 올바르게 공유 된 verts와 좋은 운전자와 함께조차도 이런 일이 발생할 수있는 적어도 하나의 다른 방법을 생각할 수 있습니다. – JasonD

답변

0

감사합니다. @Damon. 나는 꼭지점들이 정확히 같지 않다는 이슈를 해결했다. 진정한 문제는 (설계 상으로) 두 개의 삼각형 사이의 교차점에 머무르는 데 필요한 일부 꼭지점입니다. 이것은 OpenGL에 문제를 일으켰습니다. 해결책은 정점을 약간 아래로 이동 (삼각형 안쪽)하고 이에 따라 텍스처 좌표를 조정하는 것이 었습니다.

감사합니다.

관련 문제