 Reference Guide Host-API Lua / Python
» Back to Homepage
» Back to Developer's Guide Index
gh_renderer Library
gh_renderer is the module that talks directly with the graphics hardware.
Number of functions: 39
gh_renderer.set_vsync
Enables or disables the vertical synchronization.
: Lua - Python
state [INTEGER]: enabled (1) or disabled (0).
:
gh_renderer.set_vsync(0)
gh_renderer.set_viewport
Sets the viewport.
: Lua - Python
x, y [INTEGER]: viewport offsets.
width, height [INTEGER]: viewport size.
:
gh_renderer.set_viewport(0, 0, width, height)
gh_renderer.set_scissor
Sets the scissor rectangle.
: Lua - Python
x, y [INTEGER]: scissor rectangle offsets.
width, height [INTEGER]: scissor rectangle size.
:
gh_renderer.set_scissor(0, 0, width, height)
gh_renderer.set_viewport_scissor
Sets the viewport and the scissor rectangle in the same call.
: Lua - Python
x, y [INTEGER]: offsets.
width, height [INTEGER]: viewport and scissor rectangle size.
:
gh_renderer.set_viewport_scissor(0, 0, width, height)
gh_renderer.set_viewport_scissor_ptr
Sets the viewport and the scissor rectangle in the same call.
: Lua - Python
R_ptr [POINTER]: pointer on the current renderer.
x, y [INTEGER]: offsets.
width, height [INTEGER]: viewport and scissor rectangle size.
:
gh_renderer.set_viewport_scissor_ptr(R_ptr, 0, 0, width, height)
gh_renderer.set_scissor_state
Enables or disable the scissor test.
: Lua - Python
state [INTEGER]: enabled (1) or disabled (0).
:
gh_renderer.set_scissor_state(1)
gh_renderer.clear_color_buffer
Clear the color buffer with a RGBA color.
: Lua - Python
r, g, b, a [CLAMPED_REAL]: RGBA clear color.
:
gh_renderer.clear_color_buffer(0, 0, 0, 1)
gh_renderer.clear_color_buffer_ptr
Clear the color buffer with a RGBA color.
: Lua - Python
R_ptr [POINTER]: pointer on the current renderer.
r, g, b, a [CLAMPED_REAL]: RGBA clear color.
:
gh_renderer.clear_color_buffer_ptr(R_ptr, 0, 0, 0, 1)
gh_renderer.clear_depth_buffer
Clear the depth buffer.
: Lua - Python
z [CLAMPED_REAL]: z buffer value.
:
z = 1.0
gh_renderer.clear_depth_buffer(z)
gh_renderer.clear_depth_buffer_ptr
Clear the depth buffer.
: Lua - Python
R_ptr [POINTER]: pointer on the current renderer.
z [CLAMPED_REAL]: z buffer value.
:
z = 1.0
gh_renderer.clear_depth_buffer_ptr(R_ptr, z)
gh_renderer.clear_color_depth_buffers
Clear the color and depth buffers in the same call.
: Lua - Python
r, g, b, a [CLAMPED_REAL]: RGBA clear color.
z [CLAMPED_REAL]: z buffer value.
:
gh_renderer.clear_color_depth_buffers(r, g, b, a, z)
gh_renderer.clear_color_depth_buffers_ptr
Clear the color and depth buffers in the same call.
: Lua - Python
R_ptr [POINTER]: pointer on the current renderer.
r, g, b, a [CLAMPED_REAL]: RGBA clear color.
z [CLAMPED_REAL]: z buffer value.
:
gh_renderer.clear_color_depth_buffers_ptr(R_ptr, r, g, b, a, z)
gh_renderer.set_depth_test_state
Enables or disable the depth test.
: Lua - Python
state [INTEGER]: enabled (1) or disabled (0).
:
gh_renderer.set_depth_test_state(1)
gh_renderer.set_depth_test_state_ptr
Enables or disable the depth test.
: Lua - Python
R_ptr [POINTER]: pointer on the current renderer.
state [INTEGER]: enabled (1) or disabled (0).
:
gh_renderer.set_depth_test_state_ptr(R_ptr, 1)
gh_renderer.set_depth_test_func
Sets the depth test function.
: Lua - Python
func_type [INTEGER]: depth test comparison function:
- CMP_FUNC_NEVER = 0
- CMP_FUNC_LESS = 1
- CMP_FUNC_LESS_OR_EQUAL = 2
- CMP_FUNC_GREATER = 3
- CMP_FUNC_GREATER_OR_EQUAL = 4
- CMP_FUNC_EQUAL = 5
- CMP_FUNC_NOT_EQUAL = 6
- CMP_FUNC_ALWAYS = 7
:
local CMP_FUNC_LESS = 1
gh_renderer.set_depth_test_func(CMP_FUNC_LESS)
gh_renderer.rasterizer_set_cull_state
Enables or disable the face culling state.
: Lua - Python
state [INTEGER]: enabled (1) or disabled (0).
:
gh_renderer.rasterizer_set_cull_state(1)
gh_renderer.rasterizer_set_cull_face
Sets the face type to be culled.
: Lua - Python
face [INTEGER]: type of face: back (0), front (1) or back_and_front (2).
:
local BACK_FACE = 0
gh_renderer.rasterizer_set_cull_face(BACK_FACE)
gh_renderer.rasterizer_set_cull_state(1)
gh_renderer.rasterizer_set_polygon_mode
Sets the polygon rendering mode.
: Lua - Python
face [INTEGER]: type of face: back (0), front (1) or back_and_front (2).
mode [INTEGER]: polygon rendering mode: point (0), line (1) or solid (2).
:
local BACK_FRONT_FACE = 2
local LINE = 1
gh_renderer.rasterizer_set_polygon_mode(BACK_FRONT_FACE, LINE)
gh_renderer.rasterizer_set_polygon_mode_ptr
Sets the polygon rendering mode.
: Lua - Python
R_ptr [POINTER]: pointer on the current renderer.
face [INTEGER]: type of face: back (0), front (1) or back_and_front (2).
mode [INTEGER]: polygon rendering mode: point (0), line (1) or solid (2).
:
local BACK_FRONT_FACE = 2
local LINE = 1
gh_renderer.rasterizer_set_polygon_mode_ptr(R_ptr, BACK_FRONT_FACE, LINE)
gh_renderer.rasterizer_apply_states
Applies all states modified with gh_renderer.rasterizer_xxxx() functions.
: Lua - Python
:
local BACK_FACE = 0
gh_renderer.rasterizer_set_cull_face(BACK_FACE)
gh_renderer.rasterizer_set_cull_state(0)
local BACK_FRONT_FACE = 2
local LINE = 1
gh_renderer.rasterizer_set_polygon_mode(BACK_FRONT_FACE, LINE)
gh_renderer.rasterizer_apply_states()
gh_renderer.rasterizer_apply_states_ptr
Applies all states modified with gh_renderer.rasterizer_xxxx() functions.
: Lua - Python
R_ptr [POINTER]: pointer on the current renderer.
:
local BACK_FRONT_FACE = 2
local LINE = 1
gh_renderer.rasterizer_set_polygon_mode_ptr(R_ptr, BACK_FRONT_FACE, LINE)
gh_renderer.rasterizer_apply_states_ptr(R_ptr)
gh_renderer.set_blending_state
Enables or disables the color blending.
: Lua - Python
state [INTEGER]: enabled (1) or disabled (0).
:
gh_renderer.set_blending_state(1)
gh_renderer.set_blending_state_ptr
Enables or disables the color blending.
: Lua - Python
R_ptr [POINTER]: pointer on the current renderer.
state [INTEGER]: enabled (1) or disabled (0).
:
gh_renderer.set_blending_state_ptr(R_ptr, 1)
gh_renderer.set_blending_factors
Sets the source and destination blending factors.
: Lua - Python
src [INTEGER]: source factor. Possible values for source and destination factors:
- RENDERER_BLEND_FACTOR_ZERO = 0
- BLEND_FACTOR_ONE = 1
- BLEND_FACTOR_SRC_ALPHA = 2
- BLEND_FACTOR_ONE_MINUS_DST_ALPHA = 3
- BLEND_FACTOR_ONE_MINUS_DST_COLOR = 4
- BLEND_FACTOR_ONE_MINUS_SRC_ALPHA = 5
- BLEND_FACTOR_DST_COLOR = 6
- BLEND_FACTOR_DST_ALPHA = 7
- BLEND_FACTOR_SRC_COLOR = 8
- BLEND_FACTOR_ONE_MINUS_SRC_COLOR = 9
dst [INTEGER]: destination factor. For possible values, see the source factor.
:
local BLEND_FACTOR_ONE = 1
gh_renderer.set_blending_factors(BLEND_FACTOR_ONE, BLEND_FACTOR_ONE)
gh_renderer.set_blending_state(1)
gh_renderer.set_blending_factors_ptr
Sets the source and destination blending factors.
: Lua - Python
R_ptr [POINTER]: pointer on the current renderer.
src [INTEGER]: source factor. Possible values for source and destination factors:
- RENDERER_BLEND_FACTOR_ZERO = 0
- BLEND_FACTOR_ONE = 1
- BLEND_FACTOR_SRC_ALPHA = 2
- BLEND_FACTOR_ONE_MINUS_DST_ALPHA = 3
- BLEND_FACTOR_ONE_MINUS_DST_COLOR = 4
- BLEND_FACTOR_ONE_MINUS_SRC_ALPHA = 5
- BLEND_FACTOR_DST_COLOR = 6
- BLEND_FACTOR_DST_ALPHA = 7
- BLEND_FACTOR_SRC_COLOR = 8
- BLEND_FACTOR_ONE_MINUS_SRC_COLOR = 9
dst [INTEGER]: destination factor. For possible values, see the source factor.
:
local BLEND_FACTOR_ONE = 1
gh_renderer.set_blending_factors_ptr(R_ptr, BLEND_FACTOR_ONE, BLEND_FACTOR_ONE)
gh_renderer.set_blending_state_ptr(R_ptr, 1)
gh_renderer.update_fixed_mvp_matrices
Updates the fixed modelview and projection matrices from a camera and an object. No GPU program is required for the rendering of the object.
: Lua - Python
camera_id [INTEGER]: camera identifier.
object_id [INTEGER]: object identifier.
:
gh_renderer.update_fixed_mvp_matrices(camera_id, object_id)
gh_renderer.update_fixed_mvp_matrices_ptr
Updates the fixed modelview and projection matrices from a camera and an object. No GPU program is required for the rendering of the object.
: Lua - Python
R_ptr [POINTER]: pointer on the current renderer.
camera_ptr [POINTER]: pointer on the camera node.
object_ptr [POINTER]: pointer on the object node.
:
gh_renderer.update_fixed_mvp_matrices_ptr(R_ptr, camera_ptr, object_ptr)
gh_renderer.get_api_version_major
Gets OpenGL major version number.
: Lua - Python
major [INTEGER]: major version
:
glmajor = gh_renderer.get_api_version_major()
if (glmajor < 4) then
-- Tessellation not supported
end
gh_renderer.get_api_version_minor
Gets OpenGL minor version number.
: Lua - Python
minor [INTEGER]: minor version
:
glminor = gh_renderer.get_api_version_minor()
gh_renderer.get_api_version
Gets the OpenGL version.
: Lua - Python
version [STRING]: OpenGL version
:
glversion = gh_renderer.get_api_version()
gh_renderer.get_renderer_model
Gets the model of the renderer (the name of the graphics card).
: Lua - Python
model [STRING]: Renderer model
:
glrenderer = gh_renderer.get_renderer_model()
gh_renderer.get_renderer_vendor
Gets the vendor of the renderer (the name of the graphics card GPU maker).
: Lua - Python
vendor [STRING]: Renderer vendor
:
glvendor = gh_renderer.get_renderer_vendor()
gh_renderer.get_shading_language_version
Gets the GLSL version.
: Lua - Python
version [STRING]: GLSL version
:
glsl_version = gh_renderer.get_shading_language_version()
gh_renderer.get_num_opengl_extensions
Returns the number of OpenGL extensions.
: Lua - Python
num [INTEGER]: number of OpenGL extensions
:
num_extensions = gh_renderer.get_num_opengl_extensions()
gh_renderer.get_opengl_extension
Returns the name of a particular OpenGL extension.
: Lua - Python
index [INTEGER]: index of the OpenGL extension: from 0 to get_num_opengl_extensions()-1.
name [STRING]: OpenGL extension name
:
index = 0
gl_extension = gh_renderer.get_opengl_extension(index)
gh_renderer.check_opengl_extension
Checks if a particular OpenGL extension is exposed.
: Lua - Python
extension_name [STRING]: name of the extension.
name [STRING]: OpenGL extension name
:
if (gh_renderer.check_opengl_extension("GL_ARB_compute_shader") == 1) then
-- OpenGL 4.3 compute shaders are supported.
end
gh_renderer.set_texture2d_state
Enables or disable the texturing state of the fixed pipeline.
: Lua - Python
state [INTEGER]: enabled (1) or disabled (0).
:
gh_renderer.set_texture2d_state(state)
gh_renderer.set_texture2d_state_ptr
Enables or disable the texturing state of the fixed pipeline.
: Lua - Python
R_ptr [POINTER]: pointer on the current renderer.
state [INTEGER]: enabled (1) or disabled (0).
:
gh_renderer.set_texture2d_state_ptr(R_ptr, state)
gh_renderer.display_progress_bar
Renders a progress bar. The progress bar percent is set with gh_utils.set_progress_bar_percent(). Both functions can be used in an INIT script to draw a progress bar while loading data.
: Lua - Python
percent [REAL]: size of the progress bar: 100% means the window width.
:
gh_utils.set_progress_bar_percent(20)
gh_renderer.display_progress_bar()
...
... do some stuff
...
gh_utils.set_progress_bar_percent(60)
gh_renderer.display_progress_bar()
...
... do some stuff
...
gh_utils.set_progress_bar_percent(100)
gh_renderer.display_progress_bar()
|