GAMES101 과정 학습 노트—Lec 10~12: 기하학 기하학, 암시적 및 명시적, 곡선 및 표면, 그리드

1 기하학적 표현

  • 기하학적 표현은 명시적 표현과 암시적 표현으로 나뉩니다.
    여기에 이미지 설명 삽입

1.1 암시적 기하학

  • 예: 표면을 표현하기 위해 공간의 한 점 사용
    암시적 기하학은 이러한 점이 어디에 있는지 알려주지 않지만 이러한 점이 만족하는 기능적 관계를 알려줍니다.암시
    여기에 이미지 설명 삽입
    적 표현은 모양이 무엇인지 직접 보기가 어렵습니다.
    여기에 이미지 설명 삽입

그러나 내부 및 외부 포인트의 위치 관계를 판단하는 것은 매우 편리합니다. 
여기에 이미지 설명 삽입

 

1.2 암시적 표현 방법

1.2.1 대수 표면

 여기에 이미지 설명 삽입

1.2.2 CSG는 솔리드 형상을 구성합니다.
여기에 이미지 설명 삽입

1.2.3 거리 기능

어떤 기하학이든 표면을 직접 기술하는 것이 아니라 공간의 어떤 점에서 표면까지의 최단 거리를 기술하므로 아래 그림에서
공간의 어떤 점은 두 물체의 거리 함수를 정의하는 값을 정의하게 됩니다.
, Blending은
여기에 이미지 설명 삽입
거리함수를 적용한 예가 될 수 있으며, SDF는 부호가 있는 거리함수 S를 나타낸다.
여기에 이미지 설명 삽입

여기에 이미지 설명 삽입 

거리 함수를 구한 후 표면을 구하는 방법, 즉 거리 함수가 0인 곳이 표면인데, 거리 함수
의 형태는 분석식을 작성하기가 비교적 어렵고 문제가 없다. 레벨셋 방식도 비슷해 지리학에서 비슷한 정의는
등고선
등고선이라는 개념으로 면 찾기 
여기에 이미지 설명 삽입

 1.2.4 프랙탈 기하학
여기에 이미지 설명 삽입

1.3 명시적 기하학

  • 암시적 기하학과 달리 명시적
    기하학이 있는데 명시적 방법은 점의 위치를 ​​직접 가져오거나 매개변수 매핑을 사용합니다.
    여기에 이미지 설명 삽입

아래 그림은 UV의 두 매개변수를 공간의 x, y, z
에 매핑한 것입니다. 
여기에 이미지 설명 삽입
안과 밖을 판단하려면 명시적으로 표현해야 함
여기에 이미지 설명 삽입
1.4 더 명시적인 표현 방법
여기에 이미지 설명 삽입

1.4.1  포인트 클라우드

물체가 표면이라고 생각하지 말고 표면은 점의 무리이며 점의 밀도가 충분히 높으면 점 사이의 간격을 볼 수 없습니다.이론적으로 모든 기하학을 나타낼 수 있습니다.
보통
, 3D 스캐닝으로 얻은 결과는 포인트 클라우드이며 포인트
클라우드는 삼각형 면이 될 수 있습니다 .
여기에 이미지 설명 삽입

 

1.4.2 다각형 메쉬

다각형 메쉬는 매우 널리 사용됩니다.
여기에 이미지 설명 삽입

 

 파일 형식 obj 형식은 삼각형 메쉬로 개체를 정의합니다.
여기에 이미지 설명 삽입

 

2곡선

2.1 베지어 곡선

  • Bezier 곡선은 특정 곡선을 정의하기 위해 일련의 제어점이 필요합니다.
    이 곡선은 몇 가지 속성을 만족합니다. 예를 들어 다음 그림은 접선 방향을 따라야 합니다.
    여기에 이미지 설명 삽입

 

2.1.1 베지어 곡선 계산

