_Create
S? : Charles VII 개발 일지 #0 : Start and Hex Grid Cube
RIsN
2020. 11. 21. 10:49
[프로젝트명] S? : Charles VII
[장르] 전략
[목적] 스터디 전용 & 취업 포트폴리오
[사용 에셋]
일지 #0
<0> 시작
<1> Hex Grid 제작 : Cube 좌표 사용
<2> Hex Grid를 코드로 제어
<3> 캐릭터 [0][0][0]에 출력
<1> Hex Grid 제작 : Cube 좌표 사용
[Hex Grid란?]
: 사각형이 아닌 육각형으로 이루어진 맵
: 쓰는 이유?
사각형보다 전략적이라는 소문
[Cube 좌표란?]
: 3방향으로 나눠진 좌표
: 참고 : 배달아~ 배달 가는길 알려줘!(단호함) - 우아한형제들 기술 블로그 (woowabros.github.io)
>> x가 (+1) 되면 y가 (-1) 되는 게 조금 독특함
>> 한쪽 방향으로 진행하면 하나가 플러스 하나가 마이너스 되는 구조?
<2> Hex Grid를 코드로 제어
// :: Found All Tiles
var tiles = GameObject.FindObjectsOfType<Transform>().Where(ele => ele.gameObject.name.Contains("Tile"));
foreach (var itm in tiles)
{
// :: Change name
string[] tileString = itm.gameObject.name.Replace('[', ' ').Replace(']', ' ').Replace(" ", " ").Split(' ');
// :: Init x, y, z
int x = Int32.Parse(tileString[1]);
int y = Int32.Parse(tileString[2]);
int z = Int32.Parse(tileString[3]);
// :: Make new Tile Class and Initialise
Battle_Class_Tile tile = new Battle_Class_Tile();
tile.Init(x, y, z);
// :: Add List
listTile.Add(tile);
}
Debug.LogFormat(":: [Battle:Init] All Tiles Found : {0}", listTile.Count);
<3> 캐릭터 [0][0][0]에 출력