inflearn logo
강의

講義

知識共有

イ・ドウの必ず学ばなければならないゲームアルゴリズム

4強クワッドツリーの概要と動作原理

쿼드트리 옥트리가 활용되는 예시에 대하여 더 여쭤보고싶습니다.

解決済みの質問

213

jaba852350683

投稿した質問数 26

0

3D던전 로그라이크 게임을 개발중인 초보 개발자입니다.

PCG알고리즘에 부족한 점이 있는 것 같아 수강 하였습니다.

 

활용된 예시로는 2D플랫포머, 탄막게임에서의 최적화 부분과 3D게임에서 LOD로 부분 렌더링하는것 까지는 이해하였는데 활용된 다른 예시들이 궁금합니다.

unity 알고리즘

回答 1

0

ideugu

공간 분할 알고리즘은 대상(범, 범위)에 따라, 자료 구조에 따라 다양한 구현 방법이 존재합니다.
질문 주신 것처럼 이를 사용하는 분야가 딱 정해져있다고 보긴 어렵습니다. 사실 이 알고리즘은 게임 뿐만 아니라 다른 곳에서도 사용되기 때문이죠. 강의에서 설명하는 공간 분할 알고리즘은 다양한 구현 방법 중 하나의 예시일 뿐입니다.

강의에서 설명하는 쿼드트리나 옥트리는 과거 게임 엔진을 직접 제작할 때 씬을 분석하고 처리하는데 사용되어 왔습니다. 지금은 많은 사람들이 상용엔진 기반으로 게임을 제작하기에 전통적인 활용방식을 사용할 일은 없다고 봐야겠지요. 기본적인 기능은 이미 엔진이 다 알아서 처리해주고 있기 때문이죠.

그래서 게임 콘텐츠를 만들 때 이 알고리즘을 꼭 쓴다고 이야기하기는 애매한 부분이 있습니다.

다만 게임 기획에 따라 구현할 때 공간분할이 필요한 경우가 종종 발생합니다.
O(N)으로 해결이 안될 것 같은 문제를 O(Log)로 해결할 일이 발생할 때 예제를 응용해 해결해보면 좋을 것 같습니다.

1

jaba852350683

예를 들면 A*알고리즘은 유니티의 navMesh로 간편화처럼 엔진의 이해와 응용을 위한다고 생각 할 수 있고 KD,BSP트리는 제가 구현중이던 PCGmap생성기에서의 알고리즘에서 방을 연결하는 통로를 만들 때 조금 더 최적화 시킬 수 있는 그런거라고 생각하면 될까요

0

ideugu

네 그렇게 이해해주시면 됩니다. 다만 방을 연결하는 방법에 대해서는 본 강의에서 설명하지 않는 다른 알고리즘들도 있으니, 여러가지 자료를 참고해주시면 될 것 같아요.

싱글턴패턴

0

3

1

수강평 이벤트

0

16

2

코드 관련 질문

0

21

2

섹션7 수업자료 업로드 부탁드립니다.

0

22

2

part8 Notion 링크

0

22

1

Dictionary Key를 int에서 string으로 변경한 이유에 대한 문의

0

19

1

잠겨버린 사물함 시간초과 관련 질문입니다.

0

25

1

UI 기능 관련 질문이 있습니다!

0

37

2

03-01 (16. CharacterController)

0

31

2

TLS 질문드립니다.

0

43

2

Task 구현 28:36 Equals 에서 잘 모르는 부분이 있습니다.

0

27

2

SpinLock과 컨텍스트스위칭에 대해 질문 남겨요.

0

46

2

코딩테스트 처음인데 이런 공부방법이어도 괜찮을까요

0

57

2

강의에서 나온 알고리즘 외에 추천 하시는 알고리즘이 있을까요?

0

69

2

쿼드트리 구현 강의자료에 포함된 LQNode의 GetQuads함수에 궁금한 점이 있습니다.

0

468

2

A* 알고리즘에 대해 질문있습니다!

0

351

1

움직이는 물체에 대한 쿼드, KD트리 효율 질문

0

488

1

BSP트리를 활용한 렌더링 순서 관련 질문

0

409

1

쿼드트리 삽입 프로그램 실행 예시 질문

0

329

1

알고리즘 확인(?) 질문

0

439

2

우선순위큐로 구현시

0

354

1

19:35 리스트와 이진힙의 구조비교

0

230

1

depth 구할 때 floor로 처리하면 -1이 사라지는 과정이 잘 모르겠어요.

-1

391

1

GetQuads가 out of area를 체크 할 수 있는건가요??

0

328

1