다음은 2차 베지어 곡선을 생성하는 de Casteljau 알고리즘에 대해 설명합니다.

  • 먼저 세 점을 정의합니다.
    여기에 이미지 설명 삽입

임의의 t에 따라 아웃 포인트 보간
여기에 이미지 설명 삽입 

여기에 이미지 설명 삽입 

여기에 이미지 설명 삽입 

 베 지어 곡선을 얻기 위해 [0,1] 사이의 값을 취하기 위해 t를 계속 반복하십시오.
여기에 이미지 설명 삽입

다음은 3차 베지어 곡선을 생성하는 de Casteljau 알고리즘에 대해 설명합니다.

  • 재귀 유사 알고리즘
    여기에 이미지 설명 삽입

여기에 이미지 설명 삽입 

2.1.2 대수적 표현

  • 3차 베지어 곡선을 계산하는 과정에서 각 두 사이의 시간 t를 찾으며 이는 각 두 사이의 선형 보간에 해당합니다.

 여기에 이미지 설명 삽입

 알고리즘 프로세스를 대수 형식으로 작성합니다.

 여기에 이미지 설명 삽입

우리는 그것을 n차로 확장했고 그것이 이항 분포를 설명하는 다항식이라는 것을 발견했습니다. 
여기에 이미지 설명 삽입

3차 베지어 곡선의 수식 효과는 다음과 같습니다.여기에 이미지 설명 삽입 

여기에 이미지 설명 삽입 

2.1.3 베지어 곡선 속성

  • 첫 번째와 두 번째 항목은 이해하기 쉽습니다.
    세 번째 항목: 아핀 변환 아래에서 꼭지점에 대해 아핀 변환을 수행하면 아핀 변환 아래의 베지어 곡선 결과를 얻을 수 있습니다. 네 번째 항목: 베지어
    곡선 . 제어점에 의해 형성된 볼록 껍질 내여기에 이미지 설명 삽입

제어점을 보호하는 가장 작은 볼록 다각형인 볼록 선체 표현
여기에 이미지 설명 삽입 

2.1.4 세그먼트별 베지어 곡선

  • 제어점이 너무 많으면 Bezier 곡선이 직관적이지 않고 제어하기 어렵습니다.
    여기에 이미지 설명 삽입

그래서 매번 베지어 곡선을 정의하고 연결하는 것을 생각했는데
일반적으로 4개의 제어점마다 섹션을 정의하는 것이 일반적입니다. 
여기에 이미지 설명 삽입

여기에 이미지 설명 삽입 

2.2 연속성

  • C0 연속 점은 동일
    여기에 이미지 설명 삽입

C1 연속 접선은 동일합니다. 여기에 이미지 설명 삽입

2.3 스플라인

  • 스플라인 - 일정한 연속성을 만족하는 일련의 제어점에 의해 제어되는 연속 곡선, 즉 제어 가능한 곡선여기에 이미지 설명 삽입

B-spline - B, 즉 기본 함수는
지역성을 가집니다.여기에 이미지 설명 삽입 

B-스플라인과 불균일한 합리적 B-스플라인은 후세민 씨의 클래스로 갈 수 있습니다.
여기에 이미지 설명 삽입 

3면

3.1 베지어 표면여기에 이미지 설명 삽입

여기에 이미지 설명 삽입 

4개의 베지어 곡선을 그린 후, 이 4개의 선 위에 새로운 베지어 곡선의 제어점으로 간주되는 4개의 점을 더 가져오고,
연속 스위핑 과정에서 곡면이 형성됩니다.여기에 이미지 설명 삽입 

3.2 베지어 표면의 계산

매개변수 매핑을 통해 각각 uv를 t로 매핑여기에 이미지 설명 삽입

여기에 이미지 설명 삽입 

여기에 이미지 설명 삽입 

4 기하학 처리

4.1 메쉬 세분화

