Hinoto04 & DoubleJung
2021. 4. 1. 16:22
원문 : developer.roblox.com/en-us/api-reference/datatype/Vector3
Vector3는 3D공간의 벡터를 설명하는데, 일반적으로 3D 공간의 점이나 직각 프리즘의 면적으로 사용됩니다. Vector3는 더하기, 빼기, 곱하기, 나누기의 기본 사칙연산을 지원하며, 스칼라와 Vector3, Vector3와 Vector3 사이에서 적용할 수 있습니다. 또한, 내적과 외적 등 일반적으로 벡터 연산을 위해 사용하는 기능도 제공됩니다.
Vector3의 몇 가지 사용 예는 Parts의 Position, Rotation, Size 등의 속성이 있다. 이는 일반적으로 많은 개발자들이 가장 먼저 배우는 것 중 하나가 된다.
|
local part = workspace.Part
part.Position = part.Position + Vector3.new(5, 20, 100) -- 파트를 이 위치로
|
Vector3는 다른 복잡한 3D 자료형, 즉, CFrame이나 Ray같은 자료형들의 많은 함수들의 인자로써 사용된다. 예시로는 CFrame:PointToObjectSpace나 Ray:ClosestPoint가 있다. CFrame 산술은 연산을 위한 Vector3도 지원한다.
참고 항목
- Vector3int16 - 작은 Vector3 (Region3int16)
생성자(Constructors)
Vector3.new( number x = 0, number y = 0, number z = 0 ) |
지정된 x, y, z 인자를 이용해 새로운 Vector3를 선언한다. |
Vector3.FromNormalId( Enum normal ) |
특정 방향에서 새로운 Vector3를 선언한다 |
Vector3.FromAxis( Enum axis) |
특정 축에서 새로운 Vector3를 선언한다. |
속성(Properties)
number Vector3.Magnitude |
벡터의 길이 |
Vector3 Vector3.Unit |
Vector의 일반적인 복사본 - 방향은 같지만 길이가 1 |
함수(Functions)
Vector3 Vector3:Lerp( Vector3 goal, number alpha ) |
현재 Vector3값과 goal Vector3 사이의 값을 alpha에 맞춰 반환한다. alpha의 값은 0에서 1로 제한되지 않는다. |
bool Vector3:FuzzyEq( Vector3 other, number epsilon = 0.00001 a.k.a. 1e-5) |
other 벡터가 Vector3의 epsilon 반지름 안에 있다면 true를 반환한다. |
연산
Vector3 Vector3 + Vector3 |
첫 번째 Vector3에 두 번째 Vector3를 값을 더한 새로운 Vector3를 반환한다. |
Vector3 Vector3 - Vector3 |
첫 번째 Vector3에 두 번째 Vector3를 값을 뺀 새로운 Vector3를 반환한다. |
Vector3 Vector3 * Vector3 |
첫 번째 Vector3에 두 번째 Vector3를 값을 곱한 새로운 Vector3를 반환한다. |
Vector3 Vector3 / Vector3 |
첫 번째 Vector3에 두 번째 Vector3를 값을 나눈 새로운 Vector3를 반환한다. |
Vector3 Vector3 * number |
첫 번째 Vector3의 각 요소를 number로 곱한 Vector3를 반환한다. |
Vector3 Vector3 / number |
첫 번째 Vector3의 각 요소를 number로 나눈 Vector3를 반환한다. |