프로젝트 Final(3차) 발표 학번: 2010181024 이름: 이정훈.

Slides:



Advertisements
Similar presentations
2D 게임 프로그래밍 프로젝트 학과 : 게임 공학과 학번 : 이름 : 최우진.
Advertisements

2D 게임 프로그래밍 1 차 프로젝트 배태민. 목 차목 차 ◎ 게임컨셉 ◎ 게임플레이 ◎ 개발범위 ◎ 개발일정.
1 파일 및 폴더 다루기 A. 파일이란 : 응용프로그램을 이용해서 만든 사용자가 만든 정보의 집합 - 파일 형식 : 이름과 확장자로 이뤄짐 예 sample.txt 샘플.txt - 복원하려면 휴지통에서 파일선택 후 드래그해서 밖으로 이동 혹은 RESTORE B. 확장자의.
Popcon 이규태 김준수 강예진. 목차  Popcon 이란  개발동기 및 목적  필요성  차별성  설계  개발일정  기대효과 및 향후 계획.
게임엔진 Term Project 학번 : 이름 : 오민형 2D 게임 프로그래밍 Project.
3D 캐릭터 제작은 쉽고 빠른 Poser Pro가 좋다.. Camera를 내 마음대로 사용하자  단계 1 : Main Camera  단계 2 : Camera Controls panel.
프로젝트 2차 발표 학번: 이름: 이정훈.
난이도 : 초급 제1장 앱 인벤터 소개 및 준비.
1차 발표: Control Artist 학번: 이름: 서민성.
컴퓨터프로그래밍 1주차실습자료 Visual Studio 2005 사용법 익히기.
게임 엔진 : 프로젝트 PPT_3 참참참 김 현 원.
3D Project Cloud Warcraft 박 종 선.
Revenge of the Zombie:2차 발표
2d 게임 프로그래밍 기말 프로젝트 1차 발표 김대현.
Report #2 - Solution 문제 #1: 다음과 같이 프로그램을 작성하라.
J2ME Install 부산대학교 인공지능 연구실.
Open Graphics Library 팀 명 : Spes 송정웅 김정환
1차 발표: 프로젝트 발표 가이드라인 학번: 이름: 강병욱.
D / K / I / T / E / C / H / N / O / L / O / G / Y
스크래치 언어 이해 스크래치 이용법 습득 고양이가 말을 하며 움직이는 예제 작성
Eclipse 를 이용한 네트워킹 퍼즐 게임 “Scrambled Net” 담당 교수님 전진우 교수님 최은아.
3차 발표: 프로젝트 발표 학번: 이름: 주창환.
10강. JSP 본격적으로 살펴보기-II 스크립트릿, 선언, 표현식 지시자 주석 Lecturer Kim Myoung-Ho
지도교수 : 이상훈교수님 학과 : 컴퓨터시뮬레이션 학번 : 이름 : 진선미
2d 게임 프로그래밍 galaga 유진명.
1차 프로젝트 발표 GAME ENGINE 게임 공학과 이성진.
Unity로 만드는 안드로이드 앱 유니티 프로젝트의 구성 Made by Karoid.
프로젝트 발표 가이드라인 학번: 이름: 홍길동.
OPENGL Project 결과보고서 (알카포네의 다이어트)
WIN32 API 대전 TETRIS 시스템제어 허준호 박정욱 손경원 신동헌.
STOPWATCH 박새별.
2DGP 2차발표 유창민.
2D게임 프로그래밍 1차 발표 자료 정재훈.
2D Game Programming Project 1
2강_첫번째 안드로이드 프로젝트 에뮬레이터(AVD) 만들기 처음 만들어 보는 프로젝트 전체적인 구성 살펴보기
인체 대 탐험 3D GAME ENGINE 게임 공학과 이성진.
2D 게임 프로그래밍 BUBBLE BOBBLE 제민경.
3주차 오늘은 2주차에 만든 모형의 문제점이 뭘까 생각하면서 더 멀리 날아갈수 있게
Tween Animation 천승현.
2D 게임프로그래밍 프로젝트 스틱 파이터 Stick Fighter 박하은.
2D게임 프로그래밍 프로젝트 총은 사기입니다(가제) 박상윤.
Java , 안드로이드를 이용한 ‘사천성’ Game
P.S.S 3G 60% 비시바시 프로젝트 10월 21일 (월요일) 밀어서 잠금해제.
컴퓨터 그래픽스 프로젝트 신형민 이정훈 차봉덕.
2D게임 프로그래밍 1차 프로젝트 배태민.
종이비행기가 잘 날기 위한 조건 만든이:김윤성.
게임공학과 장민석.
1차 발표: 프로젝트 발표 안내 및 형식 학번: 이름: 김경우.
늑대인간 황 보 선.
3차 발표: 양궁 게임 학번: , 이름: 조형윤, 박지훈.
2D 게임프로그래밍 프로젝트 발 록 런 김대호.
애니메이션 제작 기법 2D 애니메이션 3D 애니메이션 임희영.
걸리버의 자전거 S T E A M 연세대학교 산학협력단 STEAM 연구회-
가둬라 버블버블! 터트려라 팡팡!.
2D game programing 게임공학과 임종현.
2D 게임 프로그래밍 프로젝트 박태언.
2D 게임 프로그래밍 제안서 김보명.
2D 게임프로그래밍 프로젝트 - Air Clear 심석용.
학번 : 이름 : 김종걸.
Spiritual Soul 3 학번: 이름: 김은기.
학번: 이름: 견정수 학번: 이름: 장성우 학번: 이름: 조재훈
OpenGL 프로젝트 「링 통과하기」 게임&멀티미디어 이인석.
2D Game Programming 1차 발표 배강산.
김덕용 게임 엔진론 Project 2차발표.
2011학년도 졸업작품 주제 발표 -카메라 기반 제스처 인식 UI-
컴퓨터는 어떻게 덧셈, 뺄셈을 할까? 2011년 10월 5일 정동욱.
플래시MX2004 디자인스쿨 Chapter 11. 플래시와 사운드.
M.B.TEAM 중간 발표 (5.18) 이 제걸 백 인호.
7 생성자 함수.
3D 농구 슛 시뮬레이션 이세기.
Presentation transcript:

프로젝트 Final(3차) 발표 학번: 2010181024 이름: 이정훈

Concept Arts ▼ 3DS MAX로 만든 game play concept gif 애니메이션 리소스 출처 : 1. 3D Models - http://archive3d.net/ 2. Background Texture - http://www.cgtextures.com/

게임 흐름(1)

게임 흐름(2)

I have done this 구현할 내용 Amount ( 구체적인 수치) 설명 비고 말풍선을 통한 감정 표현으로 대체 구현 OgreBullet의 RigidBodyCollision 을 이식한 월드 구현 컬링 스톤의 이동과 오브젝트들의 충돌을 Ogre용 Bullet Physics 엔진으로 구현 OgreBullet 사용이 불가하다면 직접 충돌 구현 24가지 조합의 컬링 스톤이 나오는 커스터마이징 구현 Trash Bin Bottom Parts : 3 X Trash Body Parts : 2 X Game Characters : 4 = 24 24가지 결과가 나오는 조합으로 전략적인 플레이가 가능하다. 여력이 된다면 추가로 더 많은 parts와 캐릭터들을 구현할 예정 컬링 스타디움 형식의 맵 1 디폴트(Default) 맵으로서 이전의 gif 애니메이션같지 않고 대충이나마 관중도 표현. I/O로서 드래그 앤 드롭 방식 플레이와 커서 스위핑 드래그 앤 드롭 방식의 interaction은 curling stone을 출발시키는 데 쓰이고, 커서 스위핑은 컬링의 스위핑에 쓰인다. UI와 게임 로직 메인 메뉴와 ESC를 눌렀을 때 뜨는 메뉴, 그리고 룰렛과 게임 판정, 플레이를 위한 로직 구현. Artificial Inteilligence와 게임 상태 저장 및 불러오기 컴퓨터와 1대 1 대전을 위하여 구현. State Machine 구현을 통한 구현. 경로 계산은 Bresenham 알고리즘을 이용한다. 캐릭터 별 애니메이션 3종 세트 캐릭터 수 : 4 X 애니메이션 수 : 3 = 12 캐릭터 별로 ‘기쁠 때(승리, 득점 등 ), 슬플 때(패배, 실점 등), 당황할 때(클릭, 자석에 이끌림)’ 구현 추가로 구현해야 된다면 더 구현. 카메라 탑 뷰, 리플레이, 타겟 트래킹 탑 뷰 : 전략 분석용 타겟 트래킹 : 오브젝트들이 움직일때 리플레이 : 경기 다시보기 말풍선을 통한 감정 표현으로 대체 구현

