2019년 8월 13일 화요일

[20190813] 휴식 또는 새작업

스토리 작업을 진득하게 했습니다.

여러 번의 갈아엎기 끝에 대강의 쓸만한 것이 나왔지만 여기에 시간이 필요하다는 것을 알게 되었습니다.
매일 아침 이야기를 일정 부분 갈아 엎었고 그 것이 지금도 계속 이어지고 있기 때문입니다.
내일 아침이면 또 갈아 엎을지 모를일이죠.

그리고 저에게 휴식이 필요하다는 것을 알게 되었습니다.

정확히는 이 일에서 잠깐 손을 놓을 필요가 있다는 것 입니다.
꾸준히 집중력을 유지하며 작업하고 있지만 뭔가 깊숙한 곳에서 고통이 느껴지는 상황입니다. 몸 보다는 머리가 이 작업에서 벗어나기를 원한다는 생각이 들더군요.

놀고 싶다거나 그런건 아닙니다.
"다른 것을 하고 싶다."
...에 가깝겠네요.

개발비가 간당간당해서 여유가 없는 것은 알지만, 무리해봐야 몸이나 망가진다는 것을 지난 프로젝트로 잘 알고 있습니다.

한 달 또는 두 달, 다른 게임을 짧게 하나 만들 겁니다.

그럼 그때까지 잠깐 안녕.
( '_')y-~

> 따지고 보면 새로운 것을 만드는 것은 아니구나.
> 나름 검증의 시간 이랄까.
> 새 친구가 궁금하면 이 쪽으로( projectLoop )

> 1번 수정

2019년 8월 5일 월요일

[20190805] 잡설 - 준비

이 짓을 시작한지 일수로 5년이 코앞이다.

난 이제 준비 된 것 같다.
이제야.
( '_')y-~

> 뭔가 후회가 있거나 한 것은 아니야.
> 단 한 조각의 후회도 없어.

> 지금 역시 그 때의 "더 이상 준비되길 기다리지 않겠다." 라는 선택이 맞다고 생각해.

> 회사에 있었다면 난 지금 만큼의 인간이 되지 못했을거야.

> 회사는 다시 가고 싶어.
> 이 모습으로 회사에서 얼마만큼의 역량을 보여줄 수 있을지 궁금하거든.

-----------------------------------------------------------------

20190806

시나리오를 정리 중이다.

각 던전을 이야기와 연계 시키기 위해 그리고 적절한 첫 던전을 위해 꼭 정리해 둘 필요가 있다는 생각이 들었다.

시작과 끝은 오래 전에 확정지었기 때문에 크게 문제가 없다.
언제나 처럼 문제는 그 사이의 이야기다.

대강의 흐름을 나름 고전적인 방식으로 정리했지만 아무래도 이야기와 게임이 겉도는 느낌이 강하게 들었다.
던전이 현실 세계가 아닌 곳에 위치하는 것으로 설정한 것이 아마도 원인이 아닌가 싶다.

고립된 세계를 탐험하기 때문에 현실에서 어떤 급박한 상황이 진행되건 반영되는 것이 거의 없다.
현실에서 마을 하나가 날아가든, 전쟁이 터지든... 언제나 던전은 그 모습 그대로인 것이다.

현실과 비현실을 오가며 게임이 진행된다면 그 반전이 나름의 느낌을 담을 수 있을 테지만 나에게 그정도 규모를 다룰 여력은 없다.

이 부분을 손보자.
지금 말고. 내일.
( '_')y-~

-----------------------------------------------------------------

20190808

시나리오 작업은 즐겁다.
어떤 게임을 어떻게 만들지 꿈꾸는 것 다음으로 즐거운 것 같다.

그래서 왜 프로그래밍은 이만큼 즐겁지 못한지 생각하다가 곧 그만뒀다.

이 작업도 각 장면을 구체화 해서 대본을 쓰는 수준까지 작업하면 즐거울 수 없다는 것을 알았기 때문이다.

그래... 일이 다 그렇지...
그런거지.
( '_')y-~

-----------------------------------------------------------------

20190808

Tool을 몇 개 만들고 싶어졌다.

하나는 사건 단위로 구성한 이야기를 편집할 수 있는 Story Card Tool.
각 Card 마다 사건을 적어 넣고 순서를 바꾸어 가며 이야기의 흐름을 구성하는 Tool 이다.

다른 하나는 Time Line Tool 이다.
Game "Reigns" 에서 Time Line에 연대기 비슷한 것을 보여주는 것이 제법 인상적이었는데 비슷한 느낌으로 하나 만들어 보고 싶다.
이야기를 빈틈 없이 구성하려면 각 사건이 일어난 시기에 대한 정리와 각 캐릭터 시점에서 현재 어떤일을 무슨의도로 하고 있는지를 정리해야 한다.
그런데 도움이 될 것 같다.

하지만...
일단 이것 좀 마무리 하자.
( '_')y-~

-----------------------------------------------------------------

20190809

과연...

시나리오 쓰다가 사전을 만든다더니.
그게 의미하는 바를 자~~~알 알겠는걸.

사... 사람살려.

~( o_o)~

-----------------------------------------------------------------

> 4번 추가
> 2번 수정

2019년 7월 30일 화요일

[20190730] 잡설 - 왔네!

왔네.

현자타임이...

아무렇지도 않다가 작업용 의자에 앉았더니
똭~!
...오는구나.

어떡한다.
( '_')y-~

----------------------------------------------------------

twitter 에서 옮겨옴.

내가 올리는 개발일지 트윗을 감사하게도 리트윗 해주시는 분들에게 가끔 미안함을 느낀다.

게임이 너무 올드 하거나, 후지거나, 보잘것 없는 탓에 사람들이 딱히 관심을 보이지 않기 때문이다.

게임이 좀 말라 비틀어진 듯 해도.. 때려치울 것은 아니니까.
계속 미안함을 느낄 예정이다.
( '_')y-~

----------------------------------------------------------

책상에 앉지 않은 채로 작업중이다.

1가지 개선 방안과
1가지 새 작업에 대한 구상이 대충 진행 됐다.

그러고 잠깐 숨을 돌리면서 가지고 있는 의문에 대해 생각했다.
사실 지금만이 아니고 작업을 멈출 적마다 생각했다.

"왜 현자 타임이 왔는가?"

어제 까지 있었던 작업에서 내게 가해진 가장 큰 압박은 무엇이었을까?
그 것은 작업한 코드의 어딘가가 잘못되어서 결과물인 데이터에 문제가 생기고
문제를 해결하느라 장시간 디버깅에 돌입하는 것 이었다.

머릿속으로 데이터 변화를 그려가면서 작업하느라 버거운데 디버깅을 시작하면 산통이 와장창 깨지기 때문이다.

조심 조심 작업하느라고 온 신경을 몰두한 것이 이렇게 돌아오는 것인가.
...라고 대충 대충 결론을 내렸다.

