Math 오브젝트에는 유용한 일부 일반 수학 함수가 포함됩니다.
관련 샘플 코드
기타 관련 참조 항목
![]() |
box_intersects_frustum ( pose, half_dimensions, frustum_planes, frustum_corners ) : boolean![]() 방향 지정 경계 상자(pose 및 half_dimensions 매개변수로 지정)가 절두체를 가로지르는지를 나타냅니다.
|
pose : | 상자 중심의 위치 및 회전입니다. | |
half_dimensions : | 로컬 오른쪽, 위쪽 및 앞쪽 축을 따라 상자 중심에서 표면 중심까지의 거리입니다. | |
frustum_planes : | any(stingray.Vector3, number)* | Vector3 및 number 매개변수, 절두체 평면의 외부를 가리키는 법선 벡터 및 이 법선을 따라 평면의 위치에 있는 숫자의 쌍으로 절두체 평면 6개를 이룹니다. any(...) 표기는 이 항목이 괄호 내에 표시되는 어떠한 유형의 인스턴스도 될 수 있다는 의미입니다. * 표기는 지정된 유형의 인스턴스가 0개 이상 있을 수 있음을 나타냅니다. |
frustum_planes : | any(stingray.Vector3, number)* | 가까운 평면이 ABCD, 먼 평면이 EFGH, 측면 가장자리가 AE, BF, CG, DH가 되도록 절두체의 모서리 8개가 순서대로 제공됩니다. any(...) 표기는 이 항목이 괄호 내에 표시되는 어떠한 유형의 인스턴스도 될 수 있다는 의미입니다. * 표기는 지정된 유형의 인스턴스가 0개 이상 있을 수 있음을 나타냅니다. |
boolean |
상자가 완전히 절두체 내부에 있거나 이를 교차하는 경우 true를, 완전히 외부에 있는 경우 false를 반환합니다. |
절두체는 8개의 모서리와 6개의 평면으로 지정되며, 각각은 평면의 법선(절두체에서 바깥쪽을 향함)을 정의하는 Vector3 값과 이 법선을 따르는 평면의 위치를 지정하는 부동의 쌍입니다.
![]() |
box_in_frustum ( pose, half_dimensions, n, o, additional_planes ) : boolean![]() 방향이 지정된 경계 상자(pose 및 half_dimensions 매개변수로 지정)가 절두체 안쪽으로 완벽하게 둘러싸여 있는지 여부를 나타냅니다.
|
pose : | 상자 중심의 위치 및 회전입니다. | |
half_dimensions : | 로컬 오른쪽, 위쪽 및 앞쪽 축을 따라 상자 중심에서 표면 중심까지의 거리입니다. | |
n : | 절두체의 한 평면에서 절두체의 바깥쪽을 향한 법선입니다. | |
o : | number | 법선 n을 따르는 절두체 평면의 위치입니다. |
additional_planes : | any(stingray.Vector3, number)* | n 및 o와 유사한 Vector3 및 number 매개변수 쌍을 더 추가하여 추가 절두체 평면을 설정할 수 있습니다. any(...) 표기는 이 항목이 괄호 내에 표시되는 어떠한 유형의 인스턴스도 될 수 있다는 의미입니다. * 표기는 지정된 유형의 인스턴스가 0개 이상 있을 수 있음을 나타냅니다. |
boolean |
상자가 절두체 내에 완전히 들어가면 true를, 그렇지 않으면 false를 반환합니다. |
절두체는 일련의 평면들로 지정되는데, 각 평면은 평면의 법선(절두체에서 바깥쪽을 향함)을 정의하는 Vector3 값과 이 법선을 따르는 평면의 위치를 지정하는 부동의 쌍입니다. 이 쌍은 절두체의 여러 평면을 설정하는 데 필요한 만큼 얼마든지 지정할 수 있습니다.
![]() |
is_valid ( inputs ) : boolean![]() 모든 입력이 유효한 숫자 값인지 여부를 나타냅니다.
|
inputs : | number* | 테스트하려는 모든 숫자 값입니다. * 표기는 지정된 유형의 인스턴스가 0개 이상 있을 수 있음을 나타냅니다. |
boolean |
모든 입력이 유효한 숫자인 경우 true를, 어느 구성요소가 #NaN 또는 #INF인 경우 false를 반환합니다. |
![]() |
merge_boxes ( pose, half_dimensions, additional_boxes ) : stingray.Matrix4x4, stingray.Vector3![]() 방향이 지정된 일련의 경계 상자를 모든 입력 상자를 둘러싸는, 방향이 지정된 단일 경계 상자로 병합합니다.
|
pose : | 상자 중심의 위치 및 회전입니다. | |
half_dimensions : | 로컬 오른쪽, 위쪽 및 앞쪽 축을 따라 상자 중심에서 표면 중심까지의 거리입니다. | |
additional_boxes : | pose 및 half_dimensions와 유사한 Matrix4x4 및 Vector3 매개변수 쌍을 더 추가해 병합할 상자를 추가로 설정할 수 있습니다. any(...) 표기는 이 항목이 괄호 내에 표시되는 어떠한 유형의 인스턴스도 될 수 있다는 의미입니다. * 표기는 지정된 유형의 인스턴스가 0개 이상 있을 수 있음을 나타냅니다. |
병합된 상자의 위치 및 회전입니다. | |
로컬 오른쪽, 위쪽 및 앞쪽 축을 따라 병합된 상자 중심에서 표면 중심까지의 거리입니다. |
각 상자는 그 위치 및 회전에 관한 Matrix4x4와 그 치수에 관한 Vector3 값의 쌍을 통해 지정됩니다. 이 쌍은 필요한 만큼 얼마든지 제공할 수 있습니다.
결과로 생성되는 상자는 입력 내 첫 번째 상자와 같은 축을 보유하게 됩니다. 즉, 이 함수는 최소 둘러싸는 경계 상자를 반환하지 않습니다.
![]() |
next_random ( seed, first_bound, second_bound ) : integer, number![]() 지정된 seed 값을 기반으로 난수와 새로운 시드를 생성합니다.
|
seed : | integer | 난수를 생성하는 데 사용되는 시드입니다. |
first_bound : | integer? | 생성된 수에 대한 첫 번째 경계입니다. ? 표기는 이 유형이 선택 사항임을 나타냅니다. 해당 인스턴스가 0개 또는 한 개일 수 있습니다. |
second_bound : | integer? | 생성된 수에 대한 두 번째 경계입니다. ? 표기는 이 유형이 선택 사항임을 나타냅니다. 해당 인스턴스가 0개 또는 한 개일 수 있습니다. |
integer |
새 시드 값입니다. |
number |
생성된 난수입니다. |
재현할 수 있는 일련의 난수를 쿼리하려면 stingray.Math.random() 대신 이 함수를 사용하십시오.
![]() |
point_in_box ( point, pose, half_dimensions ) : boolean![]() 점(point 매개변수를 통해 지정)이 방향이 지정된 경계 상자(pose 및 half_dimensions 매개변수를 통해 지정) 내부에 위치하는지 여부를 나타냅니다.
|
point : | 테스트할 점입니다. | |
pose : | 상자 중심의 위치 및 회전입니다. | |
half_dimensions : | 로컬 오른쪽, 위쪽 및 앞쪽 축을 따라 상자 중심에서 표면 중심까지의 거리입니다. |
boolean |
점이 상자 내에 위치하면 true를, 그렇지 않으면 false를 반환합니다. |
![]() |
random ( first_bound, second_bound ) : number![]() 난수를 생성합니다.
|
first_bound : | integer? | 생성된 수에 대한 첫 번째 경계입니다. ? 표기는 이 유형이 선택 사항임을 나타냅니다. 해당 인스턴스가 0개 또는 한 개일 수 있습니다. |
second_bound : | integer? | 생성된 수에 대한 두 번째 경계입니다. ? 표기는 이 유형이 선택 사항임을 나타냅니다. 해당 인스턴스가 0개 또는 한 개일 수 있습니다. |
number |
생성된 난수입니다. |
이 함수는 표준 Lua math.random() 함수와 똑같이 작용하며, 단 이 함수는 표준 Lua 난수 생성기 대신 Stingray에 내장된 난수 생성기를 사용한다는 점만 다릅니다.
관련 샘플 코드
기타 관련 참조 항목
![]() |
ray_box_intersection ( from, dir, pose, half_dimensions ) : number![]() 광선(from 및 dir 매개변수를 통해 지정)과 방향이 지정된 경계 상자(pose 및 half_dimensions 매개변수를 통해 지정) 사이의 교차점을 계산합니다.
|
from : | 광선의 시작점입니다. | |
dir : | 광선의 방향입니다. | |
pose : | 상자 중심의 위치 및 회전입니다. | |
half_dimensions : | 로컬 오른쪽, 위쪽 및 앞쪽 축을 따라 상자 중심에서 표면 중심까지의 거리입니다. |
number |
광선이 상자 내부에서 시작되는지, 아니면 외부에서 시작되는지에 관계없이 광선의 시작점으로부터 상자 표면과의 첫 번째 충돌 지점까지의 거리입니다. 광선이 상자와 충돌하지 않으면 -1을 반환합니다. |