Presentation is loading. Please wait.

Presentation is loading. Please wait.

땅 따먹기 박중규,나민하 나와 바~악!.

Similar presentations


Presentation on theme: "땅 따먹기 박중규,나민하 나와 바~악!."— Presentation transcript:

1 땅 따먹기 박중규,나민하 나와 바~악!

2 시작하기전에… 게임은 종합적인 집합체. 시나리오, 프로그래밍, 그래픽, DB, 물리학, 인공지능, 네트워크, 사운드등등..
관심있을 만한 부분들과 땅따먹기 게임에 필요한 물리학에 대한 개략적 설명. 비쥬얼C++, 사운드, DB는 제외.

3 목차 게임 산업 게임 시나리오 DirectX Graphic 물리학 인공지능 네트워크

4 게임 산업

5 게임시장 규모(1) [세계 게임시장규모] (단위:억불) 구분 금액 23 27 17% 30 11% 34 13% 39 15%
[세계 게임시장규모] (단위:억불) 구분 1999 2000 2001 2002 2003 금액 성장률 Pc게임 23 27 17% 30 11% 34 13% 39 15% 가정용 130 138 6% 156 185 18% 245 32% 업소용 756 982 30% 1290 31% 1700 2108 24% 온라인 45 65 44% 120 57% 160 240 50% 합계 954 1212 27% 1578 2079 2632

6 게임시장 규모(2) [국내 게임시장규모] (단위:억원) 구분 1999 2000 2001 2002 2003 금액 Pc게임 가정용
[국내 게임시장규모] (단위:억원) 구분 1999 2000 2001 2002 2003 금액 성장률 Pc게임 860 1032 20% 1290 25% 1677 30% 2180 가정용 38 190 400% 1140 500% 3420 200% 6840 100% 업소용 7900 9480 11376 14220 17775 온라인 216 432 648 50% 972 1458 합계 9014 11312 24% 14454 20289 40% 28253 39%

7 국내 게임산업의 문제점 게임 개발의 편중화 및 장르의 획일화 게임산업의 투자 마인드 이해의 부족
게임산업과 다른 엔터테인먼트 산업과의 교류부족 게임 교육기관의 엉성한 커리큘럼 정부의 게임산업 지원의 단일 창구화

8 시나리오

9 게 임 의 종 류 아케이드(기획☆☆☆☆,스토리 ☆) 시뮬레이션(기획☆☆☆,스토리☆☆) 롤플레잉(기획☆☆,스토리☆☆☆) 어드벤쳐(기획☆,스토리☆☆☆☆)

10 게임 시나리오란 게임에 적합한 이야깃거리이다. 게임기획서와 시나리오의 차이 재미있는 이야기여야 한다.
게임으로 만들어 낼수있는 이야기여야한다. 게임기획서와 시나리오의 차이 게임시나리오는 이야기거리이다. 기획서는 어떻게 게임을 만들겠다는 것이다.

11 게임 시나리오란 이야깃거리 게임줄거리 게임기획서 판매&홍보전략

12 DirectX

13 목 차 DirectX 입문 GDI/MCI와 DirectX 비교 DirectX의 작동원리 DirectX의 구조 HEL과 HAL DirectX의 구성요소

14 directX입문 DirectX는 1995년에 처음 도입되어 현재는 윈도우 플랫폼에서 멀티미디어 어플리케이션을 개발하는 하나의 표준으로 인식되고 있음. DirectX는 프로그래머들이 윈도우를 통해 직접적으로 하드웨어를 통제하기 위한 목적으로 마이크로소프트에서 개발한 API 비디오, 오디오, 입력, 네트워킹, 설치 등을 추상화 하는 소프트웨어 시스템. Direct X 기술은 초기 Windows 인터페이스인 GDI(Graphics Display Interfacs)/MCI(Media Control Interface)보다 몇 배는 훨씬 빠르고 견고하다.

15 Standard Win32 GDI/MCI Game
fast/primitive fast slow/fewoptions Graphic device interface media control interface WinSock Network Win32 Application User Input GDI MCI Lots of latency output Sound

16 DirectX DirectX Win32 Game Win32 Application DirectX Input Network
Sound output

17 (모든 장치에 대해 하드웨어 수준의 제어를 제공)
Direct X의 작동원리 Microsoft와 하드웨어 업자들 자체에서 작성한 드라이버 및 라이브러리 모음 컴포넌트 객체 모델 (Component Object Model ) DirectX (모든 장치에 대해 하드웨어 수준의 제어를 제공) User (DirectX호출)