----------------------------------------------------------

20190802

이야기를 만든다는 것이 참으로 어렵다.

시작과 끝을 꿈꾸고 설계하는 것은 언제든 대충 할만했지만 그 것을 넘어서 관계를 입체적으로 구성하고 동선을 설계하는 것은 많은 연습이 필요한 것 같다.

이런 면은 프로그래밍과 맞닿은 부분이 있는 것 같기도 한데 프로그래밍의 본질은 반복이니까 다른 것 같기도 하고.

으렵다.
그리고 잘 하고 싶다.
( '_')y-~

----------------------------------------------------------

> 3번 추가

2019년 7월 29일 월요일

[20190729] Tile Builder, Tile Animation, Tile Map

이런 날씨를 두고 누군가 이런 표현을 했더랬습니다.
"물 붓고, 끓인다."

환상적인 날씨가 이어지는 와중에 저는 잘 살아 있었습니다.
잘 살아서 달력 머리에 써둔 <작업에만 집중한다> 라는 목표에 너무 집중한 나머지 일지를 작성하기 까지 20여일이 걸렸네요.

그렇습니다.
( o_o)y-~



작업 이야기로 들어갑니다.

이 일지는 2019년 7월 9일 ~ 11일, 15일 ~ 18일, 22일 ~ 25일 그리고 29일의 작업을 대상으로 합니다.

실 작업일은 12일로 전체 기간( 21일 )에 비해 적은 편입니다.
하루는 부가가치세 납부를 위해 소모했고, 4일은 지난 프로젝트의 유지보수를 위해 사용했습니다.
오래 방치했더니 Store에서 내려갔더라구요. o_o
한동안 주 1일은 <루비이야기> Project를 위해 사용될 예정입니다.

작업 내역은...
  1. 8 방향 Tile Pattern 의 중복 Tile 제거
  2. Dir 0, Dir 1에만 적용되어 있던 Tile Variation 기능을 Dir 8, Dir 8 R 에도 적용
  3. Tile Builder에 Tile Animation Build 기능 추가
  4. 게임에 Tile Animation 기능 추가
...입니다.



1. 8 방향 Tile Pattern 의 중복 Tile 제거

8방향 Tile Pattern은 Tile이 어느 위치에 배치되어도 주변 8개 타일과 연속성을 가지는 Tile Sheet를 생성합니다.

< Dir 8 - 16px Test Tile Sheet >

그러기 위해서 8방향에 배치 가능한 지형의 모든 경우의 수를 산출해서 Tile을 조립합니다.
그 수가 256개. 많네요.

256개의 Tile 중에는 경우의 수가 다르지만 조립된 결과물이 같은 녀석들이 있습니다.
그 녀석들을 제거하는 작업이었습니다.


이 작업은 진작 할 수 있었음에도 계속 미뤄왔는데요. 이전에는 Tile의 기준 크기가 16px라서 Tile Sheet에 여유가 있었기 때문입니다.

지난 일지에서 기준 크기를 24px로 늘렸더랬죠. Tile Pattern 하나가 차지하는 영역이 어마 어마 하게 늘어나 버려서 더이상 미룰 수 없었답니다. @_@

자세한 것은 [20190709] 잡설 - 낭비가 심해 이 쪽을 참고해주세요.



2. Dir 0, Dir 1에만 적용되어 있던 Tile Variation 기능을 Dir 8, Dir 8 R 에도 적용

Tile Map 기반 게임을 보면 같은 지형이지만 배치된 Tile이 다른 경우가 있습니다.
물론...

< Dir 1 - Green Tile Sheet >

제 게임도 그렇습니다.

Dungeon용 Tile Pattern인 <Dir 0> 과 <Dir 1> 에만 적용되어 있던 이 기능을 Tile 관련 기능의 통일성 유지를 위해 <Dir 8> 과 <Dir 8 Reverse> 에 적용되었습니다.

적용된 모습은...

< Dir 8 - 24px Test Tile Sheet >

...요렇습니다.



3. Tile Builder에 Tile Animation Build 기능 추가

Tile Animation 을 하려면 Tile Sheet에 Animation이 가능한 Tile이 들어 있어야 겠죠.
Tile Builder에서 Tile Sheet를 Build 할 때 Animation Tile을 포함하도록 기능을 추가했습니다.

이 작업을 위해 무수한 Refactoring 과 Data Format 갈아 엎기가 진행되었는데요.
각 Tile Pattern별로 기능을 구현하고, 중복 코드를 취합해서 추출하고를 반복하다가 종국엔  Graph 자료구조를 동원한 일반화를 통해 고통에서 해방되었습니다.
( '_')y-~

이 녀석은 이 정도로 넘어갑니다.



4. 게임에 Tile Animation 기능 추가

고생해서 Build한 Animation Tile이 굴러갈 수 있도록 Tile Map을 뜯어고쳤습니다.

만들어둔 기능중에 Tile Map 기반으로 작동하는 녀석들은...
  • 던전의 맵
  • 인벤토리의 아이템 사용 가이드
  • 인벤토리의 아이템 던지기 가이드
  • 전장의 안개
  • 시야
...정도 입니다.

이 녀석들의 중복 기능을 모두 추출해서 Tile Map 으로 통합하고, 여기에 Tile Animation 기능을 붙였습니다.

지금은 대충...


...이런  모습입니다.

더 제대로 적용된 모습을 보여드리고 싶은데 그러려면 Tile 작업을 해야 합니다.
아쉽지만 다음 기회로 미뤄둡니다.

일지는 여기 까지 입니다.



일수로 21일, 작업일로 12일을 들여서 Tile Builder 와 Tile Map에 거~~~의 종지부를 찍었습니다.
어지간하면 더 이상의 기능 추가는 없을 겁니다.

홀가분 하면서도 이어서 진행할 작업들을 생각하면 마냥 기쁘지는 않네요.

이 코드들은 앞으로 Tile Map 기반 게임을 만들때마다 큰 힘이 되어줄 겁니다.
그런 방향에서 마음의 위로를 얻어볼까 합니다. ( @_@)y-~



본격적인 여름이 왔습니다. 덥고 습하고 끈적 하네요.
건강하게 이 여름을 버티고 게임을 완성하고 싶습니다.
이 글을 읽는 당신도 건강하게 뜻하는 바를 이루셨으면 좋겠네요.

그럼 전 이만 쉬러 갑니다.
( '_')y-~

> Bonus
> Research Scene 의 Terrain View Test


> 3번 고침

2019년 7월 24일 수요일

[20190724] 잡설 - 작업중

그럴싸한데.
뭔가 이상하지만 말이야.
( '_')y-~

Tile Builder 와 Tile Animation 작업에 슬슬 끝이 보여.


이게 이렇게 큰 작업이었는지 몰랐네.

-----------------------------------------------------------------------------