4.1.1 루프 세분화

  • 더 많은 삼각형을 만들고 위치를 변경하여 표면을 더 매끄럽게 만듭니다.여기에 이미지 설명 삽입

 각 변의 중간점을 연결하여 삼각형을 만들고 이전 꼭지점
과 새 꼭지점을 구분하여 처리합니다 .
여기에 이미지 설명 삽입

새 꼭지점(흰색 꼭지점)의 경우 다음 공식에 따라 위치가 조정됩니다(공식의 값이 어떻게 나오는지는 특정 알고리즘 설계와 관련되며 이에 대해 이야기하지 않고 실행 방법만 고려합니다) 여기에 이미지 설명 삽입

old vertex의 경우 일부는 주변 old vertex의 값에 의존하고 일부는 자신의 값을 유지합니다.공식에 따르면
n은 꼭지점의 차수(연결된 가장자리의 수)
u는 관련된 숫자입니다. n으로
여기에 이미지 설명 삽입 

여기에 이미지 설명 삽입 

4.1.2 Catmull-Clark 세분화

Loop subdivision은 삼각형 메쉬를 가정하지만 삼각형이 아닌 메쉬의 경우에는 방법이 없으며 이때 Catmull-Clark 세분화를 사용합니다.

  • 사변형면과 비사변형면을 정의할 수 있으며
    차수가 4가 아닌 점을 특이점으로 정의하면
    여기에 이미지 설명 삽입

세분 과정은
가장자리의 중간점과 표면의 한 점(무게 중심 또는 기타)을 취하고 이 점들을 연결합니다
. 총 4개의 특이점이 있는데
이 과정에서 모든 면은 사각형의 면이 된다 즉, 세분화 후에는 사각형이 아닌 각 면이 사라지고 의 세분화 이후 더 이상 증가하지 않는
특이점이 도입된다.
특이점의 수 
여기에 이미지 설명 삽입

 계속 세분화해도 특이점은 변하지 않습니다.

 여기에 이미지 설명 삽입

 포인트 위치 조정은 3가지로 구분되며,
새로운 포인트는 표면의 포인트로 구분되고, 가장자리의 포인트는 별도로 운영되며,
기존 포인트는 별도로 운영됩니다.여기에 이미지 설명 삽입

비교여기에 이미지 설명 삽입 

4.2 메쉬 단순화여기에 이미지 설명 삽입 

메시 단순화 방법 가장자리 축소여기에 이미지 설명 삽입 

붕괴는 윤곽선이 기본적으로 일관성을 유지하도록 어떻게 보장해야 합니까?
왼쪽 아래는 5점의 평균이고 오른쪽 아래는 2차 오차 측정값입니다
.여기에 이미지 설명 삽입 

각 변은 접었을 경우 2차 측정오차가 얼마나 나올지 가정한
후 2차 측정오차가 작은 것부터 작은 것부터 큰 것까지 접는다.여기에 이미지 설명 삽입 

하지만 문제가 있습니다.
한쪽 모서리가 무너지는 것은 괜찮지만 한쪽 모서리가 무너지면 다른 모서리도 변경됩니다. 이렇게 변경된 변의 2차 측정 오류를 다시 계산해야 하므로
가장 작은 2차 측정 오류를 선택해야 합니다. 2차 측정 오류. 최소값 이후에는 업데이트해야 합니다.
이 데이터 구조를 통해 최소값을 얻을 수 있고 영향을 받는 다른 요소도 동적으로 업데이트할 수 있습니다.
이 데이터 구조는 우선 순위 큐/힙이기도 하며
로컬 최소 최적값을 사용합니다. 전역 최적 솔루션을 찾으려는 솔루션도 일반적인 탐욕 알고리즘입니다.
여기에 이미지 설명 삽입

여기에 이미지 설명 삽입 

 

 

 

 

 

 

 

 

Supongo que te gusta

Origin blog.csdn.net/jiuzhouhi/article/details/123188560
Recomendado
Clasificación