vertex_format_get_info 함수 설명
vertex_format_get_info
함수는 이전에 생성된 정점 형식에 대한 정보를 담고 있는 구조체를 반환합니다. 이 함수는 그래픽스 프로그래밍에서 정점 데이터를 처리할 때 유용하게 사용됩니다.
정점 형식 정보 구조체
변수명 | 타입 | 설명 |
---|---|---|
stride | Real | 단일 정점의 총 크기(바이트) |
num_elements | Real | 단일 정점 내의 요소(정점 속성) 수 |
elements | Array | 요소의 배열. 각 배열 요소는 다음을 포함하는 구조체입니다: |
- usage (정점 사용 유형 상수) | ||
- type (정점 데이터 유형 상수) | ||
- size (Real) | ||
- offset (Real) |
구문
vertex_format_get_info(format);
인수
인수명 | 타입 | 설명 |
---|---|---|
format | Vertex Format | vertex_format_end 에 의해 반환된 정점 형식 |
반환값
- Vertex Format Info Struct
예제
아래 코드는 사용자 정의 정점 형식을 생성한 후, vertex_format_get_info
를 사용하여 정보를 가져오는 예제입니다.
vertex_format_begin();
vertex_format_add_position_3d();
vertex_format_add_normal();
vertex_format_add_colour();
vertex_format_add_texcoord();
vertex_format_add_custom(vertex_type_float1, vertex_usage_texcoord);
vertex_format = vertex_format_end();
var _info = vertex_format_get_info(vertex_format);
show_debug_message(json_stringify(_info, true));
위의 코드는 먼저 사용자 정의 정점 형식을 생성한 다음, vertex_format_get_info
를 사용하여 정보를 가져오고, 그 정보를 디버그 메시지로 표시합니다.
활용 예제
- 정점 형식 생성 및 정보 출력
gml vertex_format_begin(); vertex_format_add_position_3d(); vertex_format_add_normal(); vertex_format = vertex_format_end(); var info = vertex_format_get_info(vertex_format); show_debug_message(json_stringify(info, true));
- 커스텀 정점 속성 추가
gml vertex_format_begin(); vertex_format_add_position_3d(); vertex_format_add_custom(vertex_type_float2, vertex_usage_texcoord); vertex_format = vertex_format_end(); var info = vertex_format_get_info(vertex_format); show_debug_message(json_stringify(info, true));
- 정점 형식의 요소 수 확인
gml vertex_format_begin(); vertex_format_add_position_3d(); vertex_format_add_colour(); vertex_format = vertex_format_end(); var info = vertex_format_get_info(vertex_format); var num_elements = info.num_elements; show_debug_message("Number of elements: " + string(num_elements));
- 정점 형식의 stride 값 확인
gml vertex_format_begin(); vertex_format_add_position_3d(); vertex_format_add_normal(); vertex_format = vertex_format_end(); var info = vertex_format_get_info(vertex_format); var stride = info.stride; show_debug_message("Stride value: " + string(stride));
이러한 예제들은 vertex_format_get_info
함수를 활용하여 정점 형식에 대한 다양한 정보를 얻고 활용하는 방법을 보여줍니다.