18 GDI DirectX의 구조 Windows Win32 Application DirectX Sub-systems
DirectInput DirectDraw Direct3DRM Direct3DIM DirectSound DirectSound3D DirectMusic DirectPlay DirectSetup GDI/DirectX Interface GDI Low Level Drivers Windows DDI (Device Driver Interface) HEL (Hardware Emulation Layer) HAL(Hardware Abstraction Layer) Hardware : Video, Audio, Input….

19 ▷ 여러분의 시스템이 가지고 있지 않는 기능을 필요로 하는 멀티미디어 어플리케이션까지도 개발할 수 있음.
HEL과 HAL (HEL) HEL"Hardware Emulation Layer" ( 하드웨어 에뮬레이션 계층)를 사용하여 특정 하드웨어 장비를 시뮬레이션 함. ▷ 여러분의 시스템이 가지고 있지 않는 기능을 필요로 하는 멀티미디어 어플리케이션까지도 개발할 수 있음. HEL은 하드웨어와 같은 역할을 하는 소프트웨어 기반 드라이버를 제공

20 HEL과 HAL (HAL) DirectX는 "Hardware Abstraction Layer ( 하드웨어 추상 계층 )"를 제공하는데, 이것은 소프트웨어를 사용하여 게임 소프트웨어와 컴퓨터 하드웨어 간의 커뮤니케이션을 수행하는 것. 개발자들은 DirectX를 사용하여 기존의 많은 하드웨어 장비나 구성방식에 상관없이 자기 제품의 단일 버전을 개발할 수 있습니다.

21 DirectX의 구성 요소 DirectDraw DirectSound DirectSound3D DirectMusic
DirectInput DirectPlay Direct3DRM Direct3DIM DirectSetup

22 Graphic

23 목 차 Graphic 1. DirectDraw 와 2D Graphic 2. OpenGL 과 Direct3D
목 차 Graphic 1. DirectDraw 와 2D Graphic 2. OpenGL 과 Direct3D 3. 3D Modeling 4. Animation 5. Collision detection

24 Graphic (2D) DirectDraw Surface 화면에 그림을 그리는데 필요한 모든 함수를 포함.
Screen mode, Resolution, 등 화면 설정에 관한 기능. DirectX SDK 의 라이브러리들 중에서도 가장 중요. Surface 스크린에 나타나는 객체로써 화면의 정보를 담고 있다. DirectDraw 를 이용하는 것은 사실상 Surface 이용하는것이다. 기능과 용도에 따라서 Primary Surface, Back Surface, Offscreen Surface 라 부른다.

25 Graphic (2D) Surface 를 이용한 페이지 플립핑 Primary Surface Back Surface
Flip(); Primary Surface Back Surface CreateSurface(); CreateSurface(); Flip(); Offscreen Surface Blt(); or BltFast(); CreateSurface();

26 Graphic (2D) Masking 기법 스프라이트 이미지의 배경을 없애기 위한 방법
배경을 특수한 색으로 칠한후 Blt() 나 BltFast() 함수를 이용 BackScreen 에 뿌려줄 때 지정된 색을 제외하고 뿌려주게 하는 방법. 배경과 캐릭터가 자연스럽게 조합되는데 필수적.

27 Graphic (3D) OpenGL 과 DirectX OpenGL 과 DirectX 의 장단점
3D Library 의 양대 산맥으로 최근에 만들어지는 3D 게임의 거의 전부가 둘중의 하나를 택하고 있다. OpenGL 과 DirectX 의 장단점 OpenGL : Silicon Graphics 사의 다용도 플랫폼 독립적 그래픽 API 로 개발. 자주 변하지 않는 사양, DirectX 에 비해 뛰어난 Quality의 그래픽 제공. DirectX : Microsoft 에서 내놓은 게임 개발을 위한 API 집합으로 초기의 문제점을 극복한 9.0b 버전까지 나와 있는 상태. OpenGL 에 비해 빠른 Rendering 속도를 제공

28 Graphic (OpenGL) OpenGL 의 특징 DirectX 와는 달리 순수한 그래픽 라이브러리.
게임에서부터 3D 모델링, CAD 등 다양한 응용 프로그램에서 사용됨. 프로그래머에게 저수준 렌더링 루틴만을 제공. GDI(graphic device interface) 를 거치지 않고 직접 그래픽 하드웨어를 다룰수 있게 한다.

