1. 유튜브 영상 채널 링크 ( 영상만 연속재생시 )

https://www.youtube.com/playlist?list=PLdwd0_vSUeexf5W-EmejFImLdtkUE_bk_




2. 프로젝트 관리

  처음에는 네이버 SVN을 사용했었습니다.

  회사에서도 SVN으로 버전관리하고 있어 참 쓰기편했었는데... 네이버 SVN이 유료화되어 빗버킷 GIT을 사용하여 관리하고 있습니다.

  프로젝트는 2014년 부터 버전관리 하고 있었네요.


※ 해당 관리내역은 개인 프로젝트 관리에 대한 내용이므로, 회사경력(버전관리)과는 별개로 관리하는 내용입니다.



  ※ 2014년 12월 ~ 2016년 6월 까지 사용한 SVN 기록 ( 따로 엑셀로도 관리 )





  ※ 이부분은 빗버킷의 GIT 부분 ( 무료는 2GB 까지라서 깃주소 2개 사용중 )





3. 포트폴리오 정보

 학원포트폴리오와 개인개발에 필요한 라이브러리용으로 개발한 내용들이 조금 섞여 있으므로, 영상마다 설명을 첨부하였습니다.


1) 다이나믹한 UI 메뉴구현

- 유니티


기본 모바일이며, 선택된 메뉴는 트레일렌더가 빛으로 메뉴를 휘감고 있으며 '선택된'상태의 진행상태로 메뉴가 바뀝니다.


아이돌키우기 관련 프로젝트에 사용될 UI 스타일.


연출 포함 내부 인테리어( 배경~UI리소스 전부의 그래픽리소스 )도 모두 직접 제작해보았습니다.


슬롯의 추가 및 슬롯내부 데이터 업데이트는 모두 라이브러리화하여 사용하며

슬롯 추가 / 삭제 및 내부 수치의 업데이트가 코드단에서 언제든 쉽게 가능하도록 제작한게 포인트.

여기서 개발된 시스템은 현재 출시된 게임 '대장장이소녀' 에서 활용하였습니다.






2) 그리프슈터 [ 학원포트폴리오 2D과정 WindowsAPI ]

- 2D WindowsAPI 포트폴리오


학원 포트폴리오 2D API의 엔트리포인트부터 투디 라이브러리 구현까지 공부했던 내용을 토대로 만든 게임입니다.


시간투자가 제일 많이 된 게임이고, 구현하고싶은부분이 많았지만 그 모든것을 담아낸 영혼의 게임.


대신 리소스부분에서 다이렉트관련 라이브러리가 전무하여 Bitblt로만 구현한 ( 더블버퍼링 ) 순수한 API 게임.


지금 돌이켜보면


쓰레드로딩 / 포물선(가라)구현 / 콤보구현 / 적의 피격후 튕겨나가는 관성부분과 AI 상태알고리즘 / 적의 공격중무적 + 적의 칼을 내 공격으로 튕겨내기 / 마나(아래의 총이 마나포인트) 소모구현 / 원작게임에 없는 새로운 스킬들과 충전공격 -박력있는 머스킷 충전후 연사 ( 쉐이크효과와 근접공격판정 )-

더블점프와 점프중 공격 / 비트블리트를 활용한 직선맵을 사선으로 뿌려주는 기능 + 1층 2층과같이 윗칸 아랫칸 구현과 포물선의 탄착점[먼저 탄착하는부분기준으로 가이드라인 표기] / 신나는 이펙트떡칠.


잠도 줄여가며 표현하고싶은 극한을 표현한(불태워 만든) 게임입니다.

아래 시트는 제작후 설명했던 피피티내용.




3) 코인도저

- 유니티 ( 모바일 )


국비무료과정 진입이 꼬여서 학원을 2회에 걸쳐 같은수업을 듣게되었는데( 유니티와 다이렉트수업을 두번 -오전3시간 / 오후3시간- ) 다이렉트는 이론쪽이 많고 포폴준비때문에 바빴지만, 마지막 남은 유니티수업 ( 3시간짜리 한개만 듣게될 시기 )에는 시간이 남게되어 수업중에 만들어낸 것들이 좀 있습니다.


모바일에서 동작하며, 내용은 코인도저와 동일하게 유니티 물리를 이용해 동전밀어내기.

동일한색 동전 3개가 연속으로 떨어지면 추가동전이 떨어지고, 특정조건에 따라 붐[흔들기] 팽이, 해적코인이 오른쪽에 쌓이다가 5개이상 쌓이면 내려보내기 기능이 있습니다.


