![]() |
DI-Guy SDK Documentation
13.1
|
#include <bdiGraphicsInitGraphicsAPI.h>
Public Attributes | |
| int | use_array_format_for_vertex_buffer_data |
| If vertex buffer data is not in array form, data will be packed in interleaved form like so: More... | |
| diguyGraphicsIndexType | default_vertex_type |
| This specifies the data type that indices in index buffer data should use. More... | |
| int | use_shaders |
| Determines whether shaders should be loaded and compiled. More... | |
| diguyGraphicsShaderLanguage | shader_language |
| Sets the shader language for loading shaders. More... | |
| int | transpose_shader_matrices |
| Whether matrices that will be used as transforms in shaders should be transposed from the DI-Guy default order. More... | |
| bool | use_4x3_shader_matrices |
| Whether matrices that will be used as transforms in shaders should be sent as 4x3 matrix instead of 4x4. More... | |
| int | use_cached_optimized_geometry |
| Sets whether .flt and .dae files will be loaded as geometry files optimized for DI-Guy use. More... | |
| int | use_cached_compressed_textures |
| Sets whether compressed texture files should be generated from source uncompressed texture files in order to reduce texture memory usage. More... | |
| int | use_sRGB_corrected_textures |
| Sets whether SRGB textures should be used, these allow a relatively free lookup into texture maps that have been transformed into sRGB space allowing a linear lighting pipeline to be setup. More... | |
| int | use_linear_traversal_draw |
| Sets whether DI-Guy draws characters by traversing links in a recursive tree traversal, or in a flat linear traversal. More... | |
| int | characters_have_world_space_triangle_query |
| Experimental bits that allow the octtree to be built from internally loaded scene objects and vehicles to calculate their bounding box. More... | |
| int | scene_objects_have_world_space_triangle_query |
| int | use_shader_instancing |
| Experimental to support instancing. More... | |
| int | instancing_respect_graphics_state_switch |
| Experimental to support instancing. More... | |
| int bdiGraphicsInitGraphicsAPI::use_array_format_for_vertex_buffer_data |
If vertex buffer data is not in array form, data will be packed in interleaved form like so:
vnt vnt vnt vnt vnt vnt
Where 'v' represents three floats specifying vertex position, 'n' represents three floats specifying normal direction, and 't' represents two or more floats specifying texture indices.
If vertex buffer data is in array form, data will be packed like:
vvvvvv nnnnnn tttttt
Where 'v' , 'n', and 't' have the same meanings as above.
The default is 0, do not use array format.
See the documentation for diguyGraphicsVertexFormat for more information.
| diguyGraphicsIndexType bdiGraphicsInitGraphicsAPI::default_vertex_type |
This specifies the data type that indices in index buffer data should use.
The default is DIGUY_GRAPHICS_INDEX_TYPE_USHORT.
| int bdiGraphicsInitGraphicsAPI::use_shaders |
Determines whether shaders should be loaded and compiled.
Note the DI-Guy skinned appearances depend on shaders being available and enabled.
Possible values are:
| 0 | don't use shaders |
| 1 | do use shaders |
Default is 1.
| diguyGraphicsShaderLanguage bdiGraphicsInitGraphicsAPI::shader_language |
Sets the shader language for loading shaders.
Possible values are:
DIGUY_GRAPHICS_SHADER_LANGUAGE_GLSL DIGUY_GRAPHICS_SHADER_LANGUAGE_HLSL
Default is DIGUY_GRAPHICS_SHADER_LANGUAGE_GLSL
| int bdiGraphicsInitGraphicsAPI::transpose_shader_matrices |
Whether matrices that will be used as transforms in shaders should be transposed from the DI-Guy default order.
This affects the data passed to/retrieved from the following DI-Guy Graphics API functions:
diguyGraphicsShape::get_shader_matrix_data()
Set to 1 (the default) to transpose, 0 to not.
| bool bdiGraphicsInitGraphicsAPI::use_4x3_shader_matrices |
Whether matrices that will be used as transforms in shaders should be sent as 4x3 matrix instead of 4x4.
This affects the data passed to/retrieved from the following DI-Guy Graphics API functions:
diguyGraphicsShape::get_shader_matrix_data()
Set to 1 (the default) to send the more efficient structures.
| int bdiGraphicsInitGraphicsAPI::use_cached_optimized_geometry |
Sets whether .flt and .dae files will be loaded as geometry files optimized for DI-Guy use.
Generated files will be put into a subdirectory of the DI-Guy geometry directory, and will be automatically updated as needed (doesn't exist, or original file is newer).
The .bdg geometry format is a smaller, more efficient version of the geometry data encoded in .flt and .dae files. It is an internal DI-Guy format that is not directly supported by geometry editing programs.
There is no quality trade-off in using optimized geometry files, so it is recommended that they always be enabled.
Default is 1.
| int bdiGraphicsInitGraphicsAPI::use_cached_compressed_textures |
Sets whether compressed texture files should be generated from source uncompressed texture files in order to reduce texture memory usage.
There is a quality trade-off when using compressed textures. If there are too many undesired artifacts in the generated textures, they should not be used.
Generated files will be put into a subdirectory of the DI-Guy geometry directory, and will be automatically updated as needed (doesn't exist, or original file is newer).
The compressed texture files will be in the .dds (DirectDraw Surface) format.
Default is 0.
| int bdiGraphicsInitGraphicsAPI::use_sRGB_corrected_textures |
Sets whether SRGB textures should be used, these allow a relatively free lookup into texture maps that have been transformed into sRGB space allowing a linear lighting pipeline to be setup.
OSG 3.0 does not support sRGB textures properly.
Default is 1.
| int bdiGraphicsInitGraphicsAPI::use_linear_traversal_draw |
Sets whether DI-Guy draws characters by traversing links in a recursive tree traversal, or in a flat linear traversal.
Linear drawing allows for easier culling and some additional performance on simpler characters. Linear drawing is required for bump map support.
Versions of DI-Guy prior to version 11 always used a recursive traversal.
Default is 1.
| int bdiGraphicsInitGraphicsAPI::characters_have_world_space_triangle_query |
Experimental bits that allow the octtree to be built from internally loaded scene objects and vehicles to calculate their bounding box.
Default is 0 (off); set to 1 to turn on.
**
| int bdiGraphicsInitGraphicsAPI::scene_objects_have_world_space_triangle_query |
| int bdiGraphicsInitGraphicsAPI::use_shader_instancing |
Experimental to support instancing.
Default is 0 (off).
| int bdiGraphicsInitGraphicsAPI::instancing_respect_graphics_state_switch |
Experimental to support instancing.
Instructs the instancing system to respect the graphics state switch of geometry when constructing instance groups. Setting value to 0 while not graphically correct results in increased performance
Default is 1 (on).