29 Graphic (OpenGL) 3D 모델링 3DS-MAX, Maya 가 대표적
게임 내에서의 Rendering 속도를 고려 mesh 의 수를 제한한다. VGA 메모리의 용량을 고려 텍스쳐의 양을 조절한다. 게임엔진이 제공하는 export plugin 이나 3DS-MAX 의 ASE 포멧, MilkShape 의 md2, md3 같은 포멧을 주로 사용한다.

30 Graphic (OpenGL) 3D Object 의 구조 게임의 성격에 맞는 구조를 선택
머리 다리 몸통 어께 팔목 허벅지 장딴지 게임의 성격에 맞는 구조를 선택 각 그룹은 물체를 이루는 정점의 좌표등으로 구성

31 Graphic (OpenGL) 에니메이션 (Keyframe animation)
Keyframe 과 Keyframe 사이의 정점의 좌표는 선형보간(linear interpolation) 을 이용하여 산출 0% 50% 100% (Vi) (Vc) (Vf) Vc = Vi + interpolatePercentage * ( Vf – Vi ) interpolatePercentage 의 값을 0.5 로 주었을 경우 50% 에 해당하는 정점의 좌표를 얻을 수 있다.

32 Graphic (OpenGL) 충돌처리 모든 mesh 의 충돌 여부를 판단하기에는 게임이 제 속도를 내지 못하게 될 우려가 있다. 경계구 , 경계상자, 평면충돌, Face별 충돌 처리 등의 기법이 있다. 단순한 객체들 간의 충돌 검사에 용이 경계구 충돌검사 경계상자 충돌검사

33 Graphic (OpenGL) 평면충돌 은 객체가 벽에 충돌 했는지의 여부를 판단하기에 적합한 방법
Face 별 충돌 검사는 보다 정밀하게 충돌 검사를 수행해야 할 필요가 있을 경우 사용 ex) 물체가 도우넛 모양의 구멍을 통과 해야 하는 경우 평면충돌 검사 Face 별 충돌검사

34 게임내 물리학 구현

35 목 차 게임 프로그래머를 위한 물리학 1. 서 론 2. 질점의 운동 3. 질점의 역학 4. 질점의 운동방정식 5. 미분 방정식
목 차 게임 프로그래머를 위한 물리학 1. 서 론 2. 질점의 운동 3. 질점의 역학 4. 질점의 운동방정식 5. 미분 방정식 6. 미분 방정식의 수치 해석법

36 서 론 (1) 파티클 효과 질 점 운동역학 게임에 물리학을 적용 할 경우 가장 초보적인 형태
서 론 (1) 파티클 효과 게임에 물리학을 적용 할 경우 가장 초보적인 형태 단순히 질점의 운동 역학을 처리하는 것 질 점 물리학에서 취급하는 대상 중 가장 단순한 것 물질의 점이라고 억지로 해석 물체를 단순히 수학적인 점으로 취급하는 것 운동역학 운동과 힘에 관한 학문

37 서 론 (2) 운 동 힘 운동 방정식 수치해석 물체가 공간 안에서 움직이는 것 운동에 변화를 일으키는 원인
서 론 (2) 운 동 물체가 공간 안에서 움직이는 것 운동에 변화를 일으키는 원인 운동 방정식 운동과 힘의 관계를 기술한 방정식 수치해석

38 질 점 의 운 동 질 점 물체를 단순한 수학적인 점으로 취급하는 것 파티클 효과 ‘퀘이크’, ‘스타트랙 – 칸의 복수’

39 질 점 의 역 학 운동에 변화를 일으키는 원인 힘에 관한 법칙 F = m * a 물체의 가속도 a = F / m

40 질 점 의 운 동 방 정 식 F = m * a F = m * A = m * dV / dt
질 점 의 운 동 방 정 식 F = m * a F = m * A = m * dV / dt = m * (dvx / dt, dvy/ dt) = m * dX / dt = m * (d²x / dt², d²y / dt²) F = 힘, A = 가속도, V = 속도, X = 위치 F(t), A(t), V(t), X(t)

41 미 분 방 정 식 미지수에 대한 방정식 미분 방정식 x - 7 = 0 ⇒ x = 7
미 분 방 정 식 미지수에 대한 방정식 x = 0 ⇒ x = 7 미분 방정식 f(t) = a * t² + b * t + c f’(t) = 2 * a * t + b f’’(t) = 2 * a f(t) ⇒ f’(t) ⇒ f’’(t)