20190726

일을 빡시게 하니까 잡념이 모두 날아가 버렸다.

쉬고 싶다는 생각 뿐이다.

( o_o)y-~

> 좋은건가?

2019년 7월 22일 월요일

[20190722] 잡설 - 적절한 주말

일요일에 느릿 느릿 읽던 "라프코스터의 재미이론" 을 마무리 했다.

제법 괜찮은 책이다.
게임이 나아갈 길과 비전을 제시하고, 게임이 "매체" 이며 그렇게 작동해야 한다고 주장한다.
책임과 윤리를 포함한 많은 좋은 이야기가 쏟아져 나왔는데, 그런 좋은 이야기를 읽는 와중에 나는 회의감이 들었다.

결국 게임은 누군가가 만들어내야 하는 것인데 이 땅에 당신이 말하는 그런 물건을 만들어낼 준비를 갖춘 사람이 얼마나 있을까?
나 역시 그런 사람이 아니다.

새로운 경험, 새로운 학습, 새로운 시각.... 도전할 만한 많은 새로움이 있다.
거기에 도전하는 사람들은 생계를 이어나갈 수 있는가?
사람들이 그런 것을 원하기는 하는가?

소위 메이저한 장소에서 게임을 만드는 사람들은 당신이 주장하는 것들과 얼마나 연관이 있는 물건들을 만들어 내고 있는가?

내가 너무 비관적인 것인가.
그럴지도 모르겠다.
( 그래도 미래가 보이지 않는걸. )
( '_')y-~

> 저자는 할아버지에게 전해줄 답이라고 부를만한 것을 얻었다.
> 나도 이 길의 끝자락에서 나름의 답에 도달하고 싶다.

> 후대에게 예술가라 칭해지는 많은 이들은 그들 스스로 밥벌이를 해내기 보다는 독지가의 후원에 기대어 생존한 경우가 많았다.
> 밥벌이가 최우선인 생존형 인디에게 무슨 도전을 기대할 수 있을까?
> 어떤 인디 개발자는 돈은 다른일로 벌고, 게임은 취미삼아 만든다고도 하더라.
> 하긴 나도 있는 돈 다 떨어질 때 까지 개발해보고 안되면 때려칠 생각이니 길은 다르더라도 취지는 같은건가.

> 1번 수정
> 1번 추가


2019년 7월 9일 화요일

[20190709] 잡설 - 낭비가 심해

Tile의 기준 크기를 24px로 올리고 나서 약간의 "물리적" 인 문제가 발생했다.
예견된 문제라서 "발생" 이라는 표현이 어울리지는 않지만... 뭐... 생긴건 생긴거니까.
( '_')y-~

16px 에서 24px로 기준 크기를 키운다는 것은...


...각 Tile이 이전에 비해서 2배 이상의 pixel을 점유한다는 의미이다.

projectRogue는 1024px를 최대 Texture 크기로 내맘대로 정해놨는데, 기준 사이즈의 변경으로 인해 Tile Sheet의 공간이 최대한 아껴써도 모자를 지경이 되었다.

가장 많은 Tile이 생성되는 Dir8을 기준으로 살펴보면...


1개 Theme의 1개 Usage만 만들어도 저만큼을 차지해버리는 것이다.
한 Map에 적어도 4 - 5개 Theme가 포함될 예정인데 이러면 2개 정도 넣으면 공간이 없다.

위 Tile Sheet에 보면 노란색으로 칠해놓은 녀석들이 있는데 모두 동일한 Tile이다.
Direction Index는 다르지만 결과물이 같은 녀석들이 저만큼씩 있는 것이다.

그리하여 저 녀석들을 제거하는 작업을 하기로 했다.
Texture 공간과 Memory를 교환하는 작업이랄까...

대충 만들어 잘 썼던 시간은 안녕이다.

.
.
.
이후에 Tile Animation 작업까지 하고나면 이 코드를 어디 팔아도 될 것 같다.
( @_@)y-~

------------------------------------------------------------

20190710

첫 작업은 Dir Index 와 Rect Index를 분리하는 것인가.

아 이거 까다롭구만.
( o_o)y-~

------------------------------------------------------------

20190715

진행중인 작업의 유용성.


------------------------------------------------------------

20190717

돌아가는 Template Code 를 작성하긴 했는데, mapping 과정에서 typedef 로는 작동하지 않는 것이 using 으로는 작동하는 것이 이해가 가지 않는다.

돌아가면 되는거 아니냐고?
그럴리가 있나.

이거 마무리 하면 밀도 있는 단련의 시간을 가져야겠다.
( '_')y-~

------------------------------------------------------------

20190717

Tile Animation Build 성공.


Tile Sheet는 뽑았는데 돌려줄 녀석이 없네.
이게 무슨 게임 샀는데 게임기 없는 꼬락서니 인가.

만들자.
( '_')y-~

------------------------------------------------------------

> 4번 추가

[20190709] Tile Piece, Pattern, Build

잠드는 시간이 일정치 않은 덕에 정신 못차리는 시간을 보내고 있습니다.
더불어 작업 시간도 들쑥 날쑥하고 무리하기 쉽상이네요.

건강을 위해서라도 얼른 대책을 찾아봐야겠습니다.
( o_o)y-~



작업 이야기를 해볼까요.

이 일지는 2019년 6월 24일 ~ 29일, 7월 2일 ~5일 그리고 7일의 작업을 대상으로 합니다.

작업 내역은...
  1. 24px용 Tile Set 제작
  2. Tile Builder 관련 모든 Data를 Table로 Export
  3. Test용 24px Tile Set 제작
...입니다.



1. 24px용 Tile Set 제작

지난 일지는 Tile Concept 작업에 대한 것이었습니다.
연달아 Tile 작업을 할 예정은 없었지만 자료를 찾다 발견한 Tile이 너무 마음에 들어서 "흉내를 조금 내볼까?" ...라는 마음으로 시작해버렸습니다.

여러 시행착오가 있었지만...


...이렇게 마무리 되었습니다.

2번 작업을 하느라 아직 Game에 적용은 못했습니다.
마무리 되면 일지에 남겨 보겠습니다.

적을게 많지만 잡설에 작업 내역을 남겨 놨기 때문에 이정도로 마무리 합니다.
작업 과정이 대충 담긴 잡설 ]



2. Tile Builder 관련 모든 Data를 Table로 Export

일지 작성이 늦어지게 만든 바로 그 작업입니다.

1번 작업을 끝내고 Tile Set을 Tile Builder에 넣으려고 했습니다.
그리고 저는 Code와 Data가 얽기 설기 엮인 참으로 아름다운 광경과 다시 마주하게 되었습니다.
미루고 미루고 다시 미뤄왔지만 24px 로 Tile 크기도 키운 상황. 대규모 작업이 예정되어 있는 마당에 정리 한다면 지금이라는 생각이 들더군요.

