KGCA 15기 졸업작품으로 참여 한 3D 호러 게임
내부지형 관련을 맡아서 제작 하였습니다.

1. 팀명
   - (팀)사랑
     팀원의 99%가 솔로. 올 겨울엔 사랑을 하며 게임을 제작하자는 취지 하에 조직된 팀.
     팀원 서로간에 사랑으로 감싸주는 최고의 팀이 되자는 의미.

2. 팀구성원
   - 기획 : 이정현, 장광수
   - 프로그램 : 이창희, 임수진, 허재석, 설태영, 엄효원, 이미진, 임진영
   - 그래픽 : 김주관, 김영준, 김용민, 안보라, 안재희

3. 게임명
   - 월광(月光)
     서양에서의 달은 악의 상징
     게임 설정상 살인마들은 보름달의 뜨는 날에 살인을 즐김

4. 제작 목적
   - kgca 15기 졸업 프로젝트
   - 각 파트별 실력향상

5. 개발 기간
   - 2008년 10월 ~ 2009년 2월(약 5개월)

6. 게임 장르
   - 호러 어드벤쳐

7. 게임 시점
   - 1인칭 카메라뷰

8. 게임 주요 시스템
   - hand­held 카메라 기법
     hand­held 카메라 기법은 사람이 카메라를 직접 들고 찍는 기법으로써 최근 개봉한 [REC]와 [클로버필드]에서 사용된 적이 있습니다.
     이 촬영 기법의 장점은 생생한 현장감이 느껴지고, 3인칭 시점으로 접근하는 작품들은 많은 정보를 제공하는 반면,
     1인칭 시점의 경우는 주인공과 동일시할 수 있는 요소를 제공하기 때문에 공포감을 극대화 할 수 있습니다.

   - 불안 장애
     사람이 어두운 곳에 오래 있게 되면, 심장박동이 빨라지고, 정서적으로 불안해 집니다.
     이 증상이 심해 지게 되면 환청 및 환각 증상 까지 나타나게 됩니다.
     이 불안장애 증상을 게임에 이용.
     게임상 적의 시야에서 잠시나마 숨을 수 있는 곳은 대부분 어두운 장소입니다.
     그러나 이 어두운 곳에 오래 머물러 있으면, 불안장애 현상이 일어나서 게임을 컨트롤 할 수 없는 상황이 생기게 됩니다.
     때문에 플레이어는 주기적으로 밝은 곳으로 나가 이 수치를 낮춰 줘야 합니다.
     이 시스템을 이용하면 어둠고 안전한 곳이 언젠가는 위험한 장소가 되는 양면성 구조를 가질수 있고,
     적이 있는 밝은 곳에 주기적으로 나가야 하는 위험한 행동을 함으로써 스릴을 느낄수 있을꺼라 예상 됩니다.

   - 동행 NPC
     게임 진행상 플레이어는 항상 npc한명과 같이 도망 다녀야 합니다.
     동행 npc가 죽게 되면은 게임이 끝나기 때문에 따라와, 멈춰 등의 명령 커맨드를 상황에 맞게 사용해서 동행 npc를 보호 해야 합니다.
     동행 npc역시 불안장애 수치가 있습니다.
     동행 npc의 불안장애가 발동하게 되면 적에게 발각 되거나 위험한 상황에 처할지도 모르기 때문에 수시로 확인해야 합니다.

9. 게임 툴 설명
   - 케릭터툴, 맵툴, 이펙틀 툴의 기능을 모와 한번에 작업이 가능하게 구현함.
   - 별도의 작업 없이 이벤트 툴의 기능으로만 게임에 필요한 이벤트를 제작 할 수 있도록 구현함.




'Develop > Game' 카테고리의 다른 글

[3D게임] 월광 ( Moon Shine )  (4) 2009.02.12
[API] 무궁화 꽃이 피었습니다.  (2) 2008.04.06
Don't Catch King Mosquito  (0) 2006.09.11
posted by deviAk


[2008. 12. 15. 작업일지]

오늘 아침 6시까지 작업을 하고 2시간 자고 학원에 갔다.

요새 점점 수면시간이 줄어 들고 있다.
사람이 다급해지니깐 수면시간이 확 줄었는데도 피곤하지가 않다.

