매트릭스 생성 함수 설명
matrix_build
함수는 사용자 정의 매트릭스를 생성하는 데 사용됩니다. 이 함수는 매트릭스 배열을 반환하며, 이 배열은 향후 참조와 사용을 위해 변수에 저장해야 합니다. 이 함수는 3차원( x, y, z ) 변환, 회전 및 스케일 값을 받아 매트릭스 배열을 구성합니다.
매트릭스 배열 구조
매트릭스 배열은 총 16개의 값을 포함하며, 초기 4개 요소는 1열, 다음 4개 요소는 2열, 그리고 나머지 요소들은 3열과 4열을 구성합니다. 이는 4x4 매트릭스의 일부입니다. 배열의 정렬 방식은 플랫폼에 따라 다르며, 사용되는 그래픽 렌더러가 행 우선(row-major) 또는 열 우선(column-major) 매트릭스를 사용할 수 있습니다.
함수 사용법
매트릭스를 생성할 때의 연산 순서는 YXZ입니다.
문법
matrix_build(x, y, z, xrotation, yrotation, zrotation, xscale, yscale, zscale);
매개변수 설명
매개변수 | 타입 | 설명 |
---|---|---|
x | Real | 변환 벡터의 x 구성 요소 |
y | Real | 변환 벡터의 y 구성 요소 |
z | Real | 변환 벡터의 z 구성 요소 |
xrotation | Real | x축을 중심으로 회전할 각도 (도 단위) |
yrotation | Real | y축을 중심으로 회전할 각도 (도 단위) |
zrotation | Real | z축을 중심으로 회전할 각도 (도 단위) |
xscale | Real | x 스케일 값 |
yscale | Real | y 스케일 값 |
zscale | Real | z 스케일 값 |
반환값
- 매트릭스 배열
예제
t_matrix = matrix_build(x, y, 0, 0, 90, 0, 1, 2, 1);
위 코드는 새로운 매트릭스 변환을 생성하고, 결과 매트릭스 인덱스를 변수 t_matrix
에 저장합니다.
활용 예제
- 기본 매트릭스 생성
gml my_matrix = matrix_build(10, 20, 30, 45, 0, 0, 1, 1, 1);
- 회전 및 스케일 적용
gml rotated_scaled_matrix = matrix_build(0, 0, 0, 0, 45, 0, 2, 2, 2);
- 3D 객체 위치 조정
gml object_matrix = matrix_build(5, 10, 15, 30, 60, 90, 1, 1, 1);
- 복합 변환 적용
gml complex_matrix = matrix_build(0, 0, 0, 90, 45, 30, 1, 2, 1);
- 다양한 축 회전
gml axis_rotated_matrix = matrix_build(0, 0, 0, 90, 0, 0, 1, 1, 1);
이와 같이 matrix_build
함수를 활용하여 다양한 매트릭스를 생성하고 조작할 수 있습니다.