이 작업은...
  • Tile Piece Data Export
  • Tile Pattern Data Export
  • Tile Build Data Export
...의 3가지 일을 처리 하는 것으로 정리 되었습니다.

작업이야 지루하고 뻔한 반복작업이었기 때문에 각 Data에 대한 설명이나 늘어놔 볼까 합니다.


- Tile Piece Data

< 16px Dir8 Test Tile >

이렇게 생겨먹은 Tile Set의 그림 조각 정보입니다.

이 녀석을 빼내는 작업은 실수했을 때 원인 찾기가 어려워서 한땀 한땀 신중하게 옮겼습니다.
작업량이 정~~말 많아서 고생이었네요.


- Tile Pattern Data

어떤 Tile Piece 정보를 가져다가, 어떤 방식으로 조립해서, 어떤 용도로 사용할 것인가를 정의한 Data 입니다.
이 녀석이 Tile Sheet를 만드는 핵심입니다.

조립방식은 Dir0, Dir1, Dir8, Dir8_Reverse 등을 만들어 뒀고, Base, Wall, Room, Road, Blank, Deco_1 등등의 용도를 정의해 뒀지만...

길고 지루한 설명을 해야 하니 이쯤에서 접겠습니다. ( @_@)y-~


- Tile Build Data

Tile Build Data는 Tile Sheet에 어떤 Tile Pattern을 포함할지를 정의한 Data 입니다.
각 Theme 별로 어느 Tile Pattern을 사용할지를 지정할 수 있습니다.

Map 하나에 Tile Sheet 한 개 이기 때문에 해당 맵에 사용될 Theme를 모두 포함해야 합니다.

이 Data로 Build를 잘 하면...


...이런 녀석을 얻을 수 있습니다.



3. Test용 24px Tile Set 제작

이 작업은 2번 작업이 진행되는 과정에서 함께 진행되었습니다.
빼낸 Data가 정상인지 확인을 해야 하니까요.

다음과 같은 4가지 Tile Set이 만들어졌습니다.


Test용 Tile이기 때문에 최대한 실수를 파악하기 쉽게 만들었습니다.

Dir0 을 위한 Tile Set을 가장 먼저 만들었는데요.
20조각을 5종류 만들어서 Table에 넣었더랬습니다.
그랬더니 20 * 20 * 20 * 20 * 20 종류의 패턴을 조합하느라고 제 맥북이 죽으려고 하더군요.
처음에는 <어딜 잘못고쳐서 무한 loop가 되었나?> 라고 생각 했습니다.
메모리를 2기가 까지 찍고나서 작업이 마무리 되더라구요.
( o_o)y-~


일지는 여기 까지 입니다.


열흘이 넘게 작업했는데 생각만큼 적을것이 많지는 않았네요.
다행입니다. ~( ^_^)~

Tile Builder 가 대충 정리 되서 미뤄둔 새 Tile의 Sheet를 제작할까 했지만... 약간의 개선 작업이 예정되어 있어서 미뤄야 할 것 같습니다.

다음 일지는 아마도 Tile Builder 개선 작업과 새 Tile Sheet가 될 듯 합니다.



날씨가 많이 더워졌습니다.
거의 집 밖으로 나가지 않아서 체감은 못했지만 맥북의 온도가 올라간 것을 보니 크게 와닿는군요.

다들 더위 조심하시고 건강한 여름 되세요.
( '_')y-~

> 1번 수정

2019년 7월 4일 목요일

[20190704] 잡설 - 내가 알아 먹기 좋은게 좋아.

지난 날을 되돌아 보는 것은 그것이 회상, 퇴고, 검토, Refactoring... 어떻게 불러야 하는 행위이건 많은 경우 희망찬 내일을 위한 토대가 되기 마련인가보다.

Tile Data를 빼내면서 각 Tile Pattern 별로 Test용 24px Tile을 하나씩 만들고 있다.
16px 타일에서 크기만 키우는 것이 아니라 정리와 개선 작업이 함께 진행중이다.

< Test Tile - Old version >

< Test Tile - Current Version >

24px용 새 타일은 구색을 맞추기 보다는 무언가 잘못되었을때 알아보기 쉽도록 만들었다.
새 타일을 만들었을때 이것에 알파를 입혀서 위에 씌우면 어딘가 잘못되어도 알아보기 쉬울 것이다.

혹시나 나중에 어디라도 들어가면 이 경험의 활용도가 제법 있어보이지만... 과연 될 것인가.
( '_')y-~

> Tool 코드는 성능을 신경안써도 돼서 너무 좋다.
> 대충 대충 보기 좋게만 작성해버린다~!~!~! +_+
> 어차피 이 규모 프로젝트에서 무거워봐야 그게 그거니까. 후후후후

> 마리오 메이커 맵툴 정말 예술이다.
> 나도 저런거 하나 만들고 싶네.


> 2번 고침
> 되서가 뭐냐 되서가... ㅜ_ㅜ

2019년 7월 2일 화요일

[20190702] 300+




씨잘데기없는 글을 300개가 넘도록 썼구나.
( '_')y-~

[20190702] 5500+


어떤 기쁨이나 감탄 대신에 헛 웃음이 나오는 이 상황이 심히 유감스럽다.

아직도 만들고 있다니.
( '_')y-~

어쨌든... 5500 돌파... 6000 전에 완성 하려나???

2019년 6월 28일 금요일

[20190628] 잡설 - 유연성

개발이 중반을 넘어가면 코드 품질에 신경을 쓰지 않을 수 없다.

마무리를 확실하게 해두지 않으면 비용이 열 배, 백 배로 돌아오기 때문이고, 일이 터지면 정신 건강과 손목 건강이 수습 되지 않기 때문이기도 하다.

거기에 덤으로 자동화에도 최대한 신경을 써야 하는데...

코드 품질과 같은 취지에서 어떤 데이터를 생산하건 그것을 관리하는 일은 자연히 따라오기 마련이고, 가뜩이나 일들이 까다로워지는데 디테일을 손보는 과정에서 번거로운 일들이 벌어지면 안되기 때문이다.

그런 이유에서 아주 오랜시간 코드에 박혀있던 Tile Build 관련 Data를 빼내기로 했다.

아이고 언제 다 하냐.
( '_')y-~

> 일지는 이 작업 까지 마무리 하면 쓰자.

> 1번 수정

2019년 6월 24일 월요일

[20190624] 잡설 - 늘었어.

지난 Tile Concept 003 작업 이후로 실력이 쬐~~~끔 오른 것 같다.

의도치 않게 또 tile을 찍고 있는데 찾아보는 자료들의 의도라고 해야 하나 패턴 이라고 해야 하나, 전에는 눈에 들어오지 않던 것들이 들어온다.

자기 학대 뒤의 성장.
피할 수 없는 무한 Loop 이긴 하지만 그리 즐거운 과정은 아니구먼.


