GPU 스텐실 패스 설정
이 문서는 gpu_set_stencil_pass
함수에 대해 설명합니다. 이 함수는 스텐실 테스트가 통과했을 때 수행할 스텐실 작업을 설정합니다. 기본적으로 스텐실 테스트가 통과할 때의 작업은 stencilop_keep
입니다. 이 작업을 다음 중 하나로 변경할 수 있습니다.
문법
gpu_set_stencil_pass(stencil_op);
인수 설명
인수 | 타입 | 설명 |
---|---|---|
stencil_op | Stencil Op Constant | 스텐실 테스트가 통과한 픽셀에 대해 수행할 스텐실 작업을 나타내는 상수입니다. |
반환값
- 해당 없음 (N/A)
예제
다음 코드는 스텐실 작업을 stencilop_incr_wrap
으로 설정합니다. 즉, 스텐실 테스트가 통과할 때마다 픽셀의 스텐실 값을 증가시키고, 최대값인 255에 도달하면 0으로 다시 감싸는 작업을 수행합니다.
gpu_set_stencil_pass(stencilop_incr_wrap);
활용 예제
- 스텐실 값 증가 및 감싸기
gml gpu_set_stencil_pass(stencilop_incr_wrap);
- 스텐실 값 유지
gml gpu_set_stencil_pass(stencilop_keep);
- 스텐실 값 감소
gml gpu_set_stencil_pass(stencilop_decr_wrap);
- 스텐실 값 설정
gml gpu_set_stencil_pass(stencilop_replace);
- 스텐실 값 비우기
gml gpu_set_stencil_pass(stencilop_zero);
이 함수는 다양한 그래픽 효과를 구현하는 데 유용하며, 스텐실 버퍼를 활용하여 복잡한 장면을 렌더링할 수 있습니다.