2018년 1월 31일 수요일

[20180131] Dungeon Select Scene Ver.1

며칠간의 고통스러운 물고 늘어지기 끝에 "Dungeon Select Scene" 의 작업이 1차적으로 완료되었습니다.

비전문 분야의 작업을 하는 것은 정말이지 힘듭니다.
...많이 힘듭니다.

잘 안되니까 오기가 생기고, 오기가 생기니 무리하게 되네요.
10시간 이상을 아무렇지도 않게 일해버립니다.
( '_')y-~


몇 번을 갈아 엎은건지 모르겠습니다만...

< Dungeon Select Scene Ver.1 >

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

이 Scene의 작업을 위해 Table 도 몇개 추가 되었고 기존의 Table 역시 이런 저런 수정이 가해졌지만 재미 없는 부분이므로 넘어가겠습니다.


늘 그렇지만.
이후 작업이 잘되면 다시 손 볼 날이 있을것이고, 아니라면 이게 마지막 버전일겁니다.
( @_@)

작업의 막바지에 화면 가운데에 들어간 열쇠를 찍었는데 무리없이 잘 마무리 되었네요.


내일은 선택된 정보를 바탕으로 "Dungeon" 을 생성해야겠습니다.
( '_')y-~

2018년 1월 27일 토요일

[20180127] 다시 시작하는 성실한 작업일지 작성

작업 일지 작성을 줄이고 작업에 매진했더니...
점점 더 일지 쓰기가 힘들어 집니다.

그래서 대공사 진행중에는 일지 작성을 줄이려던 계획을 뒤집고 다시 자세하게 써보려고 합니다.


우선 지난 작업을 정리해야 겠지요.

"Character Select Scene" 의 작업이 마무리 된것은 글로 작성했습니다.
덤으로 기획서를 대신하고 있는 Concept 이미지를 보여드립니다.

< Concept : Character Select Scene >

이런 이미지를 기획서 대신으로 쓰고 있습니다.

글로 작성하는 경우가 완전히 없는건 아니지만 가급적 그림으로 대신하고 있습니다.
비슷한 목적의 그림이 이 프로젝트를 시작하면서 작성한 게임 컨셉 게시물에 포함되어 있습니다.( Link )


다음으로 "Lobby Scene" 의 작업이 대충 마무리 되었습니다.

< Lobby Scene Ver.1 >

작업이 마무리 된 것은 아닙니다만 방향성은 아마도 변하지 않을 겁니다.
"Lobby Scene" 을 gif 로 찍어 올리면 느낌이 많이 다르지만 나중을 위한 즐거움으로 아껴두겠습니다. ^_^


지금은 "Dungeon Select Scene" 의 작업을 진행하고 있습니다.
이제 막 삽을 뜬 상황이라서 크게 남길만한 내용은 없습니다.

"Character Select Scene" 을 위해 만들었던 Scroll UI 를 별도의 Node 로 분리해서 작업에 반영한 정도입니다.

대충...

< Dungeon Select Scene >

...이런 모습입니다.
하얀색 사람 비스므리한 것은 더미 이미지 입니다.
저 자리에 각 던전의 Symbol 이 들어갈 겁니다.
네.... 그려야 됩니다. @_@


14일 이후의 작업에서 Image Resource 를 만드는데 많은 시간을 들인지라 약간의 보는 맛은 생겼습니다.
하지만 컨텐츠 작업이 되었다고는 할 수 없기 때문에 작업이 더 진행되어야 이미 만들어놓은 녀석들이 의미가 있을겁니다.


이제 곧 작업을 시작한지 11시간이 되네요.
쉬러 갑니다.
( '_')y-~

[20180127] 1월 14일 이후 버리고, 바꾸고, 추가한 것

+ 버린 것

1. TMX 기반 컷씬
2. TMX 기반 레벨
3. Character Building System
4. Body Parts 기반 Player
 - 세부적인 Parts 교환 없다.


+ 바꾼 것

1. Title Scene
2. 해상도
 - 304 x 208 -> 256 x 160