하지만 색상을 보는 눈은 전혀 늘지 않았지. 하 하 하
( o_o)y-~


> 역시 도둑질도 실력이 있어야 한다.
> 지금 찾아보는 자료는 "The Legend of Zelda - The Minish Cap"
> 이 게임 Tile이 정말 아름다워.

---------------------------------------------------------------------


palette 흉내중.
베끼기는 안돼. 방식만 배워온다.
( '_')y-~

---------------------------------------------------------------------

20190625

이 둘중에 하나로 낙점할 듯.


채도를 낮춰야 하는가...
( '_')y-~

---------------------------------------------------------------------


흐으으음... 단련된적 없는 능력을 활용하려니 결정장애가 오는구나. ( '_')y-~

---------------------------------------------------------------------


"선생님. 그만 쳐 노시고.. 일을 하셔야 하지 않겠습니까."
( o_o)y-~

---------------------------------------------------------------------

20190626


이 것으로 Concept 완료.
Builder에 넣기 위한 작업 시작.
( '_')y-~

> 근데 위가 아퍼.
> 조급해 하지 말고 쉬자.
> 어차피 다 내가 할 일이니까.
---------------------------------------------------------------------

> 6번 추가
> 1번 수정

2019년 6월 21일 금요일

[20190621] Tile Concept 003

더워지고 있습니다.
곤란한 계절이 슬슬 시동을 거는 모양입니다.

선풍기뿐인 방에서 시원하게 작업하려면 얼음이 필수죠.
내동실에서 제빙틀을 꺼내 씻어 말리고 물을 부어 얼음을 만들었습니다.

뭐랄까... 얼음은 미묘한 풍미가 있는 것 같습니다.
보리차에 넣어도 뭔가 더 맛있는 느낌적인 느낌이거든요.

그렇습니다.
( '_')y-~



작업 이야기로 들어갑니다.

이 일지는 2019년 6월 16일 작업의 일부, 18일 ~ 20일 그리고 21일 작업의 일부를 대상으로 합니다.

작업 내역은...
  • 새 Tile Concept 의 제작
...입니다.

요즘들어 작업 내역이 짧네요.
목록이 간결하다는 것은 흔히 설명할 것이 많다는 의미이기도 하죠. @_@
이 일지는 과연 어떨런지.



+ 새 Tile Concept 의 제작

Tile 작업은 언제나 언제나 변함없이 Concept의 제작으로 시작합니다.

가장 못하는 분야이기도 하고 Monster, Object 등과는 다르게 영향이 광범위하고 틀어지면 수습이 힘들기 때문입니다.

전 Twitch로 Retro Game의 Speedrun 방송을 자주 틀어놓는데요.
거기서 잊고 있던 그것을 다시 보고 말았습니다.

< Megaman2 - Flashman stage >

"나도 파랗고 반짝이는 Tile이 가지고 싶다."
...그렇게 시작했습니다. @_@



첫 작업은 원본에 가까운 Megaman2 Tilesheet를 구하는 것 이었습니다.
이런 일에 도움을 주는 사이트들이 여럿 있습니다. 그곳에서 쉽게 구할 수 있었죠.

이어서 분석과 간보기에 착수했습니다.
색상과 패턴 배치 그리고 특징을 찾아보고 흉내내서 찍어보는 과정입니다.

그리고 오래지 않아 "내 게임에는 맞지 않는다" 는 것을 알게 되었습니다.
  • 색이 강해서 Palette 흉내는 불가하다.
  • 타일이 굉장히 부각되는데 내 게임은 그래서는 안된다.
  • 실력이 부족해서 느낌을 살릴 수 없다.
...정도의 이유로 말입니다.


그래서 반짝이는 것은 포기하고 파란 Tile을 작업하기로 했습니다.

구글링을 통해 얼음과 눈이 나오는 Tile들을 수집하고
Twitter에서 여러 예술가들의 작품을 관찰하고
흉내내기 작업도 몇차례 가지고나서


첫 결과물은 이렇게 나왔습니다.
여전히 얼음 블럭 느낌에 어떤 미련이 남아 있는 결과물 입니다.

만들다보니 Tile Size를 키우는 작업이 예정되어 있다는 것이 떠올랐습니다.
재작업을 피하기 위해 Tile의 기준 크기를 16x16 에서 24x24로 키웠습니다.


바닥 Tile이 점점 맘에 안듭니다.


이리 저리 수작을 부려보지만. 그런게 잘 통하는 경우는 잘 없더라구요.
그래도 나중에 물 패턴에 적용할 그물( ? ) 패턴은 얻었네요. ( o_o)y-~

결국 유일하게 자신감을 가지고 있는 문양 패턴( ? ) 찍기를 활용해서 갈아 엎었습니다.


심심해진 감이 있지만 괜찮아 보이네요.

여기 까지 왔으면 다음은 노가다 입니다. 될때 까지 계속 찍고 또 찍는거죠.
그리하여...


이렇게 마무리 되었습니다.

게임에 올리는게 가능할 정도로 작업했으면 좋았겠지만 그러려면 이 녀석들을 분해해서 Tile Builder에 투척이 가능해야 합니다.
손목이 시큰거리기도 해서 그건 잠시 미뤄 둡니다.

대충 4일동안 18시간 책상에 붙어 작업했습니다.
일 당 작업시간이 상당히 형편없는데요. 핸드폰 붙들고 Twitter에서 자료를 검색한다거나 Game 영상을 찾아본다거나 머리를 쥐어 뜯는다거나를 반복했기 때문에 실제 작업시간은 제법 길었답니다.
( '_')y-~

작업을 마무리 지을쯤에는 최근에 나온 "cadence of hyrule" 의 자료를 많이 찾아봤습니다.
그러면서 이런 생각을 했더랬습니다.

"내 작업의 품질이 저정도가 나와야 하는 건가?"

답은 "아니오" 였고 맘편하게 작업을 끝낼 수 있었네요. ( ^_^)y-~

일지는 여기 까지 입니다.



손목, 어깨, 목 언저리... 가 안좋습니다. 이 작업하면서 무리한 덕이겠죠.
오늘은 꼴랑 1시간 반 작업했지만 맘편하게 작업을 접을 생각입니다.

주말 잘 쉬고 월요일에 다시 작업 들어갑니다.

다들 즐거운 주말 보내시고 행복하세요.
( '_')y-~!

> 1번 수정( 간단한 영단어를 틀려버림. 하 하. )

2019년 6월 18일 화요일

[20190618] 잡설 - 지쳤으면 찍어야지.

+ twitter 에서 옮겨옴.

20190618

Researching new tile pattern~!
( '_')y-~

코드 작업에 너무나 지쳐버린 것이다.
그렇다면 Dot를 찍어야지.

공부할게 너무 많은 스타일이지만...
찍다보면 길이 보이겠지.


