cgv
|
style of a volume More...
#include <volume_renderer.h>
Public Attributes | |
VolumeIntegrationQuality | integration_quality = VolumeIntegrationQuality::k128 |
quality measure for the number of steps used during ray marching | |
bool | enable_noise_offset = true |
whether to use the noise texture to offset ray start positions in order to reduce sampling artifacts | |
VolumeInterpolationMode | interpolation_mode = VolumeInterpolationMode::kLinear |
the interpolation method used (supplied volume texture should be set to GL_LINEAR) | |
bool | enable_depth_test = true |
whether to enable depth testing by reading depth from a texture to allow geometry intersecting the volume (depth texture must be supplied) | |
float | picking_opacity_threshold = 0.03f |
VolumeCompositingMode | compositing_mode = VolumeCompositingMode::kBlend |
the compositing mode used | |
float | scale_adjustment_factor = 100.0f |
the coefficient used to adjust sample opacity based on volume scaling (useful range between 50 and 500) | |
bool | enable_lighting = false |
whether to enable lighting | |
bool | light_local_to_eye = true |
whether the light is local to the eye position (moves with the eye) or is static to the scene | |
bool | use_gradient_texture = false |
whether to use a supplied gradient texture or compute gradients on the fly via central differences (default) | |
vec3 | light_direction = normalize(cgv::vec3(-1.0f, 1.0f, 1.0f)) |
the direction of the directional light | |
float | ambient_strength = 0.3f |
light ambient component strength | |
float | diffuse_strength = 0.8f |
material diffuse component strength | |
float | specular_strength = 0.4f |
material specular component strength | |
float | roughness = 0.3f |
material roughness (inversely proportional to specular shininess) | |
float | specular_color_mix = 0.0f |
material specular color mix factor (0 = color from transfer function, 1 = pure white) | |
bool | enable_gradient_modulation = false |
whether to enable modulating the volume opacity by the gradient magnitude | |
float | gradient_lambda = 0.0f |
influence scale for gradient-based opacity modulation | |
VolumeIsosurfaceMode | isosurface_mode = VolumeIsosurfaceMode::kNone |
mode of a single supported isosurface | |
float | isovalue = 0.5f |
the value used to check for an isosurface | |
rgb | isosurface_color = { 0.7f } |
the default constant isosurface color | |
bool | isosurface_color_from_transfer_function = false |
whether to color the isosurface based on the transfer function | |
VolumeSliceMode | slice_mode = VolumeSliceMode::kNone |
mode of slice rendering | |
int | slice_axis = 2 |
coordinate axis orthogonal to which slice is rendered | |
float | slice_coordinate = 0.5f |
coordinate value along axis defining slice in range [0,1] | |
float | slice_opacity = 0.5f |
in case of transparent mode, slice opacity | |
box3 | clip_box = { vec3{0.0f}, vec3{1.0f} } |
a bounding box used to define a subspace of the volume to be visualized | |
style of a volume
Definition at line 57 of file volume_renderer.h.
float cgv::render::volume_render_style::ambient_strength = 0.3f |
light ambient component strength
Definition at line 84 of file volume_renderer.h.
Referenced by cgv::gui::volume_render_style_gui_creator::create(), and cgv::render::volume_renderer::enable().
a bounding box used to define a subspace of the volume to be visualized
Definition at line 118 of file volume_renderer.h.
Referenced by cgv::gui::volume_render_style_gui_creator::create(), cgv::render::volume_renderer::draw(), and cgv::render::volume_renderer::enable().
VolumeCompositingMode cgv::render::volume_render_style::compositing_mode = VolumeCompositingMode::kBlend |
the compositing mode used
Definition at line 70 of file volume_renderer.h.
Referenced by cgv::gui::volume_render_style_gui_creator::create(), and cgv::render::volume_renderer::update_shader_program_options().
float cgv::render::volume_render_style::diffuse_strength = 0.8f |
material diffuse component strength
Definition at line 86 of file volume_renderer.h.
Referenced by cgv::gui::volume_render_style_gui_creator::create(), and cgv::render::volume_renderer::enable().
bool cgv::render::volume_render_style::enable_depth_test = true |
whether to enable depth testing by reading depth from a texture to allow geometry intersecting the volume (depth texture must be supplied)
Definition at line 65 of file volume_renderer.h.
Referenced by cgv::gui::volume_render_style_gui_creator::create(), and cgv::render::volume_renderer::update_shader_program_options().
bool cgv::render::volume_render_style::enable_gradient_modulation = false |
whether to enable modulating the volume opacity by the gradient magnitude
Definition at line 95 of file volume_renderer.h.
Referenced by cgv::gui::volume_render_style_gui_creator::create(), and cgv::render::volume_renderer::update_shader_program_options().
bool cgv::render::volume_render_style::enable_lighting = false |
whether to enable lighting
Definition at line 76 of file volume_renderer.h.
Referenced by cgv::gui::volume_render_style_gui_creator::create(), and cgv::render::volume_renderer::update_shader_program_options().
bool cgv::render::volume_render_style::enable_noise_offset = true |
whether to use the noise texture to offset ray start positions in order to reduce sampling artifacts
Definition at line 61 of file volume_renderer.h.
Referenced by cgv::gui::volume_render_style_gui_creator::create(), and cgv::render::volume_renderer::update_shader_program_options().
float cgv::render::volume_render_style::gradient_lambda = 0.0f |
influence scale for gradient-based opacity modulation
Definition at line 97 of file volume_renderer.h.
Referenced by cgv::gui::volume_render_style_gui_creator::create(), and cgv::render::volume_renderer::enable().
VolumeIntegrationQuality cgv::render::volume_render_style::integration_quality = VolumeIntegrationQuality::k128 |
quality measure for the number of steps used during ray marching
Definition at line 59 of file volume_renderer.h.
Referenced by cgv::gui::volume_render_style_gui_creator::create(), and cgv::render::volume_renderer::update_shader_program_options().
VolumeInterpolationMode cgv::render::volume_render_style::interpolation_mode = VolumeInterpolationMode::kLinear |
the interpolation method used (supplied volume texture should be set to GL_LINEAR)
Definition at line 63 of file volume_renderer.h.
Referenced by cgv::gui::volume_render_style_gui_creator::create(), and cgv::render::volume_renderer::update_shader_program_options().
rgb cgv::render::volume_render_style::isosurface_color = { 0.7f } |
the default constant isosurface color
Definition at line 104 of file volume_renderer.h.
Referenced by cgv::gui::volume_render_style_gui_creator::create(), and cgv::render::volume_renderer::enable().
bool cgv::render::volume_render_style::isosurface_color_from_transfer_function = false |
whether to color the isosurface based on the transfer function
Definition at line 106 of file volume_renderer.h.
Referenced by cgv::gui::volume_render_style_gui_creator::create(), and cgv::render::volume_renderer::update_shader_program_options().
VolumeIsosurfaceMode cgv::render::volume_render_style::isosurface_mode = VolumeIsosurfaceMode::kNone |
mode of a single supported isosurface
Definition at line 100 of file volume_renderer.h.
Referenced by cgv::gui::volume_render_style_gui_creator::create(), and cgv::render::volume_renderer::update_shader_program_options().
float cgv::render::volume_render_style::isovalue = 0.5f |
the value used to check for an isosurface
Definition at line 102 of file volume_renderer.h.
Referenced by cgv::gui::volume_render_style_gui_creator::create(), and cgv::render::volume_renderer::enable().
the direction of the directional light
Definition at line 82 of file volume_renderer.h.
Referenced by cgv::gui::volume_render_style_gui_creator::create(), and cgv::render::volume_renderer::enable().
bool cgv::render::volume_render_style::light_local_to_eye = true |
whether the light is local to the eye position (moves with the eye) or is static to the scene
Definition at line 78 of file volume_renderer.h.
Referenced by cgv::gui::volume_render_style_gui_creator::create(), and cgv::render::volume_renderer::enable().
float cgv::render::volume_render_style::picking_opacity_threshold = 0.03f |
Definition at line 67 of file volume_renderer.h.
float cgv::render::volume_render_style::roughness = 0.3f |
material roughness (inversely proportional to specular shininess)
Definition at line 90 of file volume_renderer.h.
Referenced by cgv::gui::volume_render_style_gui_creator::create(), and cgv::render::volume_renderer::enable().
float cgv::render::volume_render_style::scale_adjustment_factor = 100.0f |
the coefficient used to adjust sample opacity based on volume scaling (useful range between 50 and 500)
Definition at line 73 of file volume_renderer.h.
Referenced by cgv::gui::volume_render_style_gui_creator::create(), and cgv::render::volume_renderer::enable().
int cgv::render::volume_render_style::slice_axis = 2 |
coordinate axis orthogonal to which slice is rendered
Definition at line 111 of file volume_renderer.h.
Referenced by cgv::gui::volume_render_style_gui_creator::create(), and cgv::render::volume_renderer::enable().
float cgv::render::volume_render_style::slice_coordinate = 0.5f |
coordinate value along axis defining slice in range [0,1]
Definition at line 113 of file volume_renderer.h.
Referenced by cgv::gui::volume_render_style_gui_creator::create(), and cgv::render::volume_renderer::enable().
VolumeSliceMode cgv::render::volume_render_style::slice_mode = VolumeSliceMode::kNone |
mode of slice rendering
Definition at line 109 of file volume_renderer.h.
Referenced by cgv::gui::volume_render_style_gui_creator::create(), and cgv::render::volume_renderer::update_shader_program_options().
float cgv::render::volume_render_style::slice_opacity = 0.5f |
in case of transparent mode, slice opacity
Definition at line 115 of file volume_renderer.h.
Referenced by cgv::gui::volume_render_style_gui_creator::create(), and cgv::render::volume_renderer::enable().
float cgv::render::volume_render_style::specular_color_mix = 0.0f |
material specular color mix factor (0 = color from transfer function, 1 = pure white)
Definition at line 92 of file volume_renderer.h.
Referenced by cgv::gui::volume_render_style_gui_creator::create(), and cgv::render::volume_renderer::enable().
float cgv::render::volume_render_style::specular_strength = 0.4f |
material specular component strength
Definition at line 88 of file volume_renderer.h.
Referenced by cgv::gui::volume_render_style_gui_creator::create(), and cgv::render::volume_renderer::enable().
bool cgv::render::volume_render_style::use_gradient_texture = false |
whether to use a supplied gradient texture or compute gradients on the fly via central differences (default)
Definition at line 80 of file volume_renderer.h.
Referenced by cgv::gui::volume_render_style_gui_creator::create(), and cgv::render::volume_renderer::update_shader_program_options().