2014-04-28 1 views
0

다음 이미지에서 볼 수 있듯이 OpenGL에서 메쉬 및 OpenGL 표시등을 사용하여 멋진 렌더링을했습니다. 나는 손의 단지 기본 골격을 묘사 할 때OpenGL - 조명은 영향을 미치지 않습니다 (유일한) glutSolidCone

enter image description here

그러나, 볼 조인트 좋은 방법으로 묘사되어 있지만, OpenGL을 조명 콘 - 뼈에 영향을하지 않는 것 그 (것)들의 3D 지각을 파괴하는 무언가.

enter image description here

sptheres와 콘 모두 과잉을 사용하여 코드 (해를 입힐 수있는 중간 일)의 같은 지점에 그려져있다.

glutSolidSphere 
glutSolidCone 

glutSolidCone에 대한 정확한 호출 (변수에게 등을 설정 아이폰에를 ingore하시기 바랍니다)입니다 :

glutSolidCone(2.2,boneLength-2*_screenshotWidth_Points,4,100*boneLength); 

이 지금 꽤 많은 시간 동안 대기하고있다, 내가 들여다 약간의 자유 시간이있을 때마다 이,하지만 행운을 지금까지. 어떤 힌트?

+0

glutSolidCone에 정확한 호출을 추가 할 수 있습니까? – Jaxan

+0

요청에 따라 완료되었습니다. –

+0

좋아, 원뿔 모양은 바닥이 정사각형 인 늘어진 피라미드와 같습니다. > 4 조각을 사용하려고 했습니까? – Jaxan

답변

1

문제는 glutSolidCone에서 사용하는 고정 함수 OpenGL에서 조명 계산이 정점에서만 수행 된 다음 결과 색상이 얼굴 전체에 적용된다는 점입니다. 가벼운 폴 오프 또는 반사 하이라이트를 샘플링하기에 충분한 정점이없는 경우 물론 당연한 것입니다.

가장 간단한 해결책은 사용자 제공 유니폼 대신 기본 제공 변수를 사용하는 호환성 프로필 모드에서 조각 별 조명 쉐이더 프로그램을 드롭하는 것입니다.

+0

흠, 논리적으로 들리는 군. 더 많은 스택이 더 많은 버텍스를 도입 할 것이라고 생각했지만, 현재의 문제에는 아무런 영향을 미치지 않습니다. 시간 제약으로 인해 제안 된 솔루션 대신 glutSolidCones를 GLUT 또는 이와 유사한 다른 것으로 대체 할 수 있습니까? –

관련 문제