-------------------------------------------------------

20190618

타일 한 묶음을 며칠 만에 완성해야 수지가 맞는 걸까?
모르겠구만.
( '_')y-~

-------------------------------------------------------

20190619

어제보다 나아진건가.


잘 모르것네.
( @_@)y-~

Monster등의 크기 증가를 위해 Tile 기준을 16x16 에서 24x24로 키움.

-------------------------------------------------------

20190619

흐음...
제대로 만들고 있는 것인가.
( '_')y-~


-------------------------------------------------------


> 1번 수정
> 4번 추가

[20190618] 잡설 - 부족해

경로 산출
경로의 두께 조절 기능
인벤토리 연계
가이드 뷰
경로 이동 노드
노드의 공격 기능
노드의 스폰 기능
연출
.
.
.

짧은 시간에 제법 많은 기능을 만든 것 같은데 왜...
  • 이 정도 작업량으로는 부족하다""
...라는 생각이 머리를 떠나지 않을까.


아마도 부족하다는 생각이 틀린건 아닐꺼다.
남은 시간과 거기에 맞출 체력이 내게 없다는 거겠지.


압박감을 넘어설 정도의 집중력 아니면 무시할 정도의 마음의 여유가 필요하다.
체력은 단기간에 해결하기 어려우니까.
( '_')y-~

> 1번 고침

2019년 6월 16일 일요일

[20190616] Throw #4 - 일단 마무리

날씨가 정말 정말 좋습니다.
덕분인지 산책도 할 수 있었네요.
10km 쯤 걸어봤는데 부담이 느껴지긴 했지만 즐거운 시간이었습니다.
다행하게도 면역력 역시 이상이 느껴지지 않았습니다.
( ^_^)y-~



작업 이야기를 해볼까요.

이 일지는 6월 12일 ~ 14일 그리고 16일 작업의 일부를 대상으로 합니다.

작업 내역은...
  • 두께가 1 이상인 투척 경로의 개선
...입니다.



투척 경로 산출 작업은 지난 일지로 끝났었습니다.
몇 가지 만족스럽지 못하지만 쉽게 마무리 하는데 도움이 될 요구사항들로 작업을 마무리 했었죠.

그런데 말입니다..
그게 게임에서 돌려보니 영~~~ 만족스럽지 않더란 말입니다.
개발자인 저는 만족 했던 기능이.
유저인 저는 만족하지 못하더군요.
( '_')y-~

손이 많이 가고.
시간을 많이 잡아먹지만
좀 더 그럴싸한

그런 투척 경로를 만들어야 겠다는 생각이 들었습니다.



두께가 1 이상인 투척 경로의 이전 요구사항을 살펴봅시다.

1. 8 방향 기준으로 만든다.
2. 경로 사이에 빈틈이 없어야 한다.
3. 위, 아래, 좌, 우 4방향을 기본 방향으로 한다.
4. 확장된 경로는 주 경로를 수평이동해서 만든다.
5. 대각선은 예외 처리 한다.

이와 같은 요구사항을 반영한 결과는...


...이렇습니다.

"경로가 이상하네" 라고 느끼는 사람이 있겠지만, "이 정도의 부실함( ? )은 나름의 재미 요소로 쓰일 수 있지 않을까?" 라고 생각했습니다.


하지만 유저인 저를 만족시키지 못했죠. ( o_o)a

그래서 개선작업에 착수했습니다.



두께가 1 이상인 투척 경로의 새로운 요구사항은 다음과 같습니다.

1. 기준 방향 없다.
2. 예외 처리 없다.

즉 자연 스러운 경로를 만들자는 겁니다.

요구사항을 정리한 이후 어떻게 알고리듬을 조정할 것인지를 놓고 20시간쯤 머리를 쥐어 뜯으며 아래의 그림을 만들었습니다.


그리고 이전의 알고리듬이 제공하는 긍정적인( 버려서는 안되는 ) 부분 은 유지하면서 기능을 확장했습니다.


눈치 빠르신분은 요구사항 2종류와 그림을 보시고 코드 꼬락서니가 어떨지 감이 오실겁니다.

그러므로 더이상의 자세한 설명은 생략합니다. ( +_+)y-~

투척 경로 작업은 여기까지 입니다. 자잘한 버그나 기능개선이 아니면 한동안 손대지 않을 것 같네요.
그리고 이번 일지도 여기까지 입니다.



하나 하나 확실히 만들어가고 있습니다.
코드 복잡도가 이전 게임보다 많이 높아서 이쯤오니 확실하게 하지 않으면 후폭풍이 감당이 안되네요.
느려도 확실하게 마무리 하고 갑니다.

전 잠깐 쉬고 오랜만에 Dot 작업을 할 계획입니다.

다들 좋은 날씨 잘 즐기시고
전 쉬러 갑니다.
( '_')y-~

> 2번 고침

2019년 6월 12일 수요일

[20190612] 잡설 - 어렵네

머리 빠개지는중.
( @_@)y-~


적당히 마무리 하려고 했건만...
회차를 거듭함에 따라 모양새가 좋아지는 것은 게임 플레이나 코딩이나 다르지 않다.

갈아 엎어야 하는가.

> 3번 수정

-------------------------------------------------------

나는 알고리듬 개선 작업을 하고 있는 것인가.
아니면 사각형에 대한 고찰을 하고 있는 것인가.
( '_')y-~

어느 쪽이건 간에 일이 진행된다는 것은 사실이다.

2019년 6월 11일 화요일

[20190611] Throw #3

여전히 집에만 박혀 생활하고 있습니다.

잠드는 시간과 깨는 시간이 슬슬 안정을 잡아가고 있는 덕에 약간의 활력이 돌아왔네요.
작업 시간도 조금 늘었습니다.

그동안 어지간하면 주말 이틀을 쉬어왔는데 요즘은 주말에 하루, 주중에 하루 쉬고 있습니다.
뭔가 일이 계속 반복되는 느낌과 피로감이 있네요.
익숙해지면 괜찮아지는 것인지.... 모르겠습니다.
( '_')y-~



작업 이야기로 들어갑니다.

이 일지는 6월 10일, 11일의 작업을 대상으로 합니다.

작업 내역은...
  1. 발사체를 통한 Spawn
  2. 투척 경로 산출에 굵기 속성 추가
  3. 발사체에 개선된 투척 경로 적용
...입니다.



1. 발사체를 통한 Spawn

Monster 중에 Map에 무언가를 만들어내는 녀석이 있었습니다.


바로 이 녀석 이죠.

같은 기능이 발사체에서 가능하게 작업했습니다.


원활한 Test를 위해 Dummy Item 과 Dummy Effect 가 하나씩 추가 되었습니다.
( ^_^)y-~


2. 투척 경로 산출에 굵기 속성 추가

