2014-09-16 9 views
0

나는 두 프로그램 사이를 전환하고있다. 내 위치 데이터를 VBO로로드 한 다음 내 첫 번째 프로그램에 대한 내 정점 특성 배열을 설정합니다. 두 번째 프로그램으로 전환하고 동일한 데이터를 사용하여 내 버텍스 속성 배열을 설정하려고하면 그릴 수 없습니다. 그러나 동일한 코드를 사용하여 두 번째 버퍼를 만들고 두 번째 프로그램에 사용하면 둘 다 정상적으로 작동합니다. 사람들이 필요할 때가 아니라면 두 개의 버퍼가 없기 때문에 프로그램간에 이러한 VBO를 공유하는 규칙을 분명히 할 수 있는지 궁금합니다.OpenGL ES에서 여러 프로그램이 동일한 VBO를 사용하고 속성에 바인딩 할 수 있습니까?

+0

물론입니다. 버텍스 설정은 프로그램이 묶여있는 것과 완전히 직각을 이룹니다. 속성 위치가 프로그램간에 일치하는 한 동일한 VAO를 사용할 수도 있습니다. –

+0

@RetoKoradi - 유일한 차이점이있을 때 왜 다른 버퍼 대신 하나의 버퍼를 사용할 수 있을지에 관해서는 매우 상실감이 있습니다. 내가 다른 방법으로 찾으면 여기에서 테스트하고 게시 할 것입니다. – David

+0

@RetoKoradi -이 상태로 이끄는 복잡한 버그가 발견되었습니다. 동일한 VBO를 사용하는 여러 프로그램을 가질 수 있다는 진술이 정확합니다. – David

답변

0

예, 여러 프로그램을 동일한 VBO에 아무런 문제없이 바인딩 할 수 있습니다. 내 문제는 내 프로그램의 다른 부분으로 일부 정점을 놓치고 두 프로그램의 사용과 관련이없는 별도의 VBO를로드하는 것으로 끝났다.