본문으로 건너뛰기

고도 지형 타일이 이상할 때 · 빠진 조합 찾기

Godot 4 지형이 엉뚱한 타일을 놓거나 칸을 비워 두는 원인은 대개 그 이웃 모양에 맞는 타일이 타일셋에 없거나, 타일의 피어링 비트가 잘못 찍혀 있기 때문입니다. 그러면 Godot는 가장 가까운 타일로 대신하거나 칸을 비우고, 칠하는 순서에 따라 결과가 달라지기도 합니다.

타일셋 또는 오토타일 시트(PNG)를 끌어다 놓으세요
빈 Studio 열기
브라우저에서 처리하며 파일은 업로드되지 않습니다.
Studio 타일 작업 공간: Godot 규칙으로 칠한 테스트 맵에서 타일셋에 고립 타일이 없어 한 칸이 비어 있고, 점검 패널이 이를 표시한 화면
CC0 에셋(OpenGameArt)을 연 실제 Studio 화면입니다.
내보내기 대상
  • Godot 4 TileSet검증됨· Godot 4.7.2
  • Tiled검증됨· Tiled 1.12.2
  • Unity 6 Rule Tile검증됨· Unity 6000.5.3f1 + 2D Tilemap Extras 8.0.3
  • LDtk일부 검증· LDtk 1.5.3 schema + loader

이렇게 작동합니다

  • 검사 패널이 지형마다 있는 조합과 필요한 조합을 세고, 빠진 조합은 유령 타일로 그려 무엇을 더 그려야 하는지 보여 줍니다.
  • 같은 비트를 가진 중복 타일은 클릭할 수 있는 목록으로, 열린 변 뒤에 모서리 비트가 찍힌 타일(어떤 맵도 요구하지 않는 조합)은 따로 셉니다.
  • 그림 대 비트 검사는 타일 가장자리 픽셀과 비트를 비교합니다. 코퍼스에서 일부러 바꿔 놓은 타일 두 개를 정확히 찾았고, 잘못 짚은 타일은 없었습니다.
  • 테스트 맵의 Godot 규칙은 set_cells_terrain_connect를 옮긴 것으로 Godot 4.7.2와 칸마다 같았습니다. 빈 칸과 대체된 칸은 테두리로 표시되고, 마우스를 올리면 어떤 타일이 왜 들어갔는지 나옵니다.
  • 빠진 조합이 너무 많으면 생성기가 작은 원본 블록(알만툴 A2, Blobsmith 베이스, A4 벽, 5타일, 절차적 테두리)으로 블롭 47이나 듀얼 그리드 16 세트를 통째로 조립합니다.

사용 방법

  1. 타일 작업 공간에 타일셋 PNG를 넣고 “이 격자 사용”을 누릅니다.
  2. 인식된 레이아웃을 적용하고, 맞는 레이아웃이 없으면 B로 비트를 칠합니다.
  3. 검사 패널에서 표시된 비트를 고친 뒤, 유령 타일로 나온 조합을 그리거나 생성합니다.
  4. M으로 테스트 맵을 열고 Godot 규칙 그대로 칠해 테두리 표시가 사라질 때까지 확인합니다.
  5. Godot 4로 내보내고 nerulio_tileset_import.gd를 실행해 고친 비트로 TileSet을 다시 만듭니다.

Godot 지형 타일 오류: 증상·원인·해결

증상흔한 원인Studio에서 고치기
안쪽 모서리나 갈림길에 가장자리가 틀린 타일그 이웃 모양의 타일이 없어 가장 가까운 타일로 대체검사 패널의 유령 타일을 그리거나 생성기로 세트 재구성
칠한 칸이 비어 있음어떤 타일도 이웃 모양에 맞지 않음테스트 맵(Godot 규칙)이 빈 칸을 표시하고 빠진 조합을 알려 줌
같은 자리에 두 타일이 무작위로 번갈아 나옴비트가 같은 타일이 둘, 확률로 선택됨중복 목록에서 하나만 남기거나, 변형이면 확률 지정
타일이 있는데 한 번도 쓰이지 않음열린 변 뒤에 모서리 비트가 찍혀 있음3×3 비트 편집기에서 그 모서리 비트를 지움
비트는 맞아 보이는데 이음새가 보임비트와 그림이 어긋남(타일 두 개가 뒤바뀜 등)그림 대 비트 검사가 두 타일을 표시, 고치거나 레이아웃 재적용
칠하는 순서에 따라 결과가 바뀜Godot 매칭이 경로에 의존지형마다 한 번씩 행 순서로 칠하기(테스트 맵과 같은 방식)

코퍼스 결과: Godot 4.7.2가 모든 시험 칸을 Studio 예측대로 칠했습니다(블롭 세트마다 485/485, 4지형 듀얼 그리드 팩 251/251).

엔진별 내보내기와 검증 방법

"검증됨"은 실제 CC0 에셋으로 내보낸 파일을 해당 엔진·도구가 직접 불러와 원본과 비교했다는 뜻입니다. 불러오지 않은 형식은 그렇게 표시합니다.

대상파일검증
Godot 4 TileSetPNG · nerulio-tileset.json · nerulio_tileset_import.gd검증됨 Godot 4.7.2포함된 가져오기 스크립트가 지형 피어링 비트가 설정된 TileSet을 만듭니다. set_cells_terrain_connect로 칠한 맵이 9개 코퍼스 시트의 모든 칸에서 Studio 미리보기와 같았습니다.
Tiled.tsx Wang set · sample.tmx검증됨 Tiled 1.12.2Tiled 자체 읽기 기능이 모든 Wang ID를 그대로 읽고 샘플 맵이 픽셀 단위로 동일하게 렌더링됩니다. 지형 브러시 자체는 실행하지 않았습니다.
Unity 6 Rule Tilenerulio-ruletile.json · Editor/NerulioRuleTileImporter.cs검증됨 Unity 6000.5.3f1 + 2D Tilemap Extras 8.0.3블롭·변 타일셋: 칠한 Tilemap의 모든 칸이 예측한 스프라이트와 같습니다. 모서리/듀얼 그리드 타일셋은 Unity로 내보내지 않습니다.
LDtk.ldtk (1.5.3) · rules · sample level일부 검증 LDtk 1.5.3 schema + loaderLDtk JSON 스키마와 공식 로더가 받아들이고 규칙을 다시 실행하면 내보낸 타일과 같습니다. LDtk 앱에서 열어 보지는 않았습니다.

검증 근거

타일 코퍼스에서 픽셀만으로 배치를 인식: 블롭 47 템플릿 4개와 Wang 템플릿 2개는 높은 신뢰도, 실제 64px 동굴 타일셋은 중간 신뢰도로 모든 타일의 비트가 정확. Godot 4.7.2가 모든 테스트 칸을 Studio 예측대로 칠함(블롭 세트마다 485/485, 지형 4개 듀얼 그리드 팩 251/251). Tiled 1.12.2가 모든 Wang ID를 다시 읽음. Unity 6000.5에서 블롭·변 세트의 칠한 모든 칸 일치.

한계

  • Tiled 지형 브러시, LDtk 앱, Godot 편집기의 칠하기는 실행하지 않았습니다. 검증은 엔진의 읽기 기능과 set_cells_terrain_connect로 했습니다.
  • Unity로는 블롭·변 타일셋만 내보냅니다. 지형이 여러 개면 서로 이어지지 않는 Rule Tile 여러 개가 됩니다.
  • 아이소메트릭·육각 타일, 애니메이션 타일, 오클루전·내비게이션 레이어는 지원하지 않습니다.
  • 알려진 배치 없이 비트를 제안하려면 기준이 되는 "가득 찬" 타일이 필요합니다. 변만 있는 길 템플릿은 그 타일을 선택하기 전까지 추측이 틀릴 수 있습니다.

자주 묻는 질문

타일맵에 지형이 아예 안 나와요.

이웃 모양에 맞는 타일이 없으면 Godot는 칸을 비웁니다. 넓은 영역이 비어 있다면 맵이 요구하는 조합 대부분이 빠진 것입니다. 검사 패널의 조합 수와 테스트 맵의 빈 칸 표시로 얼마나 빠졌는지 확인하세요.

이미 만든 TileSet .tres를 열 수 있나요?

아니요. 타일셋 이미지에서 시작합니다. Godot 4로 내보내면 번들의 GDScript가 고친 지형 비트로 Godot 안에서 새 TileSet을 만듭니다. 둘을 비교해 볼 때까지 기존 리소스는 지우지 마세요.

듀얼 그리드(모서리) 세트가 Godot에서 반 칸 어긋나요.

Godot는 모서리 매칭 세트를 격자점이 아니라 칸 위에 그립니다. 듀얼 그리드에는 TileMapDual 같은 플러그인이 필요합니다. Godot 규칙은 Godot가 그리는 대로, Tiled 규칙은 반 칸 어긋난 Tiled 방식으로 보여 줍니다.

Godot 에디터의 지형 브러시로도 확인했나요?

아니요. 브러시가 내부에서 부르는 set_cells_terrain_connect를 Godot 4.7.2에서 실행해 칸마다 비교했고, 브러시 자체는 조작하지 않았습니다.

무료인가요? 계정이 필요한가요?

이 페이지의 기능은 모두 무료이며 계정 없이 쓸 수 있습니다. 워터마크나 막혀 있는 내보내기가 없습니다.

스프라이트가 업로드되나요?

아니요. Studio는 이 브라우저 탭 안에서 디코딩·패킹·내보내기를 합니다. 프로젝트는 브라우저(IndexedDB)에 자동 저장되며 .nerulio 파일로 저장할 수 있습니다.

Aseprite나 엔진 플러그인을 설치해야 하나요?

아니요. .aseprite 파일은 브라우저에서 읽고 씁니다. 엔진별 번들에는 그 엔진에 필요한 것이 들어 있습니다(Godot는 가져오기 설정과 씬, Unity와 Godot 타일셋은 작은 편집기 스크립트).