2013-07-19 3 views
1

그래서 기본적으로 이것은 내 문제입니다. 각 개체에 텍스처가 필요한 게임을 만들고 있습니다. 이제 스프라이트 시트를 사용 하겠지만 텍스처 크기가 다릅니다. VBOs를 사용하고 있는데 drawElements를 호출 할 때 올바른 텍스처를 바인딩하는 방법이 필요합니다. 지금은 각 클래스를 자체 VBO로 분리하고 싶지 않기 때문에 무엇을해야할지 모르겠다. 그렇게하면 레벨 당 100+ VBO처럼 효율적으로 만들 수 있기 때문이다 (또는 아마도 그렇 겠지). 참고 이것은 2D 게임이지만 여전히 효율적으로 만들고 싶습니다.LWJGL - VBO를 사용하면 텍스처에 대해 어떻게해야합니까?

아마도 셰이더로 할 수있는 것이 있습니까? 나는 셰이더를 사용 중입니다 ...

그래서 내 질문입니다 : 어떻게해야합니까?

것들 내가 해낸 : 다른 VBOs에

  • 별도의 클래스 (간단하지만 매우 효율적인 경우 확실하지 않다)
  • 사용 스프라이트 시트하지만 정말 정말 큰 cellsize이 그냥 투명 한 배경 가진 큰 쿼드를 그립니다. (어리석은 아이디어처럼 보입니다 : P)

그게 .. 그래서 당신이 아이디어를 가지고 있기를 바랍니다!

편집 : 나는 몇 가지 읽어이 나는 ​​경우 싶지만 사실이라면 그 수는, 사용하는 텍스처의 속성을 가지고 ... 요소로에 통과 한 후 조각 쉐이더를 사용하는 좀 더 자세히 설명하고 예제를 추가 할 수 있습니다. (셰이더를 작성하는 방법을 알지 못하기 때문에 프래그먼트 셰이더를 사용자 정의해야하는 경우도 있습니다.)

+0

멀티 텍스처링에 대한 LWJGL Wiki의 튜토리얼을 읽었지만 이전 튜토리얼과 .glsl을 사용할 때 .vert shaders를 사용합니다. – Gopgop

+0

나는 그것을 되 돌린다, 나는 튜토리얼에서 잘못된 생각을 가지고있다. 나는 그것을 찾고 있었지만 실제로는 두 텍스처를 혼합하고 있다고 생각했다. XD – Gopgop

+0

아니면 블렌딩하지 않았을까? 나는 더 이상 누군가를 도울 수 있기를 바랍니다. – Gopgop

답변

0

다른 VBO로 클래스를 분리하면 해결됩니다. ..