트리거기능 / 점수측정 / 코인 넣는부분등 간단한 스크립트로 구현됨






4) 카 시뮬레이터 [ 학원 포트폴리오 Direct3D ]

- DirectX 포트폴리오


국비무료 겹치는문제로 조금 힘들었던 포트폴리오.

2)번의 포트폴리오와 동일한 시기에 만들어내야만 했던 고통의 시간이었습니다.


렌더몽키로 뽑은 HLSL셰이더도 쓰고, 무엇보다 집중한 엔진음의 구현과 RPM - 엔진 - 기어비 의 기능이 집중적으로 구현된 게임.


다이렉트3D9로 스카이박스와 모델렌더등 라이브러리 활용면에 충실했던 게임.


차량 두대의 기어비가 다르고, 차량공회전시 / 핸들링에 따른 차량기울기 등에 초점을 맞추었기에 주행 그 자체일 뿐이기에 카 시뮬레이터가 되었습니다.

( 레이싱게임이 아니므로 랩타임 등은 없습니다 ㅠㅠ )


셰이더적용 / 엔진부 코드구현부가 양이 많았고, 계기판도 포토샵으로 따서 정성들여 제작.

RPM 회전수에 따른 사운드 효과를 연구해서 만들었고, 부드럽게 움직이고 가속되는 점이 포인트.






5) ZtarwarZ 슈팅건설게임 ( 터렛건설및 스킬 ) [ 학원 포트폴리오 Direct3D과정 ]

- DirectX 포트폴리오

국비무료중복의 피해가 있던 작품. 7)번의 앨리스 스트라이커 포트폴리오 제작과 약간 겹쳤습니다.

팀 포트폴리오로서, 4명이 1개팀으로 구성하여 만들었고 역할분담으로 제가 책임PD를 맡고 SVN을 파서 만들었습니다.


당시 네이버 SVN이 공짜였는데 이것을 활용해 다같이 참여해 만들었습니다.


전 맵 / 오브젝트배치 및 AI, 사격, 스킬구현, 건설 쪽을 맡았고,

다른인원 1명은 UI -돈표기- / 다른 1명은 AI의 이동과 오브젝트풀을 맡았는데 실패하여 제가담당 / 다른 1명은 터렛 AI를 맡아주었습니다.


36기와 37기의 다이렉트X + 유니티 수업을 듣게되었는데, 이 포트폴리오는 37기 다이렉트X 포트폴리오 입니다.

37기에서 저는 반장이었고 리딩( 반에서 잘하는 몇명 )쪽에 속해서 리딩멤버를 기축으로 팀을 구성하였기에 제가 책임지고 이끄는 분위기였지요.


다같이 남아서 열심히 만들고 카페에서도 만나고 학원자습실에 모여 늦게까지 남아서 만들었습니다.



다이렉트 라이브러리 자체를 활용하여 애니메이션 및 이동구현과 터렛설치와 스킬구현( 셰이더 물결 발생 이후 적을 띄워서 -> 떨어지면 데미지 )






6) 다이스맨 피하기 [ 37기 Direct3D 수업 중 숙제 ]

- DirectX 포트폴리오


주사위사람 본을 만들어 떨어지는 주사위 피하기 만들어라. 라는 숙제였는데, 지금생각해도 쓸데없는 하이퀄리티라 올려보았습니다.

나름 조명도 캐릭터기준으로 잡혀있고 떨어질장소에 라인렌더링도 해놓고 점점 떨어지는것도 많아지고...


목숨 3개가 끝나면 두손들고 빙글빙글 돌며 더이상 진행되지 않습니다.


하나의 게임이 되어버린 숙제.







7) 앨리스 스트라이커 3D 비행시뮬 [ 유니티3D 포트폴리오 ]

- 유니티 포트폴리오


3D캐릭터 모델을 가져오고 발에 로켓모델을 긁어와 달아서 아톰을 만들어서 스트라이크 위치즈를 만들어버림.


적의 공중 AI 구현과 내 카메라시점. 3D 본애니메이션 제작. ZOOM시점. 비주얼노벨. 미니맵, 기본 터레인으로 맵구현을 하였고,


엑스박스 컨트롤러로 조종이 가능합니다.


서포터 비행캐릭터가 위에서 U자로 무기를 캐릭터에게 건네주고 가는 것, HP / MP 바의 구현과 FPS 기본 충돌구현 / UI ( 속도 / 고도 ) / 유도탄 기능 등 잘 보이지 않는 기능들이 구현됨






