2014-04-09 3 views
0

타일 맵에 문제가 있습니다.LibGDX : 타일에서 타일로 타일 맵 렌더링

모든 타일을 한 타일에 타일별로 렌더링해야합니다 (타일에서 타일로).

어떻게 알 수 있습니까?

나는 그것을 시도했지만 아무것도 렌더링하지 않습니다.

private void drawObject(boolean down) 
{ 
    final String objects = "objects"; 
    for (MapObject obj : world.getMap().getLayers().get(objects).getObjects()) 
    { 
     if (!down) 
     { 
      if ((Integer) obj.getProperties().get("y") > world.getPlayer().getBody().getPosition().y) 
      { 
       world.getTiledMapRenderer().renderObject(obj); 
      } 
     } 
    } 
} 

답변

1

개체 레이어를 렌더링하는 것처럼 보입니다. 객체 계층에서 개체를 렌더링하기 위해, 당신은 예를 들어 다른 입력이 필요합니다

for (MapObject mo : map.getLayers().get("Enemies").getObjects()) {  
     Enemy e = new Enemy(new Sprite(new Texture("maps/snailWalk1.png")), (TiledMapTileLayer)map.getLayers().get(0)); 
     e.setPosition(((RectangleMapObject)mo).getRectangle().getX(), ((RectangleMapObject)mo).getRectangle().getY()); 
     enemies.add(e); 
    } 

그리고 당신의 렌더링 방법에

는 다음과 같이 수행

renderer.render(); 

renderer.getSpriteBatch().begin(); 
    for (Enemy e : enemies) { 
     e.draw(renderer.getSpriteBatch()); 
    } 

이 렌더러에 관해서는 당신이 OrthonogalTiledMapRenderer 또는 사용 IsometricTiledMapRenderer 오브젝트 당신은 클래스 객체로 선언해야

당신이 렌더링하고 싶은 경우
OrthogonalTiledMapRenderer renderer = new OrthogonalTiledMapRenderer(map); 

A, 난 당신이 다른 접근을하고, 객체 계층으로이 층을 만들려고한다고 말할 것입니다 타일로 타일 층 , 그런 다음 이들 중에서 프로그램 적으로 오브젝트를 작성하십시오.

+0

아, 코드로 텍스처링하지 않고도 할 수 있습니까? – Romanzi

+0

아니요 - 코드에 텍스처가 필요한 객체 레이어가있는 AFAIK – Ulbo

관련 문제