FBO 픽셀 데이터를 얻고 다음을 수행하는 방법이 있습니까? greyscale을 빠르게 수행하고 해당 FBO로 이미지를 다시 가져 옵니까?OpenGL-es 1.1 FBO에서 픽셀 데이터 변경
0
A
답변
1
고정 기능 파이프 라인 (ES 1.1)을 사용하는 경우 glReadPixels
을 사용하면 GPU에서 픽셀 데이터를 가져 와서 직접 처리 할 수 있습니다. 그런 다음 결과에서 텍스처를 만들고 새 텍스처에 매핑 된 쿼드를 렌더링해야합니다. 그러나 이것은 결과를 달성하는 데 상당히 비효율적 인 방법입니다.
쉐이더 (ES 2.0)를 사용하는 경우 GPU에서 직접 수행 할 수 있습니다. 이는 더 빠릅니다. 당신이 그것을 토글 아마도과, 일반 단편 쉐이더에서 그레이 스케일 수학을 추가 할 수
당신의 렌더링이 시작 간단 경우 : 그것은 몇 가지 방법 중 하나를 조각 쉐이더에서 greyscaling을하는 의미 부울 균일 변수.
일반 파이프 라인에서 그레이 스케일을 사용하지 않으려면 오프 스크린 FBO (텍스처)로 정상적으로 렌더링 한 다음 특수한 그레이 스케일 텍스처 셰이더를 사용하여 해당 텍스처의 내용을 화면의 FBO로 렌더링 할 수 있습니다 샘플링 된 텍셀에서 수학을 수행합니다. 당신이 그것을 필요로하는 경우에
는 여기에 그레이 스케일 수학의 : http://www.bobpowell.net/grayscale.htm 본질적으로, 그 공식에 RGB 값을 연결하고 모든 채널의 결과 휘도 값을 사용합니다.
관련 문제
- 1. Opengles 1.1 이미지를 배열로 렌더링
- 2. sRGB FBO에서 텍스처로 렌더링
- 3. Adreno 200 (AMD Z430)에서 OpenGLES 1.1 이상의 OpenGLES 2.0을 사용하면 성능이 향상됩니까?
- 4. FBO에서 화면으로의 OpenGL 렌더링
- 5. 데이터 압축 HTTP 1.1
- 6. Opengles 1.0에서 Opengles 2.0으로 안드로이드 마이그레이션, 텍스처?
- 7. Win32 창의 픽셀 변경
- 8. 픽셀 형식 변경
- 9. PHP는 원시 픽셀 데이터
- 10. 아이폰 OpenGLES
- 11. WPF 이미지, 픽셀 색상 변경
- 12. 티파니 픽셀 종횡비를 스퀘어로 변경
- 13. VB.net 형식의 픽셀 색 변경?
- 14. 안드로이드 - 픽셀 당 알파 변경
- 15. iPhone 데이터 프로그래밍을위한 CFDataRef 및 픽셀 데이터
- 16. 픽셀 기반 세계 데이터 저장하기
- 17. 플래시에서 비디오 픽셀 데이터 분석
- 18. HTML Canvas 픽셀 데이터 형식
- 19. iPhone OpenGLES 앱이 렌더링되지 않습니다.
- 20. JSF 1.1 해당 이벤트
- 21. 안드로이드 OpenGLES 2.0 2D 렌더링
- 22. FluentNHibernate 1.1/Castle 1.1 dependency
- 23. 창에서 픽셀 데이터 \ 픽셀 버퍼를 얻고 RGB를 추출하는 방법은 무엇입니까?
- 24. PC에서 opengles 프로그램 테스트
- 25. Android opengles glBindTexture() 호출
- 26. OpenGLES iOS의 유니티 모델
- 27. 안드로이드에서 OpenGLES 타원
- 28. OpenGLES 텍스처가 사라집니다.
- 29. iPhone OpenGLES 성능 튜닝
- 30. Android OpenGLES 기기 문제
감사하지만 glReadPixels는 매우 느리고 어둡기 때문에 옵션이 아닙니다. :(다른 파이프 라인은 고정 파이프 라인입니까? – lacas
@lacas : 쉐이더가 없다면 실제로 그레이 스케일로 화면을 렌더링하는 것 외에 씬에 대한 자세한 내용을 별도로 묻는 것이 좋습니다. (2 차원? 3 차원 조명 등) 접근 방법에 대한 정통한 답변을 얻을 수 있지만 이론적으로는 모든 색상을 변조하여 회색으로 만 색칠 할 수 있습니다. –