2. Quick Slot 으로 Inventory 를 대체


+ 추가한 것

1. Character Select Scene
2. Lobby Scene


굉장히 많은 코드를 폐기 처분했습니다.
시원 섭섭하면서도 많은 짐을 덜었네요.
버리는 것도 일인지라 무리에 무리를 반복해야만 했습니다.

아마도 적절한 판단일겁니다.
더 빠르게 갈 수 있습니다.
( '_')y-~

2018년 1월 20일 토요일

[20180120] Character Select U.I

여전히 몸살입니다.
다행이도 아침이 지나면 몸상태가 괜찮아지는 덕에 작업을 하고 있습니다.


요 몇일 Character Select Scene 을 작업중입니다.
이런 저런 작업을 거치고 거진 끝이 보입니다.

지금은 부가적인 작업을 진행중인데 cocos2d::Vec2 를 단순히 Rotation 했을 뿐인데 미묘하게 값이 늘어나는 증상도 보이고 느낌이 아주 좋네요.
부동소수점의 세계는 참으로 놀랍습니다.
( @_@)y-~

< .... >

본 작업으로는...

허전한 배경을 감추기 위해 간단하게 Texture UV Animation 을 하는 Node 를 만들어 보았습니다.

< Texture UV Animation Node >

Vertex Shader 를 사용해서 작업했습니다.
오랜만에 OpenGL 관련 코드를 보려니 기억이 1도 나지 않아서 살짝 고생을 했는데 어떻게 마무리는 되었네요. @_@
shader 파일이 하나 둘 늘어나는 상황이 되니 이 녀석도 table 등으로 관리 해야 하는게 아닌가 하는 생각이 들고 있습니다.
엄연히 Resource 이니 관리할 가치는 충분하겠죠.

( '_')y-~


그리고 이 녀석을 적용해서...

< Character Select Scene Ver.1 >

...이와 같은 모습이 되었습니다.


오른쪽 아래에 어떤 내용을 넣어야 할지 정하지 못했지만, 이 Scene의 작업은 이쯤에서 잠시 닫아 두어야 할 것 같습니다.

다음 작업은 Lobby Scene 입니다.

계속 갑니다.
( '_')y-~

2018년 1월 18일 목요일

[20180118] Scroll U.I

어제( 17일 ) 몸살이 났습니다만...
몸살이라고 누워있기에는 일이 많아서 가볍게 작업에 들어갑니다.
( @_@)y-~


오늘의 작업은 Character Select U.I 입니다.

cocos2d-x 에서 제공하는 ListView와 ScrollView 로는 영 흡족하지 않아서 ScrollView 를 기본으로 약간의 기능 추가 작업을 진행했습니다.


Magnetic 기능이라고 하던가요?
화면 중심에 가장 가까운 Slot 으로 Auto Scroll 을 하도록 작업하였습니다.

Bounce 기능을 껐지만 Auto Scroll 덕분에 켜져있는 것처럼 보이는 것이 특징입니다.

좌, 우의 긴 Slot은 버퍼영역입니다.
버퍼 영역은 화면 크기에 맞춰서 크기가 늘어납니다.
첫번째 슬롯이 자연스럽게 화면 가운데에 위치 하도록 도와 줍니다.
( '_')y-~


몸이 안좋으니 머리가 안돌아가서 약간 고전했습니다만...
머리가 안돌때는 외부저장장치를 동원하면 됩니다.
네... 그려가면서 작업하면 적당히 진행이 가능합니다. @_@

< ... >


적당히 하려고 했는데... 7시간 정도 작업을 해버렸네요.
보통때보다 2시간은 덜 작업한거라서 나름 성공적입니다.
( '_')y-~

[20180117] 휴무

감.기.몸.살

( @_@)y-~

2018년 1월 16일 화요일

[20180116] 부가가치세 납부 완료

금쪽 같은 시간을 쪼개서 "루비이야기" 의 부가가치세를 납부 하였습니다.
으.... 힘들어 죽겠네요.
( '_')y-~