Characters’ Abilities Name : Octopus(가칭) Ability : 반경 1m내의 캐릭터 1명을 촉수로 끌어당겨서 붙잡고 있을 수 있다. Weight : 1 kg Material : Plastic * 정확한 수치에는 변동이 있을 수 있음. Name : Duck(가칭) Ability : 일정 주기로 “꽥꽥"대면서 진동해 쓰레기통이 조금씩 Random하게 움직이게 한다. Weight : 0.5 kg Material : Plastic + Iron Name : Teddy(가칭) Ability : 별 다른 특징 없이 무겁기만 하다. Weight : 3 kg Material : Fabric + Iron Name : Magnet(가칭) Ability : 쇠로 된 물체를 끌어당기거나 같은 Magnet과 특정방향으로 끌어당기거나 밀쳐낸다. Weight : 2 kg Material : Iron

Review +말풍선을 통한 감정표현 3차 발표 게임 캐릭터 어빌리티 및 그라운드 스위핑 구현 스톤 커스터마이징 구현 세부 AI 및 게임 저장과 불러오기 구현 게임 다듬기 및 디버깅, 테스트 +말풍선을 통한 감정표현

삽질 (1) 기존 소스 코드를 State Pattern과 Component 기반으로 전환 완료했으나, 이미 전환하기 이전부터 꼬인 스파게티 면발 같았던 소스였기 때문에, 디버깅으로도 잡을 수 없는 런타임 에러가 꼬리에 꼬리를 물어 시간만 허비한 꼴이 되었다.

삽질 (2) Curling stone customizing을 위한 Bottom Parts 구현을 위해 Body Part에 바퀴를 달 수 있는 방법에 대해 알아보았으나, Bullet이 지원하는 Constraint라 하는 관절들 중에는 바퀴 구실을 할만한 것이 없었고, 할 수 있는 유일한 방법은 Bullet이 지원하는 Vehicle 객체를 이용하는 것이었다. 그런데 기존의 Stone에 Vehicle을 이용하여 바퀴를 달면 땅에 바퀴가 박히거나 바퀴와 Stone이 상호작용의 무한루프를 이루며 안드로메다로 날아가버리는 현상이 생기는데, 이를 해결하고자 시간을 쏟아 부어도 도무지 방도가 나오질 않아 이 역시 포기해야만 했다. ◀무한히 바퀴와 충돌하며 안드로메다로 날아가고 있는 컬링스톤

게임을 State Pattern과 Component 합성 기반으로 잘 설계하고 코딩하자 ! 삽질로 뼈저리게 느낀 ‘반성할 점' 게임을 State Pattern과 Component 합성 기반으로 잘 설계하고 코딩하자 ! 내가 예전에 짠 코드를 미래의 내가 알아볼 수 있게 코딩하자 ! 과욕을 부리지 말자 ! 이상과 현실 사이의 괴리를 제대로 인지하자 !

캐릭터 고유 Ability를 통한 캐릭터 간의 상호작용 구현 게임 저장 및 불러오기 캐릭터들의 emotion 말 풍선 구현 2차 발표 이후 구현한 사항들 캐릭터 고유 Ability를 통한 캐릭터 간의 상호작용 구현 게임 저장 및 불러오기 캐릭터들의 emotion 말 풍선 구현 AI를 더 현실적으로 바꿈 Sky box를 concept에 맞게 upgrade

물리엔진이 simulation하는 동작들이 내가 예상하는 것들과 많이 다를 때가 많아서 힘들었다. 어려웠던 점 Ogre 1.9와 Bullet 2.82 간의 호환성이 떨어지는 부분이 좀 있었다. 이러한 수렁들 때문에 개발하기 난해하였다. ( ex – 애니메이션과 충돌형태, constraint … ) 물리엔진이 simulation하는 동작들이 내가 예상하는 것들과 많이 다를 때가 많아서 힘들었다.

이미 2차 발표 이전에 하나의 게임이라 칭해도 무방할 정도의 완성도를 보였다. 잘된 점 인터넷 상에 각각 최신 버전인 Ogre 1.9 버전과 Bullet 2.82 버전을 통한 게임 제작에 대한 내용이 거의 전무한데 그럼에도 불구하고 갖은 고초 끝에 실행은 물론 그럴싸한 게임을 만들어냈다. 이미 2차 발표 이전에 하나의 게임이라 칭해도 무방할 정도의 완성도를 보였다. 말 풍선, 게임 저장과 불러오기 등을 통해 좀 더 그럴싸해졌다.

게임 시연 완성한 버전을 시연해보도록 하겠습니다.