8) 아카리파인 무기강화게임

- 유니티


아카리파인 프로젝트 진행했던 내용이고, '강화게임을 만들자!' 가 모토.


특정 물품을 만드는데에는 특정 재료가 필요하고 재료정보들은 모두 XML 파싱해서 읽어들입니다.


강화시 추가스텟 붙는정보 등도 쓸데없이 많았지만 활용도는 아직 미지수.


투디 연출을 잘 해보려고 노력하여 '대장장이소녀' 게임의 베이스가 된 모토이기도 합니다. UX부분에서 많은 도움이 되었습니다. 기본 슬롯과 인벤토리 개념의 코드 / 크래프팅 코드단을 연구하게된 프로젝트.






9) 아카베리아ACABeriea 캐릭터의 팔라독 스타일

- 유니티


캐릭터 소환하면 오른쪽으로 진행하며 적을 팹니다.


근접은 근처로 달려가서 때리고, 원거리는 어느정도 거리만큼 뒤로 물러난 후 총을 발사합니다.


적도 나도 체력이 떨어지면 으앙쥬금.


하나의 개체 '캐릭터' 로 적과 아군, AI와 공격타입등으로 분류하는 일종의 '객체'를 구현하였고, 실제 각기 역할에 맞게 움직이는 결과물을 연출






10) 스페이스아트 스타크래프트 SCV구현

- 유니티


국비무료중복관련 시간남을때 만든 SCV AI구현.


미네랄 모델과 텍스처 제외 모든게 유니티 기본으로 만들어졌고, 건설할때 점점 모델이 보여지고, 미네랄을 들고 SCV가 근처 커멘드센터를 찾아갑니다.


멀리있는 커멘드센터를 갔다가도 근처에 커멘드센터가 가까운데가 있으면 그리로 가고, SCV한대가 미네랄을 이미 캐고있으면 근처 빈 미네랄쪽으로 달려갑니다.


스타크래프트의 SCV 인공지능 구현






11) 예측사격

- 유니티


국비무료중복관련 시간남을때 만든 예측사격. 모델링부터 시작했었지요.


보통 비행기가 날아가면 기총소사도 비행기 머리쪽 100미터 앞쪽으로 사격을 합니다.


스포트라이트는 비행기를 다이렉트로 비추고, 예측사격하는 포탑을 미리 비행기의 앞쪽으로 사격을 실시합니다.


GH100이라고 저 비행기는 유니티 기본 스페어와 박스 등을 떡칠(...)한 모델. 추후 유모델러를 활용하고 있지요.


저 배들 떡칠한 모델은 ACAShipBattle 프로젝트에 모델정보 스샷이 포함되어있습니다.


물체에 대한 예측사격기능 시뮬레이션







12) 슈팅게임 베네치아배경 데마시아필살기

- 유니티


화려한 이펙트를 만들어보자! 로 시작된 슈팅게임.


배지어곡선으로 시작부터 끝까지 이동 후 보스가 출현하는 내용이 담겨있다.


보스 패턴은 저기 보여지는게 끝이지만 나름 탄속이 점점 느려지는 등의 기술이 포함되어있다.


연출에 필요한 부분들을 구현






13) 대장장이소녀 ( 프로젝트명.아카리파인 ) [출시됨]

- 유니티 ( 완성 프로젝트 )


카테고리 왼쪽 프로젝트쪽의 ACARefine을 참조하세요!


★아이폰 앱스토어
https://itunes.apple.com/kr/app/%EB%8C%80%EC%9E%A5%EC%9E%A5%EC%9D%B4%EC%86%8C%EB%85%80-%ED%81%B4%EB%A6%AC%EC%BB%A4-%EB%B0%A9%EC%B9%98%ED%98%95/id1266181692?l=ko&ls=1&m
t=8

★안드로이드 구글 플레이스토어
https://play.google.com/store/apps/details?id=com.ACABerry.ACADollRefine&hl=ko


일본인 어플리뷰

https://appget.com/appli/view/70488/





14) 슈퍼 이카루가

- 유니티


올X 회사 재직중에는 다이렉트X와 C++만 사용했으므로, 프로그램팀 해외프로그램파트 사람들 강의하면서 만든 슈팅게임.


우리파트원만 따로 모여서 교육했었고 개인컴퓨터로 공부하더라도 사내에서 운용시 유니티 라이센스 문제가 발생할 여지가 있어서 교육은 중단했지만 2시간씩 4~5회정도는 교육했었는데, 그 이후로도 서로 공유하며 공부했던 기억이 있다.


