제 엔진에서는 버텍스/픽셀 쉐이더 파일 쌍에서 Cg 쉐이더를로드합니다. 셰이더를 쌓아서 (조명 + 재질 등) 결합 할 수 있기를 바랍니다. 셰이더를 분리 된 함수로 분해 한 다음 그 중 하나의 셰이더 스크립트 문자열을 생성하는 것보다는 Cg에서 다른 셰이더를 쌓는 좋은 방법을 알고 있습니까?Cg 쉐이더 쌓기
1
A
답변
2
DirectX 11의 동적 쉐이더 링키지 기능과 비슷한 점이 약간 들리십니까? Cg의 인터페이스 기능을 사용하면 비슷한 것을 구현할 수 있습니다. 조명을 계산하는 방식을 변경하거나 재질 유형을 변경하는 것과 같은 작업을 쉽고 깔끔하게 할 수 있도록 쉐이더를 재구성 할 수 있습니다.
예를 들어, 셰이더를 작성하려고하지만 조명 계산 방법을 변경할 수 있어야한다고 가정 해보십시오. 어떻게 든 빛을 계산할 함수가있는 Light 인터페이스를 정의 할 수 있습니다. LightInterface는 CoolLight 및 UberLight와 같이 구현합니다. 런타임에 다른 매개 변수를 지정하는 것과 거의 같은 방법으로 Light 인터페이스의 구현을 사용해야하는지 지정할 수 있습니다.
이것이 원하는 것인지 확인하려면 Cg 사용자 설명서 (http://developer.download.nvidia.com/cg/Cg_2.2/CgUsersManual.pdf)를 찾아 보시기 바랍니다. "공유 매개 변수 및 인터페이스"를 검색하면 작은 예제가 있습니다.
관련 문제
- 1. C++에서 cg 쉐이더 내장하기 GPGPU 라이브러리
- 2. UILocalNotifications를 쌓기
- 3. 두 개의 ImageButtons 쌓기
- 4. OpenGL-ES and Cg
- 5. 보기에 썸네일 쌓기
- 6. CG 3.0이 유출 되었습니까?
- 7. CSS에서 겹침과 쌓기
- 8. Gtk의 위젯 쌓기 +
- 9. Cg 쉐이더에서 struct 파라미터를 가져 오는 것
- 10. 두더지 쉐이더
- 11. 스레드 안전 (CG) 버전의 UIGraphicsGetImageFromCurrentImageContext?
- 12. 시간표가있는 플롯 차트에 막대를 쌓기
- 13. JPanels를 다른 것 위에 쌓기
- 14. 여러 CSS에 큰 로고 쌓기
- 15. BProlog에서 CG 그래픽을 실행 하시겠습니까?
- 16. 쉐이더 언어의 역 FFT?
- 17. 픽셀 쉐이더 효과 예제
- 18. 버텍스 쉐이더와 프래그먼트 쉐이더
- 19. DirectX 사후 처리 쉐이더
- 20. xna 쉐이더 문제
- 21. iPhone 쉐이더 프로파일 링
- 22. GPGPU 대신 쉐이더
- 23. GLSL 쉐이더 로더 문제
- 24. 텍스처가있는 툰 쉐이더
- 25. DX10 스카이 박스 쉐이더
- 26. OpenGL 쉐이더 가우시안 필터
- 27. 쉐이더 곱셈 행렬
- 28. OpenGL VBO 쉐이더
- 29. 쉐이더 디버깅을위한 무료 소프트웨어
- 30. D3DX 쉐이더 생성