2012-04-04 6 views
0

OpenGL/GLUT 용 GGLL 용 C++ 또는 GLSL 용 GLMan으로만 작성되었지만 OpenGL 및 GLSL에 능숙합니다. 필자는 안드로이드와 같은 모바일 장치에서 OpenGL을 조사해 왔으며 몇 가지 질문이있었습니다.OpenGL ES 2.0 - Drawing Parallels

첫째, 나는 ES 2.0에서 "전체 파이프 라인"을 프로그래밍해야한다는 것을 알고 있지만, 그게 내가 GLSL에서하고있는 일이라고 생각합니다. 맞습니까? .vert.frag 파일을 만드는 등의 작업을 수행합니까?

두 번째로 this 튜토리얼을보고 있었지만 도움이 될 것 같았지만 나를 매달아 놓은 첫 번째 점은 정점/조각 셰이더 코드였다. 그것을 파일로 지정하는 방법이 있습니까? 그 무시 무시한 문자열 연결 형식으로 셰이더를 작성해야한다고 상상할 수는 없습니다.

다음으로, 이전에 이런 종류의 것을 본 적이 없으므로, 우선/precision mediump float과 같은 것을 찾는 데 가장 좋은 참조는 무엇입니까? 둘째, 앞에서 언급 한 것들 사이에 평행선을 그리는 리소스가 있습니까? 선언, 그리고 내가 익숙한 것, 예를 들어 uniform float xvarying vec3 y?

마지막으로, OpenGL ES 2.0을 배우기에 좋은 책을 제안 할 수 있습니까? 필자는 적어도 병렬 지식이 있어야한다고 생각합니까?

답변

3

Re : 전체 파이프 라인 프로그래밍; 그것은 당신이 쉐이더와 함께 해왔 던 것이지만 반드시 그런 것은 아닙니다. 데스크탑에 쉐이더를 도입했을 때, 그들은 ftransform으로 예시 된 것처럼 역 호환성을 제공합니다. ES 2.0에서는 그렇지 않습니다. 다른 차이점 중에는 매트릭스 스택이없고 사전 정의 된 속성이나 유니폼이 없습니다. 그러므로 데스크톱 GL 2.0보다 파이프 라인을 더 많이 프로그래밍해야합니다. 꼭 그렇지는 않습니다.

Re : 쉐이더를 별도의 파일로 유지. 그건 분명히 문제가되지 않습니다. 파일에서 String을로드하면됩니다. 예전과 같은 자바 메소드가 필요합니다. this one.

Re : 참고 문헌; 절대적으로 가장 좋은 점은 OpenGL ES 2.0 API Quick Reference Card (PDF)입니다. 모든 OpenGL ES 2.0이 단 4 페이지에 불과합니다. 요청한 특정 사항에 대해서는 세 번째 페이지 (GLSL 섹션의 첫 번째 페이지)에있는 정밀도 한정자를 참조하십시오. 평행선 그리기를위한 리소스를 직접 알지는 못하지만 예기치 않은 구문을 찾기 위해 문서를 검색하면됩니다. 정밀 한정자와 같은 특이한 것들은 모두 스스로 조정하여 쉽게 이해할 수있는 작은 조정입니다.

제목 : Re : a book; 나는 아무것도 알지 못한다. 기본 제안은 the blue book 일 것 같습니다.