파트원중 유일하게 내가 학원에서 유니티를 학습했기에 교육하고싶다고 건의해서 해낸 작은 성과이기에 의미가 있었던 슈퍼 이카루가 슈팅게임.


그래도 파트원분들은 유니티 한번 만져봤었다. 라고는 말할 수 있을정도는 되셨을거라 믿으며!






15) 16) 스페이스밸리

- 유니티


영상보니 2014년도에 제작한 게임.


조이스틱계열은 엑박조이스틱과 이 뱅기조이스틱류 두가지를 만들어봤었는데, 이 게임에 등장하는 플레이어비행기와 우주정거장. 적들은 모두 유니티 순수제작( 텍스처제외 )이며, 아스테로이드와 매터리얼. 환경정도는 에셋에서 가져온 상태.


스로틀조절 ( 느리게 이동가능 )과 좌우 러더기능도 가능하다.


사격점에 대해 궁금해하시는분들이 계시는데, 단순하게 비행체 앞부분에 레이를 쏴서 걸리는게 적일경우 해당 지점으로 레이져를 조준하여 발사하도록 해놓은 상태. 양쪽에서 발사하는 레이져는 어떻게 사격해야좋을지 기획하기 어려운부분인 것 같다.






17) 18) 아카리파인 어나더 (터치제스처로 공격)


- 유니티


마법봉과( 장전하고 쏘면 데미지증가 ) 총장전 커맨드에 관한 터치커맨드 연구관련 영상.





19) 씰 개념 전투방법 ( 실시간 턴 )


- 유니티


같은 리소스로, 일정 스테미나가 차면 자동으로 공격하러 나가는 반턴제 게임방법.


버그가 좀 보이지만 중간에 기획단에서 애매해져서 이렇게 저렇게 만들어보며 테크니컬 테스트만 진행했던 영상들.





대학생 때 만들었던 다이어리( VB6 ) 대학교 4학년 학술제 입상작(2등)

Modena ver CE(CanvasEdition) 4.5 iTheme & Modena PE(PortableEdition) 4.6 + iTheme



당시 버전은 더 낮았고( 최초 숙제 제출용은 1.x / 학술제용은 3.x대였음 ) 유아이도 거추장스러웠던 기억이 있다.


네이버 글에디터를 참고하여 UI를 대중적으로 이쁘게 바꿈.


기본기능

- 리치텍스트 수정가능한 대부분의 기능 ( 폰트 / 그림추가 / Ctrl+C -> V )

- DTPicker를 활용한 달력 네비게이션기능 ( 해당 날짜에 일기가 있으면 그 날짜는 진하게 표기됨 )

- 리스트박스를 활용한 네비게이션기능 ( 일기가 있는 날짜와 제목표기하여 바로 이동 및 버튼 또는 단축키로 순차이동 가능 )

- 오른쪽의 네모버튼을 누르면 옵션창이 나타나며, 환경설정을 저장가능 ( 배경색, 버튼동작방법 -마우스오버 또는 마우스클릭, 키 효과음 변경 )

- 키 효과음 ( 키를 누르면 '탈칵' 소리가 스피커로 나옴. 옵션에서 수정가능 )

- 문서수정시간표기 ( 저장 )

- 자동저장기능


체인컬러(한칸띄우면 2~5개의 색상- 커스터마이징 가능 -으로 순차적으로 바뀜) / 마우스휠안내 / 테마 등을 추가한 최신버전밖에 보존하지 못했다.







서울게임아카데미 습작 스크린샷 모음


1) 오목오목오목

- 2D WindowsAPI


흑->백 차례로 돌을 놓을 수 있으며 제한시간이 지나면 놓지 못함.
가로세로대각선 돌이 5개면 승리.



2) 아니팡

- 2D WindowsAPI

WINAPI로 제작, 3개이상이 되면 없어지며 새로운 블럭이 생성되어 내려오는 형태.


부드럽게 팡~ 하고 터지며 내려오는 애니메이션 없이, 하루숙제로 만들어온 게임.



3) 지뢰찾기

- 2D WindowsAPI


지뢰찾기. 처음 누른곳은 무조건 지뢰가 아니고, 빈곳을 누르면 검사하여 자동으로 펼쳐준다. ( 상하좌우만 검사 )

깃발기능은 존재하지 않음(!)



4) 타일스왑퍼즐


- 2D WindowsAPI


