gamemath-chapter 09 가시성판단
TRANSCRIPT
Chapter 09
가시성 판단
발표자발표자 :: 홍기홍기헌헌
05.02.04
Preview
01. 01. 화면에 보이지 않는 데이터의 종류화면에 보이지 않는 데이터의 종류
02. 02. 경계 입체경계 입체
03. 03. 절두체 컬링절두체 컬링
핵심 포인트
• 3D 3D 게임의 속도게임의 속도 (( 렌더링렌더링 ) ) 향상향상
• ‘‘ 필요없는 데이터를 그리지 않는다’는 것필요없는 데이터를 그리지 않는다’는 것
• 필요없는 데이터필요없는 데이터 (( 화면에 보이지 않는 데이터화면에 보이지 않는 데이터 ))를 를
판단하는 데 사용하는 기술판단하는 데 사용하는 기술
01. 화면에 보이지 않는 데이터의 종류 • 메시 (mesh) 의 뒷면
• 시야 절두체에 포함되지 않는 메시나 면
• 다른 메시에 가려진 메시나 면
5) 메시의 뒷면
V0 V0’ > 0
V1 V2’ < 0
V2 V2’ > 0
•
•
•
1) 시야 절두체
• 렌더링 파이프라인에서 절두체의 정의를 살펴보았다 .
• 사각뿔의 머리를 잘라 놓은 것 같다 .
a. 절두체의 정의
• 절두체 내부에 포함되는 삼각형만 렌더링
a. 평면의 방정식
• 정의 ax+bx+cz+d = 0
a,b,c -> 평면의 방향을 나타내는 법선 벡터 ,
d -> 평면과 원점과의 거리
a. 평면 방정식의 성질
a. 절두체 컬링 원리
모든 평면 방정식의 결과값이 양수 (+) 이면 절두체 내부 포함
a. 경계 입체 컬링 ( bounding volume c ulling )
02 경계 입체
• 경계구 (bounding sphere)
• 경계 상자 (bounding box)
• 경계 실린더 (bounding cylinder)
1) 경계구물체를 감싸고 있는 구
다루기 쉬우며 , 처리 속도 가장 빠름
1) 경계 상자
• 물체를 감싸고있는 상자
• 상자를 표현 하는데 최대값 , 최고값만으로 표현 가능
1) 경계 실린더
• 원의 반지름과 물체의 길이를 표현하는 양 끝점
• 연산이 복잡
1) 경계구 컬링
03 절두체 컬링
평면 방정식에 경계구의 중심점 값을 대입 ,
결과값이 경계구의 반지름 r 보다 작으면
1) 경계 상자 컬링
• Vmax 와 Vmin 으로
2 개의 값으로 정의
6 개의 정점과 Vmax 와 Vmin 정점을 절두체에 대입 ,
평면 방정식에 경계 상자의 정점값들을 대입 ,
모두 0 보다 크면 절두체에 완전히 포함 .
예제
예제 실행 결과예제 실행 결과
Chapter 14Chapter 14
길찾기 : 최단 거리 위치 이동 알고
리즘 A*
A* 방식의 요약1. 시작사각형을 열린목록에서 넣는다 .
2. 다음의 과정들을 반복한다 .
a) 열린목록에서 가장 낮은 F 비용을 찾는다 . 그리고 우리는 이것을 현재사각형으로 선택한다 .
b) 이것을 닫힌목록으로 바꾼다 .
c) 현재 사각형에 인접한 8 개의 사각형에 대해 ?
● 만약 인접한 사각형이 갈수 없는 것 이거나 그것이 닫힌목록상에 있다면 이것은 무시한다 . 그렇지 않은 것은 다음을 계속한다 .
● 만약 이것이 열린목록에 있지 않다면 , 이것을 열린목록에 추가한다 . 이 사각형의 부모를 현재 사각형으로 만든다 . 사각형의 F,G,H 비용을 기록한다 .
● 만약 이것이 이미 열린목록에 있다면 , 사각형 G 비용을 이용하여 이 사각형이 더 나은가 알아본다 . 그것의 G 비용이 더 작으면 그것이 더 나은 길이라는 것을 의미한다 . 만약 그렇다면 , 부모 사각형을 그 (G 비용이 더 작은 ) 사각형으로 바꾸어라 , 그리고 그 사각형의 G,F 비용을 다시 계산해라 . 만약 당신이 당신의 열린목록을 F 비용으로 정렬하고 있다면 바뀐 것에 따라서 열린목록을 다시 정렬 해야한다 .
d) 그만할 때
● 길을 찾다는 중 목표사각형을 열린목록에 추가 하였을 때 ,
● 열린목록이 비어있게 될 경우 이때는 목표사각형을 찾는데 실패한 것 인데 이 경우 길이 없는 경우다 .
3. 길 저장하기 ~. 목표사각형으로부터 각각의 사각의 부모쪽을 향하여 시작사각형에 도착할 때까지 거슬러 올라간다 . 이것이 당신의 길이다 .~
스타크레프트에서의 길찾기 알고리즘
• - 맵 길찾기와 유닛 길찾기
1) 지형적으로 탐색
2) 짧은 거리를 정교하게 탐색
•움직이는 유닛은 무시한다 .
•드래군은 왜 방황하는가
끝
KIN~ ( 즐 )
질문