2018년 1월 14일 일요일

[20180114] 지난 4일.

마지막으로 작업내용을 올렸던 9 일 이후로 4일동안 아주 많은 생각을 했습니다.
그리고 오늘은 그 생각을 실천 하는 날입니다.

어떤 생각을 했는지에 대해서는 지난 게시물...
1. 다이어트
2. 다이어트 #2
...에서 확인 하실 수 있습니다.여기서는 지난 4일간 실질적으로 진행된 작업에 대해서 적어보겠습니다.


Trigger 가 추가되었습니다.
기존에 추가되어 있던...
1. Zone 간 이동에 사용하던 : Gate
2. Floor 이동에 사용하던 : Stair ...를 하나로 통합해서 설정만으로 다른 기능을 할 수 있도록 했습니다.

< Stair and dummy Gate >

이후 버튼, 함정등도 이 녀석으로 만들어진다는 것에서 의미가 있는 작업입니다.


다음으로 "Progress Manager" 를 추가했습니다.
가시적으로 느껴지는 것은 없습니다만 중요한 녀석입니다.

이 녀석이 있음으로 인해서
1. 게임 시작 연출
2. 게임 종료 연출
3. 게임 모드 와 시네마틱( ? ) 모드 의 전환
4. 게임의 종료와 전환
...등을 처리 할 수 있게 됩니다.

< 시작 연출 >

< Zone 이동 연출 >

지금은 간단한 Fade in, out 으로 때워놓았지만, 언젠가 손볼 날이 있겠죠.




눈에 보이는 것은 여기 까지 입니다.
1. 이 밖에 몇몇 Table 정리
2. NPC 추가를 위한 NeutralActor 추가
3. TMX 를 사용한 Zone 구축 로직 보강
...등의 작업을 진행했습니다.


이제부터 대규모 수술( ? ) 을 진행하게 될텐데 그러면 위에 있는 TMX 관련 작업 같은 것은 의미가 없어지고, NeutralActor 또한 의미가 상당량 퇴색됩니다. ( T_T)y-~

다행인 것은...
"고민의 시간이 의미있는 결론에 도달했고"
"그 의미가 크게 마음에 든다."
...는 겁니다.

그러면... 수술하러 갑니다.
( '_')y-~

2018년 1월 13일 토요일

[20180113] 다이어트 #2

캐릭터 커스터마이징.
인벤토리.
스탯.
만복도.
TMX 기반 던전 구축.
능동형 튜토리얼.
의미있는 시나리오.

...버릴려고 마음먹으면 버릴 수 있는 것이 이렇게나 많았구나.

그럼 뭘 버려볼까.
( '_')y-~

[20180113] 다이어트

# 1
생산성( ? ) 낮은 엔진과 언어를 쓰고 있으니...

시스템을 하나 만들면 게임을 하나 만드는 기분으로 작업하는게 맞는것 같다.
최선이 아니어서 폐기한 것들이 몇개던가.

이렇게 저렇게 비비면 게임이 나오긴 나온다.
( '_')y-~



# 2
한 덩어리 또 잘라낼 때가 되었나보다.

작업에 끝이 안보인다.
( '_')y-~



# 3
긍정적인 부분은 어떻게 잘라낼 것인지에 대해서는 빠르게 계획이 섰다는 것이다.



# 4
모바일을 목표로 한다면 스스로를 게임 개발자 라기 보다는 광고 플래폼 개발자로 생각해야겠다.
창작과 분량에 대한 압박을 줄여서 좀더 사고의 범위가 넓어진다.
적어도 나에게는...

2018년 1월 10일 수요일

[20180109] Maintenance

눈에 통증이 있어서 하루를 쉬고 다시 작업을 시작합니다.

컨텐츠 작업이 시작되면 그것이 아무리 사소한 것이던 여러 방면의 작업이 필요하게 됩니다.
그리고 그런 상황에서 빠르게 작업을 진행하기 위해서는 진행내역에 대한 적당한 정리가 필요하죠.

그리하여 이쯤에서 "Trello" 에 작업정리를 시작합니다.

