제 자신의 맞춤 셰이더를 쓰려면 (THREE.ShaderMaterial
을 사용하고 있습니다), WebGL의 기본 제공 gl_ModelViewMatrixInverseTranspose
(http://mew.cx/glsl_quickref.pdf에서 볼 수있는 것처럼)을 설정해야합니다. 일부 유니폼이 이미 셰이더에 자동으로 전달되었음을 알았습니다. 예를 들어, gl_ModelViewMatrix
및 gl_ProjectionMatrix
은 이미 각각 'modelViewMatrix
및 projectionMatrix
입니다. 반면에 gl_ModelViewProjectionMatrix
은 누락 된 것으로 보이지만 셰이더 내부에서 쉽게 계산할 수있는 몇 가지 예가 projectionMatrix * modelViewMatrix
입니다. 그래서 내 질문은 : modelViewMatrix
에서 시작하는 내 쉐이더 안에 gl_ModelViewMatrixInverseTranspose
을 수동으로 계산해야합니까? (그렇다면 어떻게됩니까?) 또는 이미 unform (을 사용하여 THREE.ShaderMaterial
의 내 정의 안에 병합)을 처리하고 있습니까? 건배.gl_ModelViewMatrixInverseTranspose in threejs
2
A
답변
1
Three.js 셰이더에서 modelViewMatrix의 역전 치를 normalMatrix
이라고합니다.
자동으로 셰이더에 전달되므로 작업을 수행 할 필요가 없습니다. 참조 here를 들어
// = inverse transpose of modelViewMatrix
uniform mat3 normalMatrix;
은 균일 내장 및 속성 Three.js를가 가지고 있습니다.
+0
정확히 말하면, 3x3'normalMatrix'는 4x4'modelViewMatrix'의 상위 3x3 부분 행렬의 역행렬입니다. – WestLangley
관련 문제
- 1. ThreeJS 분자 threejs 작업 이중 결합
- 2. 파노라마보기가있는 ThreeJS
- 3. Threejs 툴팁
- 4. 오브젝트 회전 오브젝트 ThreeJS
- 5. threejs AnimationClip 예가 필요합니다.
- 6. ThreeJs 텍스처가 나타나지 않음
- 7. ThreeJS 및 조향 동작
- 8. 이동 객체 성능 - ThreeJs
- 9. ThreeJs strange shadows
- 10. THREEjs - 글꼴을 typeface.json으로 변환
- 11. ThreeJS : 카메라 업데이트 FOV
- 12. ThreeJS 지오메트리 반전
- 13. ThreeJS texture reversed
- 14. ThreeJS 불일치 조명
- 15. ThreeJS 모양의 치수
- 16. Threejs 카메라 회전 문제
- 17. Threejs 엣지 도우미
- 18. ThreeJS 번역 장면 위치
- 19. 태양을 만드는 ThreeJS
- 20. ThreeJS 메시 위치 지정
- 21. ThreeJS - 잘못된 선회
- 22. ThreeJS 가비지 수집 문제
- 23. threejs 내가 .OBJ 파일을로드
- 24. ThreeJS 텍스처 문제
- 25. ThreeJS 렌더링 중지
- 26. Threejs objmtlloader 검정색 모델
- 27. Threejs 및 충돌 처리
- 28. ThreeJS 그림자 렌더링 안함
- 29. ThreeJS 개체 개요 및 마스킹
- 30. THREEJS : lookingAt 동안 카메라 회전하기
WebGL에는'gl_ModelViewMatrixInverseTranspose' 또는 다른 기본 행렬이 없습니다. 그건 오래되어 사용되지 않는 OpenGL입니다. – gman