학원에서는 팀내 일이 있어서 툴작업은 아예 못하고 몇몇 버그 정도 수정만 하였다.

현재 간단히 셰이더를 넣어서 대충 게임 배경과 비슷하게 연출 해 보았다.
카메라 방향쪽으로 광원을 주어 카메라가 보는 곳만 살짝 밝아진다.
(위에 스샷 2장은 같은 위치에서 카메라만 살짝 돌려 찍은 스샷이다.)

학원에서 돌아와서 픽킹 작업을 검사로직까지 구현하였다.

이제 픽킹 마무리 짓고 BSP 분할로직을 구현하면 뒤엎기전의 툴의 90% 이상 복구가 된다.




오늘 내년도 병특 TO를 오늘 확인하게 되었는데... 정말 하루 2시간 수면도 아깝다는 생각이 든다..
점점 병특 TO가 줄어 든다는 것이 느껴진다...

'Develop > Map Tool 3D' 카테고리의 다른 글

2008. 12. 15. 작업일지  (0) 2008.12.16
2008. 12. 14. 작업일지  (0) 2008.12.14
2008. 12. 12. 작업일지  (0) 2008.12.12
2008.12.08. 작업일지  (0) 2008.12.08
2008.12.06. 작업일지  (0) 2008.12.06
2008. 12. 05. Indoor Polygon Divide Logic  (0) 2008.12.05
2008. 12. 05. Map Editor  (0) 2008.12.05
2008.12.03. MapEditor  (0) 2008.12.03
D3DCOLOR <-> COLORREF  (0) 2008.11.29
내부지형 구조체  (0) 2008.11.28
2008.11.20. MapEditor  (0) 2008.11.20
posted by deviAk

[2008. 12. 14. 작업일지]

주말 버닝으로 코드 및 로직이 다 바뀌었다.

아직 기존툴 기능이 다 구현되지는 않았지만 맵파일 로드에서 부터 랜더까지는 완벽하게 된다.

예전 툴에 비해 퍼포먼스도 상당히 많이 올라갔다.
기존툴에서 전체 맵을 출력할 때는 고작 60fps 가 200fps 정도로 엄청나게 올라갔다.
기존의 툴은 DrawPrimitiveUP을 썼었고 새로운 툴은 DrawPrimitive를 쓰며 호출 횟수도 상당히 줄었다.

새로운 툴의 구조가 상당히 바뀐게 눈으로도 보인다.
기존에 없던 섹터클래스나 포탈클래스 그리고 BSP 로직을 바꾸면서 필요한 익스포터 된 파일을 필요한 데이터 포맷으로 바꿔주는 컨버터 클래스 ( 뭥미... ) 등 새로운 것들이 추가 되었다.

그리고 이번 코드는 기본이 쉐이더 코드로 작성 하였다.

기존 코드도 그냥 참고하는 식으로 부분부분만 가져다 쓰고 다 새로 작성하다보니 조금 오래 걸리긴 했다.
중간중간 로직 구상하는데도 시간이 좀 걸리고 말이다.

어서 기존툴정도의 기능을 복구 해야 할탠데 말이다.
픽킹이나 BSP분할 등  추가해야 할 기능들이 너무 많다.. ㅠㅠ

<< 2008년 12월 14일 오후 11시 29분 추가 >>


MapView 클래스의 일부분이다.

CTranslation 이란 중계 클래스를 만들었다.
CTranslation 클래스는 Lib 와 Tool 셋팅 값들을 중계 하는 클래스 이다.
앞으로 Lib와 툴의 셋팅정보는 저 클래스를 통하여 데이터를 주고 받을 것이다.

지금 막 카메라에 대한 정보만 살짝 넘겨 봤는데 제대로 작동 하고 있다.





'Develop > Map Tool 3D' 카테고리의 다른 글

2008. 12. 15. 작업일지  (0) 2008.12.16
2008. 12. 14. 작업일지  (0) 2008.12.14
2008. 12. 12. 작업일지  (0) 2008.12.12
2008.12.08. 작업일지  (0) 2008.12.08
2008.12.06. 작업일지  (0) 2008.12.06
2008. 12. 05. Indoor Polygon Divide Logic  (0) 2008.12.05
2008. 12. 05. Map Editor  (0) 2008.12.05
2008.12.03. MapEditor  (0) 2008.12.03
D3DCOLOR <-> COLORREF  (0) 2008.11.29
내부지형 구조체  (0) 2008.11.28
2008.11.20. MapEditor  (0) 2008.11.20
posted by deviAk

[2008. 12. 12 작업일지]

BSP 내부지형 자동 분할 기능을 제작 하던 중 맵 툴의 전반적인 수정이 필요하다는 결론을 내렸습니다.
지형 맵이 큰데다가 로직이 잘 못 되었는지 2진트리를 타고 들어가는 재귀호출하다가 스택 오버플로어가 일어 나더군요.
일단은 주말 동안 풀버닝으로 다른 구조와 형태로 맵에디터를 제작 하려 합니다. ( 이미 작업 시작 했음 )

3D Max 를 신뢰 했다 된통 당했습니다.

1. 그래픽 디자이너가 만들어준 지형이 유닛 단위가 cm 에서는 일치 하였지만 mm 단위에서 0.000 단위의 오차가 생깁니다.
일단 위의 오차는 자체 포맷으로 익스포터 된 데이터를 로더 할 때 소수점 첫번째 자리에서 반올림으로 처리하기로 결정냈습니다.

2. 왜인지는 모르겠지만 노말값이 0.0f, 0.0f, 0.0f 인 데이터가 있다는 점입니다.
노말값이 없는 데이터 때문에 분할할때 이 면을 나눌면으로 잡혀서 무한루프 도는 현상을 발견했습니다.
이 또한 로더에서 노말값이 없는 데이터는 읽지 않도록 처리 하기로 결정 냈습니다.


최종 결론은 일단 주말동안 툴 새로운 로직으로 새로 작업 하기로 결정.

현재 생각 중인 새로운 로직은 2가지 정도
1. BSP 보단 툴에서 포탈을 생성하여 포탈형 배열 구조로의 변경
2. BSP 로직 수정 및 포탈형 구조도 포함 ( 원래 하려 했던 계획 PVS 까지... )

'Develop > Map Tool 3D' 카테고리의 다른 글

2008. 12. 15. 작업일지  (0) 2008.12.16
2008. 12. 14. 작업일지  (0) 2008.12.14
2008. 12. 12. 작업일지  (0) 2008.12.12
2008.12.08. 작업일지  (0) 2008.12.08
2008.12.06. 작업일지  (0) 2008.12.06
2008. 12. 05. Indoor Polygon Divide Logic  (0) 2008.12.05
2008. 12. 05. Map Editor  (0) 2008.12.05
2008.12.03. MapEditor  (0) 2008.12.03
D3DCOLOR <-> COLORREF  (0) 2008.11.29
내부지형 구조체  (0) 2008.11.28
2008.11.20. MapEditor  (0) 2008.11.20
posted by deviAk

2008.12.03. MapEditor

Develop/Map Tool 3D 2008.12.03 04:13

현재까지 Map Editor 진행 상황

BSP 공간 분할에 대한 작업을 하고 있다.

일단 분할면을 기준으로 앞, 뒤의 폴리곤 들은 제대로 분류가 가능하나 겹치는 부분에 대한 처리를 하지 않았다.

또한 트리를 이용하여 Node 정보를 보여주며 노드나 폴리곤 선택시 그 부분만 출력이 가능 하도록 제작 완료.

'Develop > Map Tool 3D' 카테고리의 다른 글

2008. 12. 14. 작업일지  (0) 2008.12.14
2008. 12. 12. 작업일지  (0) 2008.12.12
2008.12.08. 작업일지  (0) 2008.12.08
2008.12.06. 작업일지  (0) 2008.12.06
2008. 12. 05. Indoor Polygon Divide Logic  (0) 2008.12.05
2008. 12. 05. Map Editor  (0) 2008.12.05
2008.12.03. MapEditor  (0) 2008.12.03
D3DCOLOR <-> COLORREF  (0) 2008.11.29
내부지형 구조체  (0) 2008.11.28
2008.11.20. MapEditor  (0) 2008.11.20
Map Tool 제작에 앞서...  (0) 2008.08.07
posted by deviAk