< ...trello >

여전히 분신술 쓰는듯한 느낌은 멋집니다. 어느 작업이건 제 얼굴 말고는 들어갈 것이 없군요.
안 넣으면, 안 넣는대로 허전하기 때문에 그냥 넣기로 합니다. @_@


그리고 드디어 Visual Studio Project의 Debug Option 을 "ZI" 에서 "Z7" 으로 조정했습니다. 도무지 방법이 없는 PDB 에러에 저는 대처할 힘이 없군요.
( '_')y-~

< use "z7" option when pdb error on cocos2d-x with visualstudio >


다음으로 의식의 흐름에 따라 Intro 작업을 시작합니다.
뜬금없는 작업이긴 합니다만 이 작업을 진행하면서 약간의 성취감과 함께 현재 미비한 Zone 의 Progress 관리 에 대한 보강이 되어질 것이라 생각합니다.

그 첫 삽질로서 "NPC" Actor 를 추가하고 기본 A.I 를 추가했습니다.

< NPC and basic a.i >


내일은 본격적으로 Intro 작업에 들어갑니다.
( '_')y-~

2018년 1월 8일 월요일

[20180107] NPC 1

무슨 부귀 영화를 누리겠다고 NPC animation 을 11개나 만들고 있는 걸까요.
( '_')y-~

"루비이야기" 작업할때도 유저에게 전달될 것도 아닌데 무리해서 작업한 녀석들이 많았죠.

자중해야겠다는 생각이 들고 있습니다.

< NPC 1 >


리소스 정리 와 게임에 올려서 테스트 까지 완료 하였습니다.

< ...is Clean >


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

2018년 1월 6일 토요일

[20180106] 조급함

2018 년 01월 06일에 개인페북에 올린글...

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

가치가 있는 일이건, 없는 일이건.
시간은 간다.

지난 1번의 개발, 2번의 프로토타입 과는 다르게
난 더이상 조급하지 않다.

좋은건가 나쁜건가... 판단은 안되네.

( '_')y-~

[20180105] Player Move Animation Test

Player의 sprite resource 를 모두 새 버전으로 교체했습니다.

작업 과정에서 두 파츠로 구성되어 있던 눈과 다리는 하나의 파츠로 합치기도 했고요.
테이블 작업이 병행되는지라 자잘하게 많은일을 하게되었네요.
작업은 잘 마무리 되었습니다.

그러나 안타깝게도 게임 안에서와 aseprite 안에서 느낌이 많이 달라서 여러가지 테스트를 진행중입니다.

예를들면...

< Move Type 1 >

< Move Type 2 >

< Move Type 3 >

< Walk Type 1 >

...이런 작업입니다.

이 상태로 두고 보다가 하나를 골라볼 생각입니다.
( '_')y-~

2018년 1월 4일 목요일

[20180104] batch for Aseprite

"루비이야기" 프로젝트를 진행하던 시절부터 Texture Packing 에 "Texture Packer" 라는 툴을 사용해왔습니다.

어차피 대용량 Texture가 사용될 게임은 아니었기에 기기의 성능을 믿고 Actor 1개당 1개의 Texture 를 사용해도 문제 없었습니다만...
그런식으로 하는 것은 영~~~ 취향에 맞지 않더군요.

어차피 경쾌함이 주무기인 엔진( cocos2d-x 3.x )이니 취지를 살리고자 "Texture Packer" 를 사용해 파일 하나로 묶었습니다.
결과적으로 마지막 보스와 최초에 만들었던 몬스터를 제외 하고 Actor들은 모두 1개의 Texture 안에 들어가게 되었죠.

Aseprite 는 자체적으로 Spritesheet 생성기능을 제공하지만 파일로드를 위한 별도의 코드는 제공하지 않습니다.
직접 코드를 작성해도 되지만 그 코드를 관리하고 싶지 않기 때문에 이번에도 "Texture Packer 를 사용하기로 했습니다.

그래서 Texture Packer 에 넣어서 plist 를 뽑기위해 이미지를 각 레이어와 프레임 별로 조각내야 하는데요...

