Professional Documents
Culture Documents
Automatic Map Generation Without An Isolated Cave Using Cell Automata Enhanced by Binary Space Partitioning
Automatic Map Generation Without An Isolated Cave Using Cell Automata Enhanced by Binary Space Partitioning
http://dx.doi.org/10.7583/JKGS.2016.16.6.59
게임 프로그래밍
요 약
ABSTRACT
Many researchers have paid attention to contents generation within the area of game
artificial intelligence these days with various reasons. Efforts on automatic contents
generation without game level designers' help were continuously progressed in various
game contents. This study suggests an automatic map generation without an isolated
cave using cellular automation enhanced by binary space partitioning(BSP). In other
words, BSP makes it possible to specify the number of desired area and cellular
automation reduces the time to search a path. Based upon our preliminary simulation
results, we show the usefulness of our automatic map generation by applying the
contents generation using cell automation, which is enhanced by BSP to games.
Keywords : Artificial Intelligence (인공지능), Binary Space Partitioning (이진 공간 분할),
Cellular Automaton (셀 오토마타), Procedural Map Generation (절차적 맵 생성)
Received: Sep. 2. 2016 Revised: Oct. 10. 2016 Ⓒ The Korea Game Society. All rights reserved. This is an
Accepted: Dec. 9, 2016 open-access article distributed under the terms of the Creative
Corresponding Author: Seokmin Hong(Hallym University) Commons Attribution Non-Commercial License
E-mail: seokminhong@hallym.ac.kr (http://creativecommons.otg/licenses/by-nc/3.0), which permits
unrestricted non-commercial use, distribution, and reproduction in
ISSN: 1598-4540 / eISSN: 2287-8211 any medium, provided the original work is properly cited.
충분히 다양한 형태의 새로운 콘텐츠를 생성해 낼 셀의 상태가 정해진다. 일반적으로 규칙은 각 셀에
수 있다면, 진정한 의미의 끝이 없는 게임이 가능 대해 동일하고 시간에 따라 변하지 않으며 각 세
해 질 것이다 [10,11]. 대의 모든 셀에 동시에 적용되는데, 가장 일반적인
두 가지 유형은 무어 이웃과 폰 노이만의 이웃이
2.2 이진 공간 분할 다[Fig. 1].
w: 벽 지형의 비율
n: 셀 오토마타 알고리즘의 반복회수
θ: 셀의 상태를 정의하는 이웃 임계값
r: 이진 공간 분할의 나누어진 공간의 수
3.1 지역 생성
3.4 통로 연결
[조건 1] 이동 가능 타일 < 이동 불가 타일
= 이동 불가 타일 단말 노드의 부모를 이용하여 왼쪽 자식과 오른
[조건 2] 이동 가능 타일 == 이동 불가 타일 쪽 자식의 통로를 연결한다. 왼쪽 자식과 오른쪽
= 현재 타일 유지 자식의 이동 가능 타일을 조사한다. 이동 가능 타
[조건 3] 이동 가능 타일 > 이동 불가 타일 일 중에서 경계에 있는 타일 추출한다. 왼쪽 자식
= 이동 가능 타일 과 오른쪽 자식의 경계선 타일을 탐색하여 두 타
일 사이의 거리가 가장 가까운 타일을 연결한다.
[Fig. 5]는 랜덤 타일 생성 방식으로 생성된 맵 아래 계층부터 루트 노드에 도착할 때까지 반복하
에 대해 셀 오토마타를 이용하여 동굴을 생성하였 여 모든 지역의 통로를 연결한다. [Fig. 6]은 자동
다. [Fig. 4]와 달리 지역을 눈으로 확인할 수 있게 으로 생성된 연결 통로를 보여주고 있다.
되어 게임에 적용할 수 있는 수준의 맵이 생성되
었다.
생성된 2차원 공간의 크기와 분할된 지역의 수
에 따라서 셀 오토마타의 반복 회수를 적절하게
조절하여 자연스러운 동굴을 생성해야 한다.
4. 결 과
(a) w = 0.2, n = 5, r = 5
(b) w = 0.2, n = 5, r = 4
(c) w = 0.2, n = 5, r = 5
[Fig. 9] Another Game Examples Implemented by Unity3D
관심분야 : 게임프로그래밍
오 평 (Oh, Pyeng)
관심분야 : 게임프로그래밍