2013-08-23 1 views
1

포장 사용하려면, 그들은 거기에 더 이상 첫 번째지도의 포장을 사용하는 데 필요한되는 tilemap를로드, 그러나 규칙 변경 libgdx 새로운에서TmxMapLoader 이전 libgdx지도 API의 타일 세트

map = TiledLoader.createMap(Gdx.files.internal("maps/testmap.tmx")); 
atlas = new TileAtlas(map, Gdx.files.internal("maps")); 
tileMapRenderer = new TileMapRenderer(map, atlas, 8, 8); 

을하는 데 사용됩니다. tileset png와 함께 .tmx 파일을 직접 사용할 수 있습니다. 다음과 같은 것이 작동하고 render를 호출합니다.

TiledMap map = new TmxMapLoader().load("maps/testmap.tmx"); 

내 질문이 크기는 두 가지의 힘없는의는 .tmx 파일을 생성하는 데 사용되는 원래 tileselt.png입니다. 그래서 텍스쳐 패커 나 맵 패커를 사용해야합니다.

압축 된 파일을 .tmx와 연결할 수 없습니다.

어쨌든이 문제에 접근하고 있습니까?

감사합니다.

답변

1

그들은 2의 제곱이어야 할 필요는 없습니다. 문제가 생기면 MainClass 안에 Texture.setEnforcePotImages(false);이라는 두 가지 오류가 발생합니다.

패커가 더 이상 필요하지 않으므로 패커를 tmx 파일에 연결할 수 없습니다.

TmxMapLoader을 사용하는 경우 타일셋은 .tmx 파일의 같은 폴더 안에 있어야합니다. 다른 디렉토리에있는 경우 .tmx 파일의 소스 경로를 구성해야합니다. 여기 예가 있습니다 :

<tileset firstgid="257" name="mountain" tilewidth="32" tileheight="32"> 
    <image source="mountain.png" width="512" height="512"/> 
</tileset> 

은 Tiled의 정규 출력입니다. 타일셋은 예를 config (설정)에 대한의 내부에있는 경우는 다음과 같이 변경해야합니다

<tileset firstgid="257" name="mountain" tilewidth="32" tileheight="32"> 
    <image source="config/mountain.png" width="512" height="512"/> 
</tileset> 

그러나 여전히 TMX 파일이 경로의 하위 폴더에 있어야합니다.

감사합니다. 도움이 될만한 희망입니다.

+0

감사합니다. 이미지 크기의 2가 아닌 그래픽 성능에 영향을 줍니까? –

+0

내가 아는 것은 아니지만 나는 그 물건 뒤에 무엇이 있는지 정말 모릅니다. – BennX

4

GLES 1.0을 대상으로하는 경우 2 개의 파워 타일이 필요할 것입니다. 일부 장치는 GLES 1.0을 사용하여 2의 비표준 (non-power-of-two)을 허용 할 수 있지만 이는 보장되지 않습니다. GLES 2.0을 사용하면이 제한이 해제되지만 여전히 2의 거듭 제곱에서 더 나은 성능을 얻을 수 있습니다.

여전히 TiledMapPacker가 생성 한지도를 사용할 수 있습니다. AtlasTmxMapLoader 대신 TmxMapLoader 대신지도를로드하면됩니다.

+0

감사합니다. 나는 문서를보고 있었다. AtlasTmxMapLoader.loadMap은 tmx를 팩 파일과 연결할 수있는 유일한 기능입니다. 이것이 제가 사용해야하는 것입니까? [XmlReader.Element root], [com.badlogic.gdx.maps.tiled.AtlasTmxMapLoader.AtlasResolver resolver] 및 [AtlasTmxMapLoader.AtlasTiledMapLoaderParameters 매개 변수]에 대해 무엇을 전달해야합니까? 정말 고맙습니다! –

+0

지도에'atlas' 속성이있는 경우 (TiledMapPacker의 경우처럼)'load' 메소드를 호출하여 tmx 파일의 경로를 전달할 수 있습니다. –

+0

altas 속성은 tmx 파일의 어딘가에서 정의되어야 함을 의미합니까? TiledMapPacker는 표준 [tileset.png + tileset packfile]입니다. 아틀라스 속성은 어디에서 정의 할 수 있습니까? –