librashader/librashader-runtime-gl/src/options.rs

28 lines
1,016 B
Rust
Raw Normal View History

2023-01-13 03:19:58 -05:00
//! OpenGL shader runtime options.
2022-12-04 22:48:57 -05:00
/// Options for each OpenGL shader frame.
#[repr(C)]
#[derive(Default, Debug, Clone)]
pub struct FrameOptionsGL {
2022-12-04 22:48:57 -05:00
/// Whether or not to clear the history buffers.
2022-11-30 01:38:05 -05:00
pub clear_history: bool,
2023-02-06 00:26:27 -05:00
/// The direction of rendering.
/// -1 indicates that the frames are played in reverse order.
2022-12-04 22:36:14 -05:00
pub frame_direction: i32,
}
2022-12-04 22:48:57 -05:00
/// Options for filter chain creation.
#[repr(C)]
#[derive(Default, Debug, Clone)]
pub struct FilterChainOptionsGL {
2022-12-04 22:48:57 -05:00
/// The GLSL version. Should be at least `330`.
pub glsl_version: u16,
2022-12-04 22:48:57 -05:00
/// Whether or not to use the Direct State Access APIs. Only available on OpenGL 4.5+.
2023-02-15 17:40:24 -05:00
/// If this is off, compiled program caching will not be available.
2022-11-30 19:05:24 -05:00
pub use_dsa: bool,
/// Whether or not to explicitly disable mipmap generation regardless of shader preset settings.
pub force_no_mipmaps: bool,
2023-02-15 17:40:24 -05:00
/// Disable the shader object cache. Shaders will be recompiled rather than loaded from the cache.
pub disable_cache: bool,
}