42 미분 방정식의 수치 해석법 (1) 미분방정식의 수치적 해법 ∫ : 적분 기호 수치 적분 Sum(합), ‘더하기’ 를 의미
미분 방정식의 수치 해석법 (1) 수치 적분 미분방정식의 수치적 해법 ∫ : 적분 기호 Sum(합), ‘더하기’ 를 의미 Euler(오일러) Method Leapfrog(개구리뛰기) Two-step Implicit Adams-Bashforth Method

43 미분 방정식의 수치 해석법 (2) Euler(오일러) Method 가장 간단한 방법
미분 방정식의 수치 해석법 (2) Euler(오일러) Method 가장 간단한 방법 가장 간단하게 곡선아래의 면적을 얇게 쪼갠 기다란 직사각형 면적의 합으로 근사하는 것 직사각형의 가로 길이는 우리가 충분히 작게 쪼갠 독립변수의 델타 값이고, 높이는 우리가 적분하려는 함수값

44 인공지능

45 네트웍 게임에서의 인공지능의 필요성 게임유저가 접속하였을 때에도 상대를 해줄 수 있는 인공지능 캐릭(NPC)의 지능을 높일 필요성 증가.(ex) 퀘이크3 인공지능캐릭(NPC) 기존접속유저 게임 Playing 게임접속유저

46 인 공 생 명(Alife) 실시간 전략게임의 AI로써 인공생명 이론 응용. 생산이나 성장에 생물학적 진화의 개념을 도입.
Unit가 미리 각본에 주어진 데로 업그레이드 되는 것이 아니라 스스로 진화한다는 것. 유전자 알고리즘을 응용. 인공생명(Alife) AI에서 인공생명으로 기호 논리학에 기반을 둔 AI의 시대는 저물고, 신경망이나 퍼지이론이 등장. 크리츄어라는 게임으로써 이미 출시.

