, 코드는 다음과 같이 표시됩니다
바인드 프로그램을 glUseProgram
으로, 세트 유니폼을 glUniform4fv
, glUniformMatrix4fv
와 등
바인드 정점 배열 glBindVertexArray
로 .
glActiveTexture
및 glBindTexture
으로 필요한 텍스처를 바인딩하십시오.
다른 상태로 변경하십시오 (예 : glEnable
, glDisable
, glBlendFunc
).
glDrawArrays
또는 glDrawElements
으로 그립니다.
원하는 경우 상태를 기본값으로 다시 설정하십시오.
이들은 모두 바닐라 OpenGL 3 코드에서하는 경향이 있습니다. 이미이 부분을 사용해야합니다.
다른 셰이더 프로그램으로 여러 개체를 작성해야하는 경우 위의 단계를 여러 번 수행하면됩니다. 상태 변경은 여러 프로그램에 대해 동일한 상태를 사용하려는 경우 생략 될 수 있습니다. 예를 들어, 동일한 VAO, 동일한 질감, 동일한 혼합 기능 등을 사용할 수 있습니다.
자세한 예제를 찾고있는 경우 OpenGL 3 그리기 명령이 작동하는 방법에 대한 자습서가 많이 있습니다.
나는 이것을 섬세하게 넣으려고 노력할 것입니다. 당신은 "지금까지는 전체적으로 OpenGL에 매우 익숙합니다."라고 말했지만보다 겸손하게 주제에 접근하는 것이 도움이 될 수 있습니다. 최신 OpenGL은 셰이더 프로그램을 실행하는 기반 위에 구축되며 대부분의 기술은 그 기반 위에 구축됩니다. –
@DietrichEpp 글쎄, 꽤 익숙한 나는 대학에서 여러 프로젝트를했는데 그 중 일부는 꽤 복잡했다. 하지만 문제는 우리가 항상 기본 코드를 작성했거나 최신 OpenGL이 아니었기 때문입니다. 그래서 저는 처음으로이 특정 부분에 직면하고 있으며 이것은 제가이 질문을하는 방법입니다. – nurgan