부드럽게 움직이는게 특징이라 영상도 첨부합니다.

키보드로 움직이며, 완성시 '완성'이라고 표시해줍니다.



5) 틀린그림찾기

- 2D WindowsAPI


총 3개 스테이지로 구성, 틀린 그림 위치가 있어 해당 위치(양쪽모두) 클릭시 동그라미.
틀린위치 클릭시 시간감소.
시간 1분이 지나면 다시 첫스테이지로,
5개항목 맞추면 다음스테이지로 이동.



6) 상점 / 인벤토리 세트

- 2D WindowsAPI


1) 아이템페이지가 3장 있으며,
오른쪽 클릭시 구입하여 아래에 스택함.
돈이 없으면 구입불가.


2) 구입한 아이템들을 장착가능한 페이지.
무기는 양손무기가 가능하여 한쪽에 차고있으면 다른쪽에 차게됨.
양쪽에 차고 있으면 오른손무기만 바뀜.
해당 무기 스텟에 맞춰 능력치가 바뀜.
왼쪽 아이템창은 마우스휠로 스크롤 가능.



7) 탱크게임 맵에디터

- 2D WindowsAPI


맵 타일을 배치하여 저장(TXT)가능.
플레이시 이동속도가 물은 0.5, 도로는 1.5배로 이동가능.
벽은 HP가 있어 점점 부서지는 이미지로 바뀌며 최종 없어짐 구현



8) 미니맵 이동 / 유닛선택조종

- 2D WindowsAPI


미니맵 구현.
컨트롤( 전,후진 / 좌,후 각도전환 ) 가능. 스프라이트는 그에 맞게 적당한 각도에서 해당 스프라이트로 변환.

Unit을 상속받아 움직이도록 설계

BC(배틀크루져) CR(캐리어) OV(오버로드) 를 1,2,3 으로 전환하여 해당 유닛이 있는 화면으로 자동이동 후 조종가능



9) 베리플레이어 FMOD

- 2D WindowsAPI + FMOD


아카베리의 베리를 따서 만든 베리플레이어.

UI 기능동작 중 볼륨부분 구현이 제일 재미있던 기억이 있다.

나머지 기능은 큰 어려움 없이 모듈만 붙이면 되는 관계로 어려운 부분은 없었다.


10) 다익스트라 ( D3D9 )

- DirectX9 : Dijkstra 시뮬


다익스트라 알고리즘 시뮬로서, 스피어를 클릭시 해당 위치로 알고리즘에 기해 질럿이 줄을 따라 등속이동함.
시작위치는 블루, 도착위치는 레드.


아래 엑셀파일은 선생님이 내준 문제를 엑셀에 옮겨 풀어내는 과정을 직접 만들어본 파일의 스크린샷.


11) A-Star 시뮬레이션 ( D3D9 )

- DirectX9 : ASTAR 시뮬레이션


다이렉트X (C++)로 제작, A* 알고리즘으로, 양쪽에서 질럿이 나와서 반대편 박스로 이동하고, 시간별로 까만색의 장애물박스가 랜덤하게 생성됨.

생성되면 다시 계산하여 이동함.


아래 엑셀파일은 선생님이 내준 문제를 엑셀에 옮겨 풀어내는 과정을 직접 만들어본 파일의 스크린샷.







그 외) 현재 진행중인 PROJECT.



-ACAShipBattle


- ACAShipBattle UI


- ACAShipShooter UI


- ACAShipShooter InGame


- TimmingGame


- SlotCarGame


- HexaPuzzleGame



- 애니포트레이트 / 타일기능


타일기능이 생겼다길래 한번 써봅니다.

애니포트레이트 에셋 구매해서 일주일동안 삽질도 많이 했었지요 ㅠㅠ.. ( 현재는 저 눈 뎁스 관련은 해결된 상태 )





4. 기타 활동사항


1) 네이버 유니티 카페

네이버 유니티 카페 가입일 ( 2014-10-8 ) 게시글 답변수 88개( 2018-05-03 기준 ) 댓글 314개




2) 네이버 카페


http://cafe.naver.com/unity1thdeveloper


팁 공유카페로 만들었지만 혼자쓰는 망한 카페(...)




3) 유니티 공부해요 티스토리


http://younitystudy.tistory.com


유니티 팁 + 면접정보 기초지식 공유 티스토리

'★ 포트폴리오' 카테고리의 다른 글

프로그래머의 포트폴리오 설명부  (0) 2018.04.17

+ Recent posts