2014-09-03 4 views
0

저는 LibGDX를 사용하는 하향식 RPG 게임에서 작업 중이며 내 게임용 정사각형 .. 카메라를 만듭니다. 그러나 이렇게하면 타일 텍스처 만 렌더링됩니다.libgdx spritebatch 텍스처가 렌더링되지 않습니다.

카메라 new OrthographicCamera(Gdx.graphics.getWidth(), Gdx.graphics.getHeight());

합니다 (camera. 호출이 world.update 방법에 실제로주의, 난 그냥 생각 나는 여기에 필요한 코드의 양을 최소화하는 것)

로 초기화 :이 렌더링 코드가 모습입니다

업데이트/렌더링 :

:

camera.position.set(getPlayer().getPosition().x, getPlayer().getPosition().y, 0); 
camera.update(); 
batch.setProjectionMatrix(world.getCamera().combined); 
batch.begin(); 
world.render(batch); 
batch.end(); 

세계의 렌더링 방법이 호출 끝 region 카메라없이 TextureRegion

입니다

public void render(SpriteBatch batch, float x, float y, float w, float h) { 
    batch.draw(region, x, y, w, h); 
} 

는, 모든 것이 잘 작동, 그래서 텍스처는 이제 위해 렌더링 이유에 매우 혼란 스러워요 (내 타일 텍스처가 개체 아래 렌더링) 사람이 어떤이 있습니까 왜 이런 생각일까요? 더 많은 코드를보고 싶다면 내 github에도이 코드가 있습니다. CLICK HERE

+0

의 도움이 알아 냈 I batch.beginbatch.end

사이에 사용할 수 없습니다 때문에 ShapeRenderer)를 사용하여 충돌 경계를 어지럽히 된 렌더링 '를 사용하지만 배치의 투영 행렬을'world.getCamera'로 설정합니다. 이것들은 같은 카메라입니까? – Tenfour04

+0

@ Tenfour04 예,'camera.' 호출은'world.update'에서 복사되었습니다. 제가 여기에 갈 필요가있는 코드를 최소화 할 것이라고 생각했습니다. – BossLetsPlays

답변

0

코드를 많이 사용할 수는 없지만 이것을 렌더링 구조의 루트에서 사용하고 있습니까?

Gdx.gl.glClearColor(0, 0, 0, 1); 
    Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT); 
+0

예, 텍스처 당 하나의 스프라이트 배치를 사용하면 괜찮습니다. , 그렇지만 카메라를 사용할 수 있도록 모든 것을 하나로 처리 할 수 ​​있다는 것을 읽었습니다. 따라서 하나의 일괄 처리를 사용하도록 전환했고, 그것이 도움이된다면 어떻게 부러 졌습니까? – BossLetsPlays

1

은 내가 나중에 실현되지했지만, 내가 잘못 찾을 수 있는지 확인하기 위해 라인으로 렌더링 라인의 많은 라인을 주석했다, 그것은 (내 디버깅 도구가 내가 만든 것을 알 수있는 분명히하는 ShapeRenderer 당신은 몇 가지 방법은 '카메라라고 한 this badlogicgames forum post

+0

멋진 팁. 나도 디버깅을 위해'ShapeRenderer'를 사용하고 있었고 왜'Sprite'가 그려지지 않았는지 궁금해했습니다 ... – munyul

관련 문제