레퍼런스 frustum()

frustum()

3D 스케치에서 현재 카메라의 절두체(frustum)를 설정합니다.

절두체 투영에서, 카메라로부터 멀리 떨어진 도형은 카메라 근처에 있는 도형보다 더 작게 나타납니다. 단축법(foreshortening)이라고 불리는 이 기술은 사실적인 3D 장면을 만듭니다.

frustum()은 뷰 절두체(viewing frustum)를 변경함으로써 카메라의 원근법을 변경합니다. 절두체는 카메라가 볼 수 있는 공간의 크기입니다. 이것의 모양은 꼭대기가 잘린 피라미드입니다. 카메라는 피라미드의 꼭대기가 있어야 하는 곳에 위치하고 피라미드의 바닥을 향합니다. 그것은 절두체 내의 모든 것을 담습니다.

처음 네 개의 매개 변수인 left, right, bottom, top은 절두체의 측면, 아래, 위의 좌표를 설정합니다. 예를 들어, frustum(-100, 100, 200, -200)를 호출하면 너비 200 픽셀, 높이 400 픽셀의 절두체가 생성됩니다. 기본적으로 frustum(-width / 2, width / 2, -height / 2, height / 2)에서와 같이 스케치의 너비와 높이를 기반으로 설정됩니다.

마지막 두 개의 매개 변수인 near, far는 카메라로부터 절두체의 가까운, 그리고 먼 평면의 거리를 설정합니다. 예를 들어, frustum(-100, 100, 200, 200, 50, 1000)는 너비 200 픽셀, 높이 400 픽셀이고 카메라로부터 50 픽셀만큼 떨어진 곳에서 시작해 1,000 픽셀만큼 떨어진 곳에서 끝나는 절두체가 생성됩니다. 기본적으로 near는 카메라와 원점 사이의 기본 거리의 1/10인 0.1 * 800로 설정됩니다. far는 카메라와 원점 사이의 기본 거리의 10배인 10 * 800로 설정됩니다.

참고: frustum()은 WebGL 모드에서만 사용할 수 있습니다.

예제

구문

frustum([left], [right], [bottom], [top], [near], [far])

매개변수

left

절두체의 왼쪽 평면의 x 좌표. 기본값 -width / 2

right

절두체의 오른쪽 평면의 x 좌표. 기본값 width / 2

bottom

절두체의 아래 평면의 y 좌표. 기본값 height / 2

top

절두체의 위 평면의 y 좌표. 기본값 -height / 2

near

절두체의 가까운 평면의 z 좌표. 기본값 0.1 * 800

far

절두체의 먼 평면의 z 좌표. 기본값 10 * 800

Notice any errors or typos? Please let us know. Please feel free to edit src/webgl/p5.Camera.js and open a pull request!

관련 레퍼런스