지금의 투척 경로는 단 한 줄로만 만들어 집니다.
그런데 집어던지는 것들의 두께가 모두 같을리는 없겠죠.

그래서 굵기 속성을 추가해서 투석경로가 다양한 굵기를 가지도록 작업해봤습니다.

경로 산출을 위한 기준점을 확장하고


경로를 확장했습니다.


많고 많은~! 시행착오가 있었지만 재미 없는 부분이니까 넘어갑니다.



3. 발사체에 개선된 투척 경로 적용

2번 작업에서 확장된 투척 경로를 발사체에 적용했습니다.


그렇습니다.

미묘한 버벅임이 있네요.
Debug 모드에 Leak Detector 가 적용된 상황이지만 용서될 수는 없습니다.
조만간 만들어놓고 제대로 쓰지는 않은 Caching 기능을 적용해야겠네요.

일지는 여기까지 입니다.



요즘은 오후 6시 전에 작업이 거진 마무리 됩니다.
아침 일찍 일어난 덕분이죠.

기온이 더 올라가면 피난을 가던가 낮밤을 바꿔야 할텐데 이 생활 패턴이 얼마나 지속될런지... 모르겠네요.

다들 좋은 하루 되세요.
전 쉬러 갑니다.
( '_')y-~

2019년 6월 8일 토요일

[20190608] Throw #2

조용히 작업에만 집중하는 시간을 보내고 있습니다.

몸은 많이 회복한 것 같은데... 체력이 아프기 전의 절반이 되지 않는 것 같습니다.
이거 좀 아프네요.
전과는 다른 의미로 의욕이 넘치지만 몸이 따라오질 않습니다.

수면시간이 안정되면 얼른 산책을 시작해야겠습니다.



작업 이야기를 해볼까요.

이 일지는 6월 3일 ~ 5일, 7일, 8일의 작업을 대상으로 합니다.

작업 내역은...
  1. Interaction Process 개선
  2. Item이 활용되는 Interaction의 정규화
  3. 투척 경로 산출에 관통 속성 적용
  4. 발사체 Node 추가
...입니다.



1. Interaction Process 개선

2번 작업을 위한 준비 작업 입니다.
Interaction 처리의 주체를 ManagedActor와 Item등의 말단 객체에서 Core Data라는 이름의 Class로 대신하는 작업입니다.

주요 데이터의 저장소 또는 대리자로서 여러 객체들의 의존성 관리에 많은 도움을 줄거라 생각합니다.



2. Item이 활용되는 Interaction의 정규화

1번 작업에 힘입어 전용 코드를 사용하던 Item 과 Actor 간의 Interaction 을 정규 처리 흐름안으로 집어넣었습니다.

여기 까지 오는데 정말 많은 작업을 했지만... 이만큼의 작업을 더 해야 말끔하게 정리될 겁니다.
지금 할 것은 아니지만요.
( o_o)y-~



3. 투척 경로 산출에 관통 속성 적용

관통 Stat을 추가했고 이 것을 투척 경로 산출에 적용 했습니다.


그렇습니다.



4. 발사체 Node 추가

발사체 관련 기능은 Player A.I 에 작성되어 있었습니다.
이 기능의 폭 넓은 활용을 위해 관련 기능을 대신 처리해줄 Projectile Node를 추가했습니다.

일반화 작업이 마무리 되었으니 조만간 다른 Actor들이 Projectile Node를 활용하게 만드는 작업을 하게 될겁니다.

그 전에 발사체를 통한 Spawn 기능을 처리 해야 하지만요.
( @_@)y-~


일지는 여기까지 입니다.



함께 5년을 지내준 선풍기가 목이 부러졌습니다.
새로 살까 했는데... 올해만 그냥 쓰기로 했습니다.
몇가지 Item( ? ) 을 활용하면 그럭 저럭 쓸수는 있더라고요. @_@
개발을 마무리 하고 홀가분하게 새로 사겠습니다.

다들 좋은 하루 보내시고~!
전 쉬러 갑니다.
( '_')y-~

> 1번 고침

2019년 6월 5일 수요일

[20190605] 잡설 - 변환

"어딘가에서 곱하기는 세계의 변환이다."
...라는 문구를 본적이 있다.

그리고 그 곱하기로 이 세계, 저 세계로 굴러다니다 보면 값에 주어진 엄밀함이 맥없이 사라지는 경우가 더러 있다.

오늘 사소한 버그를 잡기 위해 엄밀함을 기대하며 산출한 값에 약간의 노이즈를 첨가했고, 알고리즘이 잘 굴러가게 되었다.
( '_')y-~

> 코딩을 어거지로 배워야 할 친구들이 이런 재미를 맛봤으면 좋겠건만
> 아마도 무리겠지.


> 3번 고침

2019년 6월 4일 화요일

[20190604] 잡설 - ...

접촉할 수 있는 거진 모든 것들을 무시하거나 방치 하면서 작업 중이다.
걱정되는 부분이 몇 곳에 있지만 진작 이랬어야 하나 하는 생각이 들기도 하고... 복잡하다.

Social Media 쪽은 완전히 놓아버렸다.
Facebook은 완전 방치 상태고, Twitter는 Pixelart 자료 수집용으로만 쓰고 있다.

지난 달의 난장 이후로 내 안에서 무언가 변한 것 으로 보이는데 지금으로서는 이게 좋은지 나쁜지 모르겠다.
차갑게 식었다고 해야 하나.
변한건 변한거니까 일단 받아들이는 수 밖에...


"작업에만 집중한다." ...가 이달의 목표다.
환경은 만들었고 재미 요소가 필요하다. 이 달안에 어느정도 모양을 뽑아보고 싶다.
( '_')y-~

2019년 6월 1일 토요일

[20190601] Throw #1

더운 계절이 왔습니다.
아직 불편한 정도는 아니지만 조만간 어딘가로 피신해야 할런지도 모르겠습니다.
작업이 가능한 커피숍을 찾아놔야겠네요.

몸은 어느정도 회복이 되어서, 어제는 "이제 좀 살만하네" 라고 생각했습니다.
하지만... 낮/밤이 완전히 바뀌어서 그닥 살만하지는 않네요.
( o_o)y-~



작업 이야기로 들어갑니다.

10일 만의 일지 입니다. 일지 간격이 좀 기네요.
잡설의 작성이 뜸해져서 더 긴 것으로 느껴지는군요.

이 일지는 5월 22일의 일부, 23일, 25일 ~ 29일, 31일 그리고 6월 1일 작업을 대상으로 합니다.

작업 내역은...
  • Item Throw를 위한 모든 것
...입니다.


몸이 엉망인 덕분에 작업 시간은 50시간 정도로 짧았지만 일은 많이( ? ) 진행되었습니다.
오늘 일지는 이 작업에서 중요했던 순간들을 몇 개 짚는 것으로 작성해보려 합니다.




1. 위치를 특정한다.