47 인 공 생 명(Alife)(2 유전자 알고리즘 생명체의 DNA유전자를 디지털로 모사하여 생명체의 진화를 모방하는 것.
인공지능처럼 인간이 미리 설계해서 넣어둔 알고리즘이 작동하는 것이 아니라 스스로 알고리즘을 찾아낸다는 것.

48 Move backward Fire weapon Move foreward STOP Attack Player Evade Player

49 퍼지를 이용한 인공지능 퍼지이론의 탄생과 발전 탄생 미국 수학자인 자데 교수가 1960년쯤에 처음으로 제안한 수학 이론. 발전
평소에 애매한 사고에 익숙해 있던 동양권에서 연구 발전. “이것은 뜨겁다.”와 같은 분명치않은 가설을 기초로하는 집합이론.

50 퍼지를 이용한 인공지능(2) 기존의 집합론 : 기준을 정하여 1 혹은 0을 정함. 퍼 지 집합론 : “소속도”라는 것을 통하여
  <<기존의 집합>> ┃    ┃     ●     ●   ●  ┃  ┃     ┗━●━┻━●━┻━┻━━  0  A  B  C   D  E  기존의 집합론 : 기준을 정하여 1 혹은 0을 정함. 퍼 지 집합론 : “소속도”라는 것을 통하여 어느정도 분류가 된다면 그것도 집합으로 인정. 소속도 : 어떤 원소가 속하는 정도를 수치로 나타낸 것  <<퍼지 집합>>  ┃                 ↑ ┃           ●       ┃                 소  ┃           ●   속  ┃      ●      도  ┃               ┃     ●         ↓   ┗━●━┻━┻━┻━┻━  0  A  B  C   D  E 

51 Network

52 온 라 인 게 임 (1) 소 개 개인용컴퓨터를 매개로하여 인터넷이나 통신 망을 통해 복수의 이용자가 서버에 접속하여
소 개 개인용컴퓨터를 매개로하여 인터넷이나 통신 망을 통해 복수의 이용자가 서버에 접속하여 플레이하는 게임을 의미 1980년 채팅기능 + 롤 플레잉기능 = 머드게임 1995년 그래픽 출력 기능을 추가한 머그게임이 상용화되면서 본격적인 게임시장 형성화

53 온 라 인 게 임 (2) 발전 양상 연도 제품 2000 2001 2002 2003 2004 네트워크 3차원 게임
네트워크 가상현실 게임 3차원 멜티플레이 온라인게임 가상현실 멀티프레이 온라인 게임 휴대용 2차원 네트워크 게임 휴대용 3차원 네트워크게임

54 네트워크구조 및 통신구조 네트워트 구조 통신구조 특징 IPX 기반 구분 TCP/IP 기반 P2P CS Hybrid 분산서버
플레이수 특징 P2P 16명이 상한 낮은 지연성.플레이 수에 따라 대역폭 제한 CS 16~200 게임월드 영역분할,근접플레이어수 제한 Hybrid 서버를 중심으로 대부분의 통신은 P2P 분산서버 200명이 상한 서버와 서버간 통신 부하

55 게임 참여 방식 게임유저가 어떻게 참가하는가? 구 분 특 징 드롭인 방식 (Drop-in) 게임에 상시로 출입 세션 지향 방식
(Session-oriented) 게임 개시 때에만 참여가능

56 동적상태 관리 시스템 특성 완전 일관성 높은 상태 갱신율 View 일관성 모든 컴퓨터 동일 수신상태 데이터 의존
동적 변화 지원정도 낮음, 프로토콜에 의한 제한 높음, 대여폭에 의존 네트워크 특성 저지연성, 고신뢰성 헤테로네트워크 가능 수용 플레이어 수 적음 많음

57 상태 관리 기법 구분 특징 중앙관리 중앙의 프로세스가 공유상태 통제모든컴퓨터에서 동일 갱신값유지 네트워크 오버헤드 과다
CS(클라이언트 서버)구조 상태정보전파 Doom, Diablo에서 채택. 대부분은 시간적 동기성에 데이터의 정확성보다 중요. 대역폭 소비과다 데드레커닝 송신측은 필수정보만 송신, 수신측에서 예측복원 대역폭 소비 최소화  동기성 취약

58 자원과 자원 소모인자 Resource = M * H * B * T *P M : 게임 공간에서 처리되는 메시지 수

59 온라인 게임 자원 관리 기법 기법 결정변수 비고 패킷압축 B감소 | P증가 패킷집적 M,B감소 | P,T증가 멀티 캐스팅
패킷사이즈 축소 패킷집적 M,B감소 | P,T증가 복수의 갱신메세지를 한 개의 메세지루 통합 멀티 캐스팅 H감소 | M증가 게임공간 영역별로 그룹형성 부분 객체들의 그룹에 메세지송출 관심영역 필터 H감소 | M,P,T증가 필터링 조건 지정에따른 메세지 송출 상세화 레벨 H,B감소 | M,P증가 거리에따른 객체 상태갱신정도 변경 서버 클러스터 P감소 | T증가 클라이언트의 다중 서버 분산 서버-서버 메시지 부하

60 부가적 고려사항 구분 설명 통신수단 플레이어와 서버 Drop-Out대책 관찰자에 대한 대책 서비스 제공자에대한 고려
음성&채팅채널 공유, 녹음&리플레이 재생기능제공 플레이어와 서버 Drop-Out대책 AI를 활용한 네트워크 장애시 잠정적인 플레이어 대역활동등 대상에게 Drop-Out 사실 통보 관찰자에 대한 대책 게임 초심자 게임진행 관찰. 방관자/트레이너/고객서비스/친구등의 역할 수행.활동범위 통신 능력 제한. 서비스 제공자에대한 고려 서비스 플렛폼과 통합용이한 소프트웨어구조.고객서비스/온라인 시험/시범서비스/토너먼트/플레이어 랭킹/이벤트 관련 설비에 대한 고려. 온라인 자동 유지&업그레이드 비즈니스 S/W는 제품의 유지보수/버전업이 서비스및 마케팅 전략. 자동화된 유지&보수 및 업그레이드 제공. 움직임 일반 소프트웨어는 성능보단 중요성이 중요하지만, 다른 게임보다 빠르게 동작한다는 사실은 게임의 히트요인. 보안대책 게임내 사기전문 사이트등장. 해킹 전문가 등장. =>게임내에서 수천명의 유저에게 피해.=>곧 수익과 직결.

61 온라인 게임서버 기술개발동향 구 분 범 위 제품명 소규모 서버엔진 DirectPlay NetZ TRIBES VR-1 게임엔진
QUAKE UNREAL Lith Tech 대규모 RTIME Turbine BigWorld

62


Download ppt "땅 따먹기 박중규,나민하 나와 바~악!."

Similar presentations


Ads by Google