Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
Tags
- Jinja2
- 카렌
- Express
- 정글사관학교
- 언리얼
- 미니프로젝트
- Enhanced Input System
- 언리얼뮤지컬
- 언리얼프로그래머
- JWT
- 스마일게이트
- 으
- 레베카
- 디자드
- R
- 프린세스메이커
- 마인크래프트뮤지컬
- Bootstrap4
- Ajax
- node
- EnhancedInput
- 알고풀자
- 게임개발
- flask
- 데이터베이스
- 스터디
- 파이썬서버
- Unseen
- VUE
- 프메
Archives
- Today
- Total
Today, I will
[그래픽스] ray tracing intersection with triangle (ray 방정식과 삼각형의 교점 찾기) 본문
Computer Science/그래픽스
[그래픽스] ray tracing intersection with triangle (ray 방정식과 삼각형의 교점 찾기)
Lv.Forest 2023. 12. 15. 14:26
삼각형과 레이R의 교점 p를 구하는 방법

예제:
레이 r은 원점 (0,0,0)으로부터 출발하고 ray의 방향벡터u는 (0,0,-1)이다.
삼각형 a1a2a3에 대해서 세 꼭지점은 다음과 같다면,
- a1 = (-1, -1, -1)
- a2 = (1, -1, -1)
- a3 = (0, 1, -1)
레이와 삼각형의 교차점을 찾기 위해 레이의 방향과 삼각형의 평면과의 교차점을 찾아야 한다.
- 삼각형의 평면 법선 벡터, 평면의 방정식 구하기 : 삼각형의 세 꼭지점을 이용하여 우선 삼각형을 포함하는 평면을 정의할 수 있다. 세 꼭지점을 이용하여 두개의 벡터를 만들고, 이렇게 구한 두 벡터의 외적은 평면의 법선 벡터가 된다. 평면 법선 벡터를 이용하여 평면의 방정식을 ax+by+cz+d =0 꼴로 구성해준다.
- 평면과 레이의 교차점 계산: 레이의 방정식과 삼각형의 평법 법선 벡터를 이용해 구한 삼각형의 방정식을 연립한다.
- 교차점이 삼각형 안에 있는지 확인 : Barycentric coordinate system을 통해 확인하다. 바먼트릭 좌표는 삼각형 내부의 한 점을 나타내는 좌표 시스템으로, 이를 통해 해당 점이 삼각형 안에 있는지 여부를 확인할 수 있다. (u,v,w)를 구했을 때 하나라도 음수라면, 삼각형 밖에 있다. 삼각형 밖에 있는 경우는 삼각형과 ray의 교점이 없는 것이다. 그렇지 않다면, 평면과 레이의 교차점이 곧 삼각형과 ray의 교점이 된다.
'Computer Science > 그래픽스' 카테고리의 다른 글
[컴퓨터 그래픽스] 트렌드 연구 NeRF, 3D Gaussian Splatting (0) | 2024.08.01 |
---|---|
[그래픽스] HDR(High Dynamic Range), HDRI (0) | 2024.01.29 |
[그래픽스] 그래픽스 파이프라인 개념과 GPU에서의 쉐이더를 통한 가속화 (0) | 2023.11.17 |
[그래픽스] 선형대수-행렬, 그래픽스 프로그래밍에서 자주 쓰는 연산 (1) | 2023.10.20 |
[OpenGL] opengl graphics pipeline의 이해와 hello_triangle 속 VAO와 VBO의 쓰임 (0) | 2023.10.11 |