When drawing things in a room, you'll often require a more granular control over exactly how drawing will be done. You may wish for there to be no alpha blending, or you may require culling, or you may need to switch texture interpolation on or off. All this is possible - and a lot more! - using the GPU controller functions listed below. Note that most of these functions are global in scope and once set or changed will affect how everything is drawn from then onwards.
The following functions can be used to get the values of different GPU properties:
- gpu_get_blendenable
- gpu_get_ztestenable
- gpu_get_zfunc
- gpu_get_zwriteenable
- gpu_get_fog
- gpu_get_cullmode
- gpu_get_blendmode
- gpu_get_blendmode_ext
- gpu_get_blendmode_ext_sepalpha
- gpu_get_blendmode_src
- gpu_get_blendmode_dest
- gpu_get_blendmode_srcalpha
- gpu_get_blendmode_destalpha
- gpu_get_colorwriteenable
- gpu_get_alphatestenable
- gpu_get_alphatestref
- gpu_get_texfilter
- gpu_get_texfilter_ext
- gpu_get_texrepeat
- gpu_get_texrepeat_ext
The following functions can be used to set the values of different GPU properties:
- gpu_set_blendenable
- gpu_set_ztestenable
- gpu_set_zfunc
- gpu_set_zwriteenable
- gpu_set_fog
- gpu_set_cullmode
- gpu_set_blendmode
- gpu_set_blendmode_ext
- gpu_set_blendmode_ext_sepalpha
- gpu_set_colorwriteenable
- gpu_set_alphatestenable
- gpu_set_alphatestref
- gpu_set_texfilter
- gpu_set_texfilter_ext
- gpu_set_texrepeat
- gpu_set_texrepeat_ext
These functions can be used to manipulate the GPU stack: