[Project] 야숨 지도. 지도 생성하기 w. Leaflet

2025. 7. 29. 17:32·Project

어떻게 지도를 그려야 할 지 몰라서 objmap.zeldamods.org 사이트의 깃허브를 클론하고 뜯어보면서 방법을 찾아야겠다.

이 사이트는 Leaflet이라는 라이브러리를 사용해서 지도를 보여주고 있다.

나도 Leaflet을 설치해보자.

npm i leaflet react-leaflet
npm i -D @types/leaflet

 

zeldamaps는 lmap이라는 id를 가진 div에 지도를 생성하고 있다.

// AppMap.ts
...
mounted() {
	this.map = new MapBase('lmap');
    ...
}
...

// MapBase.ts
...
constructor(element: string) {
	this.constructMap(element);
    this.initBaseMap();
}

private constructMap(element: string) {}
private initBaseMap() {
	// 지도 타일을 가져와서 보여줌.
}
...

지도 타일 asset을 다운로드해서 public 폴더 안에 /z/x/y 형식의 폴더 안에 넣어야 한다.

z: zoom

x: 열 번호

y: 행 번호

 

asset을 다운로드해서 이런식으로 코딩을 해서 실행을 시키면

const Hyrule = () => {
	return (
    	<MapContainer zoom={3} minZoom={2} maxZoom={7} center={[0, 0]} className="h-dvh">
        	<TileLayer url={`${process.env.NEXT_PUBLIC_HOST}/hyrule/tile/{z}/{x}/{y}.webp`}/>
        </MapContainer>
    )
}

이런 화면이 나온다.

 

이제 모든 asset을 다운로드하면 야생의 숨결 지도가 나온다.

 

Todo

1. 지도를 옆으로 넘기면 새로운 지도가 계속 나타나는 오류 수정

2. 처음 로드 시 내가 원하는 위치에 중앙을 맞춰야 됨. (회생의 사당)

3. 사당의 위치 등 내가 표시할 좌표에 이미지를 넣어야 함.

4. 사용자가 사당, 코로그, 보스 등 보고 싶은 것들만 볼 수 있는 기능을 가진 컴포넌트 제작

'Project' 카테고리의 다른 글

[Project] 야숨 지도. 지도 asset 다운로드하기  (2) 2025.07.29
[Project] 야숨 지도. 파비콘을 추가해보자. w. Next.js  (2) 2025.07.26
'Project' 카테고리의 다른 글
  • [Project] 야숨 지도. 지도 asset 다운로드하기
  • [Project] 야숨 지도. 파비콘을 추가해보자. w. Next.js
rubato.dev
rubato.dev
  • rubato.dev
    rubato.dev
    rubato.dev
  • 전체
    오늘
    어제
    • 분류 전체보기 (35) N
      • BOJ (28)
      • 알고리즘 (4)
      • TIL (0)
      • Project (3) N
  • 인기 글

  • 태그

    stack
    dp
    PYTHON
    Next.js
    DFS
    투 포인터
    스택
    Project
    PriorityQueue
    Zelda
    BOJ
    BFS
    Algorithm
    backtracking
  • 최근 글

  • hELLO· Designed By정상우.v4.10.4
rubato.dev
[Project] 야숨 지도. 지도 생성하기 w. Leaflet
상단으로

티스토리툴바