< 이런 이미지를... >

< 이렇게 조각내야 합니다. >

이게 너~~~무 노가다입니다.
작업량이 약간 늘어나거나, 재작업할일이 있으면 바로 지옥이 펼쳐질 그런 GUI Interface가 제공되고 있습니다.

그래서 batch 파일을 만들었습니다.

2개의 파일을 만들었는데요.
첫번째 파일은 Export를 위한 정보를 담고 있는 파일.
두번째 파일은 실질적인 Export 작업을 진행할 파일입니다.


삽질 잠깐하면 되는 간단한 작업이지만 누군가 필요할지도 모르니 여기 코드를 첨부합니다.

파일 1 : "player_default.bat"
call exporter_PNG.bat^
 "C:\Users\..........\player_default.ase"^
 player_default.png
파일 2 : "exporter_PNG.bat"
cls
"c:\.......\Aseprite\Aseprite.exe"^
 -b --split-layers^
 %1^
 --filename-format "{title}_{layer}_{tag}_{tagframe}.{extension}"^
 --save-as %2
pause

추가적인 정보가 필요하다면 Aseprite Doc 이쪽을 참고하세요.
디렉토리 설정이나 몇몇 세부작업을 추가하면 좀 더 편해질 겁니다. ^_^

[20180104] batch with Aseprite

노가다를 견딜 수 없을때.
사람은 batch 작업을 하게 되나 봅니다.


이녀석을 export 하려고 보니 제공되는 interface 로는 노가다가 너무 심하네요.

노가다 할 시간과 미래의 노가다 할 시간을 합쳐서.
batch 파일 작업하러 갑니다.

Player resource 만 갈아 치우고 자려고 했는데.
글렀네요.
( '_')y-~

2018년 1월 3일 수요일

[20180103] Dot dot dot...

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

아래는 각종 이동 animation의 후보군들 입니다.

< Walk : x3 : 4frame >

< Move1 : x3 : 2frame >

< Move2 : x3 : 2frame >

< Move3 : x3 : 4frame >



[20180102] New Player Concept

새해의 첫 작업입니다.

1일에는 "루비이야기" 의 세금납부를 위한 이런 저런 정리를 하고 났더니... 8 시간이 훌쩍 넘어가 있더군요.

구글은 이전에도 해봤었기 때문에 빠르게 끝났는데요.
애플쪽은 아... 정말 도대체 왜 어째서 무엇때문에 한국 정보를 따로 제공해주지 않는지... 개발자 등록때 낸 10만원을 토해내라고 하고 싶을 지경이었습니다.

정말... 힘들었습니다. @_@


작업이야기로 넘어와서...

오늘은 가벼운 작업들을 진행했습니다.
먼저 Sound 파일들을 재생해 볼 수 있는 Test Scene을 만들어 넣었습니다.

< Sound Test Scene >

이런 저런 상황에 테스트 용으로 활용할 수 있을것으로 기대하고 있습니다.


다음으로... Player 를 "ProjectDicer" 에서 그대로 옮겨와서 사용하고 있었는데요.

< "ProjectDicer" player : Move x 8 >

Player 의 Concept 을...
가급적 색상은 적게쓰고 입체감 없게( flat )
모양은 네모네모 하고 단순하게
...새로 잡았습니다.

< New Player Concept : Idle x 1 >

< New Player Concept : Idle x 2 >

< New Player Concept : Idle x 8 >

< New Player Concept : Move x 1 >

< New Player Concept : Move x 2 >

< New Player Concept : Move x 8 >

달리는 모양을 만들때는 여러가지로 고생좀 했습니다만...
인내심이 다하기 전에 적절한 디자인이 나와줬습니다.
정말 정말 다행입니다. @_@

무기 붙일 것을 고려하면 이대로 쓸 수는 없겠지만, 적절한 기준이 되어줄겁니다. ( ^_^)y-~


이제 내일 작업을 위해서 쉬어야겠습니다.
( '_')y-~