2019년 2월 8일 금요일

[20190208] Reclamation

설이 지났습니다.
연휴가 아주 제대로 날이 잡혀서 백수인 것이 무척 아쉬웠답니다.

백수 신세 면하면 또 다른 생각이 들겠죠?
( '_')y-~



작업 이야기를 해볼까요.

이 일지는 2019년 1월 31일, 2월 2, 3, 4, 5, 6, 7 일에 있었던 작업을 대상으로 합니다.
무려 7일!

지난 일지에서 쉰다 어쩐다 했지만 결국 쉬지 않았습니다.
1월 30일에 "내일 쉬겠다" 고 이야기 했는데 쉰 날은 2월 1일 하루 입니다. o_o
주체할 수 없는 작업에 대한 조급함이 어리석은 선택으로 이어졌습니다.

작업 내역은...
  1. Map Theme 정보 분리
  2. Map Build Process 개선
  3. Map Reclamation 기능 추가
  4. Map Theme 적용 개선
...입니다.


모든게 코드 작업이라서 보여드릴것이 딱히 없는지라 오늘은 평소와는 다르게 작업 과정을 설명하려고 합니다.


위의 작업 내역들은 모두 하나의 목적을 위해서 진행되었습니다.
"덜 인위적이고 자연스러움이 묻어나는 던전의 표현"
30 x 30 정도의 공간에 2진 분할을 반복해서 던전을 구성하다 보면 어떤 "결" 같은게 생겨납니다.


위 그림에서 빨간색 1, 2, 3, 4 는 분할 순서를 나타냅니다.
노란색으로 1, 2 라고 적혀 있는 사각형들이 만들어지기 위한 분할 과정이죠.

사각형 1과 2는 유사합니다. 심지어 크기가 같을 정도로 유사하지요.


유사한 이유는 간단 합니다.
분할선 1, 2, 3 으로 위의 노란색 사각형이 만들어 지는데, 유효성을 보장하면서 균형잡히게 나누다 보면 모양이 거기서 거기인데 재수없게도 크기가 같게 나누어진거죠.

완성된 던전에서 저 두 곳이 "방" 으로 지정되고 유저가 두 방을 방문하는 경우 강한 "데쟈뷰" 를 느끼게 됩니다.

식사를 하고 커피숍에 왔는데 커피숍이 식당과 너무 똑같은 그런 상황인거죠.

그래서 몇가지 해결책을 생각해봤습니다.
  1. 공간 분할 과정에서 주변 여건을 고려해서 크기에 가중치를 부여한다.
  2. 두 사각형을 반드시 다른 넓이로 분할한다.
  3. 분할완료후 각 공간의 역활을 지정할때 방과 방이 이어지지 않도록 Algorithm을 구성한다.
  4. 식생을 추가해서 각 방에 차별점을 유도한다.
  5. 각 공간에 Theme 를 지정해서 차별점을 부여한다.
...등입니다.

이중에 3번, 4번, 5번은 이미 적용이 되어 있습니다.
하지만... 충분치 않았죠.

그럼 1번을 적용해야 할까?
...라고 생각해보니 경미한 증상 호전 이상을 기대할 수는 없다는 결론에 도달했습니다.
2번?
이미 해봤는데 그닥이었어요.

사실 1번과 방향은 다르지만 분할된 사각형을 이렇게 저렇게 변형할 상당히 다앙햔 방법들을 여러 방향으로 고민해봤습니다. 도달한 결론은 기본 뼈대를 생성하는 방식을 완전히 갈아 치우는 것이 품이 덜 든다는 것이었습니다. ㅇ_ㅇ


이런식으로 말이죠.

그럼 어떻게 해야 한단 말인가. 그래...
"인테리어를 기깔나게 하자."
...라고 생각하게 됩니다.


인테리어를 위해서 무엇을 해야 할까?
  1. 네모든 삼각형이든 원이든 어떻게든 기본형태가 있어야 합니다.
  2. 기본형태 내부에 이동이 가능하도록 최소한의 동선을 보장해야 합니다.
  3. 무언가를 채워넣어야 합니다.
작업은 3번은 식생으로 해결 가능하기 때문에 재끼고 2번, 1번의 순서로 이루어졌습니다.


2. 최소한의 동선 보장

동선 구성은 일지에 남기지는 않았지만 식생을 만들면서 작업이 되었었습니다.
이 것을 확장해서...


효율성은 낮추고 공간의 일정 부분을 차지 하도록 조정했습니다.


1. 기본 형태

이 작업을 위해 별생각을 다 했었지만 결국...
  • 외곽선 추출, Pivot 추출, Pivot 조정
...의 3단계로 진행되는 간단한 방법을 선택했습니다.



+ 결과

기본형태와 동선을 뼈대삼아서 방 내부를 조정했습니다.

< 왼쪽 상단 : 동선,     중앙 상단 : 기본형태,     오른쪽 상단 : 조정,
 중앙 하단 : 고립된 공간 제거 >

왼쪽 상단에 보이는 1번 방과 2번 방은 상당히 유사합니다.
하지만 중앙 하단의 조정 완료후 모습을 보면 유사성이 많이 옅어졌음을 알 수 있습니다.
게임 안에서는 식생도 배치되니까 더 다르게 보이겠죠. +_+



이렇게 기깔나는 인테리어 작업은 마무리가 되었습니다.
정말.... 길고.... 힘들었네요. @_@
좀더 사람냄새나는 작업내역은 앞서 올라온 잡설에서 확인 가능 합니다.



현재 던전은 위와 같이 어쩐지 무시무시한 모습입니다. 위 그림에서만...
  • 식생의 배치를 손보고
  • 전장의 안개를 방 형태에 맞출지 지금처럼 사각형을 유지할지도 정하고
  • 우물 근처에 보이는 Object 전용 Tile을 설정하고
...등의 작업이 보이네요.

일 복이 터졌습니다. @_@


오랜만의 일지라서 아주 열심히 작성했습니다.
시계를 보니 작성을 시작한지 2시간이 지나가고 있네요.
자주 짧고 밀도있게 쓰고 싶은데 잘 안됩니다.
차차 나아지겠죠?


이제 커피 물 올리고 잠깐 쉰다음 작업 시작해야겠습니다.
행복한 설 보내셨길 바라면서~!
이만~!
( '_')y-~

댓글 없음:

댓글 쓰기