무언가를 던지려면 던질 위치를 특정할 필요가 있습니다.
그것에 최적화된 도구는 Mouse 입니다.

Mouse 위치를 활용할 수 있게 관련 기능을 손 봤습니다.


이렇게 Test Scene에서 확인이 가능하지요.



2. 선을 Grid로 변환 한다.

공간이 특정 크기로 규격화 되어 있는 게임이다보니 Ray 를 활용한 간편한 충돌대상감지는 Game에 맞지 않습니다.

그리하여 시작점과 끝점을 지정하면 그것을 Grid 공간의 경로로 변환하는 기능을 만들었습니다.


Twitter에 이 영상을 올렸더니 어느 외국인 친구가 뭐하는 게임인지 전혀 모르겠다고 하더군요. @_@



3. 유의미한 경로로 제한 한다.

Grid Data의 정보를 참고하여 경로가 벽을 뚫고 가지 못하도록 제한 하였습니다.


이정도면 발사체의 이동 경로로는 충분해 보입니다.



4. Inventory 와 연계하여 경로를 보여준다.

Test Scene에서 만든 기능을 Game에 얹었습니다.


경로용 Tile이 이상하죠?



5. Tile 을 넣어본다.

급하게 Tileset을 만들어서 적용 했습니다.


자리잡기 용도라서 특별한 것은 없습니다.
이거 작업하다가 Tile Build 관련 Bug를 하나 잡았습니다. ( ^_^)y-~



6. 발사체를 이동한다.

발사체 노드를 경로에 맞춰서 이동 시켜봤습니다.


여러 시행착오 끝에 마음에 드는 이동 속도를 찾았습니다.



7. 때린다.

무수한 Item 관련 Refactoring과 Data 재설계 끝에 지정한 장소에서 공격 판정을 만들어 냈습니다.
( '_')y-~


여기 까지 진행하면서 이전 일지에서 언급했던...

  • Item, 행동, 대상의 3가지 조합으로 Item활용을  처리 하는 것

...이 완전히 확립되었습니다.

Damage 가 정상표시 되지 않는 것은 Item과 Actor간의 공방 처리가 정규처리를 따르지 않고 별도의 처리 로직을 가지고 있기 때문입니다.

지난번에 관련 기능을 만들면서 Item 관련 기능은 손보지 않았는데요. 지금 저 녀석을 제대로된 처리 흐름안에 포함하기 위해 여러 부분을 갈아 엎는 중입니다.

일지는 여기 까지 입니다.




어제는 이 달 들어 처음으로 산책을 했습니다. 1.5km의 짧은 거리였지만 산을 오르내리는 거라서 나름 운동이 되었네요.

일지를 5월 31일에 작성하고 싶었는데 낮/밤이 뒤집히다보니 6월 1일에 와서야 작성했습니다.
지난 일지에서... "일지 간격이 10일 씩 되는 것은 좀 아니다 싶었습니다." ...라고 적었는데... 뭔가 스스로에게 면목이 없군요. @_@

다음 일지는 이른 시기에 작성해보겠습니다.

일교차가 좀 있는데 다들 감기 조심하시고 좋은 하루 되세요.
전 잠깐 쉬고 다시 일하러 갑니다.
( '_')y-~

2019년 5월 22일 수요일

[20190522] 회복중

회복중입니다.

뭘 먹어도 이상하게 느끼던 혀가 점차 정상작동 함에 따라 식사량이 약간 회복되었습니다.
수면패턴은 완전히 망가져서 비몽사몽 하고 있네요.
산책은 5월들어 전혀 하지 못했는데 조만간 시작하려고 합니다.



작업 이야기를 해볼까요.
일지를 며칠 후에나 쓸 수 있을거라 생각했지만 그냥 쓰기로 했습니다.
일지 간격이 10일 씩 되는 것은 좀 아니다 싶었습니다.

이 일지는 5월 15일 ~ 17일, 20일 ~ 21일 그리고 22일의 작업 일부를 포함합니다.

작업 내역은...
  1. Neutral Actor 2종 추가
  2. 다양한 Item 사용 방식 제공을 위한 Item Data Update 및 관련 기능 Refactoring
  3. Item 던지기 기능( 작업중 )
...입니다.



1. Neutral Actor 2종 추가

지난 일지에 남긴 Neutral Actor 2종 추가 작업의 여세를 몰아 2종을 더 작업했습니다.

< Cactus 03 >

< Weed 02 >

Weed_02 는 딱히 컨셉을 만들거나 한 것은 아니었지만 선인장을 3종이나 추가했는데 저 녀석이 1종만 있는 것은 뭔가 형평성에 문제가 있다는 생각이 들어서 작업해봤습니다.

지난 작업의 2종과 이번에 추가된 2종이 어우러져 현재 게임은...


...이런 모습입니다.

적절히 난잡해서 만족스럽습니다.
( ^_^)y-~



2. 다양한 Item 사용 방식 제공을 위한 Item Data Update 및 관련 기능 Refactoring

기존에 장비는 착용하고, 음식은 먹고, 주문서는 읽는 식으로 한 가지 아이템에 한가지 행동을 지원했습니다.

여기에 약간의 변화를 줘서 아이템을 활용한 여러가지 행동이 가능하도록 Item Data를 확장 했습니다.

암묵적으로 정해져 있던 아이템을 활용한 행동들이 이제는...

  • 아이템
  • 행동
  • 대상

...의 3가지를 조합해서 활용될 수 있습니다.

관련된 U.I 도 조정해서 Table에서 행동을 지정하면 Inventory에서 관련 행동을 위한 버튼이 활성화 됩니다.

이 작업은 3번 작업과 연관되어 있으니까 여기까지 적고 넘어갑니다.



3. Item 던지기 기능( 작업중 )

Player에게 전략적인 선택지를 제공하기 위해 범용적인 원거리 공격이 필요하다는 생각을 해왔습니다.

그리하여 Player에게 Item 던지기 기능을 주기로 했습니다.

느릿느릿 진행된 작업은...

  • U.I 에서 "던지기" 행동의 선택이 가능하고
  • Actor가 던지는 Animation을 수행하는

...것 까지 작업 되었습니다.


던질 위치를 선택할 때 경로를 미리 보여주는 기능과 Interaction을 처리할 발사체 Object 까지 추가하면 작업이 마무리 될 것으로 보이네요.

일지는 여기 까지 입니다.



여러 날 일을 했는데 작업시간이 그리 길지 않아서 나온게 없습니다.

목표로 잡은 이 달의 작업시간은 150 시간입니다.
첫 2주를 날려먹고 지난 주는 32시간을 일해서 목표치 근처에도 가지 못할 듯 싶네요.

회복 하고 있지만 더 얼른 빨리 후딱 회복하고 싶습니다.

다들 건강 잘 챙기시고.
전 다시 작업하러 갑니다.
( '_')y-~