레퍼런스 spotLight()

spotLight()

한 지점에서 한 방향으로 빛을 내는 조명을 생성합니다.

집중 광원(spot light)은 한 방향으로 빛을 내는 손전등과 같으며, 빛의 원뿔을 생성합니다. 원뿔의 모양은 각도와 집중도 매개변수를 사용하여 조절할 수 있습니다. 한 번에 최대 5개의 집중 광원이 활성화될 수 있습니다.

spotLight()을 호출하는 방법은 총 8가지이며, 이를 통해 빛의 색상, 위치, 방향을 설정할 수 있습니다. 예를 들어, spotLight(255, 0, 0, 0, 0, 0, 1, 0, 0) 은 원점 (0, 0, 0)에서 오른쪽 (1, 0,0)을 향하는 빨간색 (255, 0, 0) 빛을 생성합니다.

angle 매개변수는 선택적입니다. 이는 빛 원뿔의 반지름을 설정합니다. 예를 들어, spotLight(255, 0, 0, 0, 0, 0, 1, 0, 0, PI / 16)은 원점 (0, 0, 0)에서 오른쪽 (1, 0, 0)을 향하며 PI / 16 라디안인 빨간색 (255, 0, 0) 빛을 생성합니다. 기본적으로 anglePI / 3 라디안입니다.

concentration 매개변수는 선택적입니다. 이는 빛을 원뿔의 중심에 집중시킵니다. 예를 들어, spotLight(255, 0, 0, 0, 0, 0, 1, 0, 0, PI / 16, 50)는 원점 (0, 0, 0)에서 오른쪽 (1, 0, 0)을 향하며 각도가 PI / 16 라디안이고 집중도가 50인 빨간색 (255, 0, 0) 빛을 생성합니다. 기본적으로 concentration는 100입니다.

예제

구문

spotLight(v1, v2, v3, x, y, z, rx, ry, rz, [angle], [concentration])
spotLight(color, position, direction, [angle], [concentration])
spotLight(v1, v2, v3, position, direction, [angle], [concentration])
spotLight(color, x, y, z, direction, [angle], [concentration])
spotLight(color, position, rx, ry, rz, [angle], [concentration])
spotLight(v1, v2, v3, x, y, z, direction, [angle], [concentration])
spotLight(v1, v2, v3, position, rx, ry, rz, [angle], [concentration])
spotLight(color, x, y, z, rx, ry, rz, [angle], [concentration])

매개변수

v1
Number:

현재 colorMode()에서의 빨간색 또는 색조값

v2
Number:

현재 colorMode()에서의 초록색 또는 채도값

v3
Number:

현재 colorMode()에서의 파란색, 밝기 또는 명도값

x
Number:

빛의 x좌표

y
Number:

빛의 y좌표

z
Number:

빛의 z좌표

rx
Number:

빛의 방향의 x성분은 -1과 1사이입니다.

ry
Number:

빛의 방향의 y성분은 -1과 1사이입니다.

rz
Number:

빛의 방향의 z성분은 -1과 1사이입니다.

angle
숫자:

빛 원뿔의 각도. 기본값은 PI / 3입니다.

concentration
Number:

빛의 집중도. 기본값은 100입니다.

color
p5.Color|Number[]|String:

현재 p5.Color 객체로, 색상 값 배열이나 CSS 문자열로 색상을 설정

position
p5.Vector:

빛의 위치를 p5.Vector 객체로 설정

direction
p5.Vector:

빛의 방향을 p5.Vector 객체로 설정

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

관련 레퍼런스