Open CASCADE Technology 7.8.0
|
Helper class to store rendering parameters. More...
#include <Graphic3d_RenderingParams.hxx>
Public Member Functions | |
Graphic3d_RenderingParams () | |
Creates default rendering parameters. | |
Standard_ShortReal | ResolutionRatio () const |
Returns resolution ratio. | |
void | DumpJson (Standard_OStream &theOStream, Standard_Integer theDepth=-1) const |
Dumps the content of me into the stream. | |
Data Fields | |
general parameters | |
Graphic3d_RenderingMode | Method |
specifies rendering mode, Graphic3d_RM_RASTERIZATION by default | |
Graphic3d_TypeOfShadingModel | ShadingModel |
specified default shading model, Graphic3d_TypeOfShadingModel_Phong by default | |
Graphic3d_RenderTransparentMethod | TransparencyMethod |
specifies rendering method for transparent graphics | |
unsigned int | Resolution |
Pixels density (PPI), defines scaling factor for parameters like text size (when defined in screen-space units rather than in 3D) to be properly displayed on device (screen / printer). 72 is default value. Note that using difference resolution in different Views in same Viewer will lead to performance regression (for example, text will be recreated every time). | |
Font_Hinting | FontHinting |
enables/disables text hinting within textured fonts, Font_Hinting_Off by default; hinting improves readability of thin text on low-resolution screen, but adds distortions to original font depending on font family and font library version | |
Standard_ShortReal | LineFeather |
line feather width in pixels (> 0.0), 1.0 by default; high values produce blurred results, small values produce sharp (aliased) edges | |
rendering resolution parameters | |
Standard_Integer | PbrEnvPow2Size |
size of IBL maps side can be calculated as 2^PbrEnvPow2Size (> 0), 9 by default | |
Standard_Integer | PbrEnvSpecMapNbLevels |
number of levels used in specular IBL map (> 1), 6 by default | |
Standard_Integer | PbrEnvBakingDiffNbSamples |
number of samples used in Monte-Carlo integration during diffuse IBL map's spherical harmonics coefficients generation (> 0), 1024 by default | |
Standard_Integer | PbrEnvBakingSpecNbSamples |
number of samples used in Monte-Carlo integration during specular IBL map's generation (> 0), 256 by default | |
Standard_ShortReal | PbrEnvBakingProbability |
controls strength of samples reducing strategy during specular IBL map's generation (see 'SpecIBLMapSamplesFactor' function for detail explanation) [0.0, 1.0], 0.99 by default | |
Standard_ShortReal | OitDepthFactor |
scalar factor [0-1] controlling influence of depth of a fragment to its final coverage (Graphic3d_RTM_BLEND_OIT), 0.0 by default | |
Standard_Integer | NbOitDepthPeelingLayers |
number of depth peeling (Graphic3d_RTM_DEPTH_PEELING_OIT) layers, 4 by default | |
Standard_Integer | NbMsaaSamples |
number of MSAA samples (should be within 0..GL_MAX_SAMPLES, power-of-two number), 0 by default | |
Standard_ShortReal | RenderResolutionScale |
rendering resolution scale factor, 1 by default; incompatible with MSAA (e.g. NbMsaaSamples should be set to 0) | |
Standard_Integer | ShadowMapResolution |
shadow texture map resolution, 1024 by default | |
Standard_ShortReal | ShadowMapBias |
shadowmap bias, 0.005 by default; | |
Standard_Boolean | ToEnableDepthPrepass |
enables/disables depth pre-pass, False by default | |
Standard_Boolean | ToEnableAlphaToCoverage |
enables/disables alpha to coverage, True by default | |
Ray-Tracing/Path-Tracing parameters | |
Standard_Boolean | IsGlobalIlluminationEnabled |
enables/disables global illumination effects (path tracing) | |
Standard_Integer | SamplesPerPixel |
number of samples per pixel (SPP) | |
Standard_Integer | RaytracingDepth |
maximum ray-tracing depth, 3 by default | |
Standard_Boolean | IsShadowEnabled |
enables/disables shadows rendering, True by default | |
Standard_Boolean | IsReflectionEnabled |
enables/disables specular reflections, False by default | |
Standard_Boolean | IsAntialiasingEnabled |
enables/disables adaptive anti-aliasing, False by default | |
Standard_Boolean | IsTransparentShadowEnabled |
enables/disables light propagation through transparent media, False by default | |
Standard_Boolean | UseEnvironmentMapBackground |
enables/disables environment map background | |
Standard_Boolean | ToIgnoreNormalMapInRayTracing |
enables/disables normal map ignoring during path tracing; FALSE by default | |
Standard_Boolean | CoherentPathTracingMode |
enables/disables 'coherent' tracing mode (single RNG seed within 16x16 image blocks) | |
Standard_Boolean | AdaptiveScreenSampling |
enables/disables adaptive screen sampling mode for path tracing, FALSE by default | |
Standard_Boolean | AdaptiveScreenSamplingAtomic |
enables/disables usage of atomic float operations within adaptive screen sampling, FALSE by default | |
Standard_Boolean | ShowSamplingTiles |
enables/disables debug mode for adaptive screen sampling, FALSE by default | |
Standard_Boolean | TwoSidedBsdfModels |
forces path tracing to use two-sided versions of original one-sided scattering models | |
Standard_ShortReal | RadianceClampingValue |
maximum radiance value used for clamping radiance estimation. | |
Standard_Boolean | RebuildRayTracingShaders |
forces rebuilding ray tracing shaders at the next frame | |
Standard_Integer | RayTracingTileSize |
screen tile size, 32 by default (adaptive sampling mode of path tracing); | |
Standard_Integer | NbRayTracingTiles |
maximum number of screen tiles per frame, 256 by default (adaptive sampling mode of path tracing); this parameter limits the number of tiles to be rendered per redraw, increasing Viewer interactivity, but also increasing the time for achieving a good quality; -1 means no limit | |
Standard_ShortReal | CameraApertureRadius |
aperture radius of perspective camera used for depth-of-field, 0.0 by default (no DOF) (path tracing only) | |
Standard_ShortReal | CameraFocalPlaneDist |
focal distance of perspective camera used for depth-of field, 1.0 by default (path tracing only) | |
FrustumCulling | FrustumCullingState |
state of frustum culling optimization; FrustumCulling_On by default | |
Graphic3d_ToneMappingMethod | ToneMappingMethod |
specifies tone mapping method for path tracing, Graphic3d_ToneMappingMethod_Disabled by default | |
Standard_ShortReal | Exposure |
exposure value used for tone mapping (path tracing), 0.0 by default | |
Standard_ShortReal | WhitePoint |
white point value used in filmic tone mapping (path tracing), 1.0 by default | |
VR / stereoscopic parameters | |
Graphic3d_StereoMode | StereoMode |
stereoscopic output mode, Graphic3d_StereoMode_QuadBuffer by default | |
Standard_ShortReal | HmdFov2d |
sharp field of view range in degrees for displaying on-screen 2D elements, 30.0 by default; | |
Anaglyph | AnaglyphFilter |
filter for anaglyph output, Anaglyph_RedCyan_Optimized by default | |
Graphic3d_Mat4 | AnaglyphLeft |
left anaglyph filter (in normalized colorspace), Color = AnaglyphRight * theColorRight + AnaglyphLeft * theColorLeft; | |
Graphic3d_Mat4 | AnaglyphRight |
right anaglyph filter (in normalized colorspace), Color = AnaglyphRight * theColorRight + AnaglyphLeft * theColorLeft; | |
Standard_Boolean | ToReverseStereo |
flag to reverse stereo pair, FALSE by default | |
Standard_Boolean | ToSmoothInterlacing |
flag to smooth output on interlaced displays (improves text readability / reduces line aliasing), TRUE by default | |
Standard_Boolean | ToMirrorComposer |
if output device is an external composer - mirror rendering results in window in addition to sending frame to composer, TRUE by default | |
on-screen display parameters | |
Handle< Graphic3d_TransformPers > | StatsPosition |
location of stats, upper-left position by default | |
Handle< Graphic3d_TransformPers > | ChartPosition |
location of stats chart, upper-right position by default | |
Graphic3d_Vec2i | ChartSize |
chart size in pixels, (-1, -1) by default which means that chart will occupy a portion of viewport | |
Handle< Graphic3d_AspectText3d > | StatsTextAspect |
stats text aspect | |
Standard_ShortReal | StatsUpdateInterval |
time interval between stats updates in seconds, 1.0 second by default; too often updates might impact performance and will smear text within widgets (especially framerate, which is better averaging); 0.0 interval will force updating on each frame | |
Standard_Integer | StatsTextHeight |
stats text size; 16 by default | |
Standard_Integer | StatsNbFrames |
number of data frames to collect history; 1 by default | |
Standard_ShortReal | StatsMaxChartTime |
upper time limit within frame chart in seconds; 0.1 seconds by default (100 ms or 10 FPS) | |
PerfCounters | CollectedStats |
performance counters to collect, PerfCounters_Basic by default; too verbose options might impact rendering performance, because some counters might lack caching optimization (and will require expensive iteration through all data structures) | |
Standard_Boolean | ToShowStats |
display performance statistics, FALSE by default; note that counters specified within CollectedStats will be updated nevertheless of visibility of widget managed by ToShowStats flag (e.g. stats can be retrieved by application for displaying using other methods) | |
Static Public Attributes | |
static const unsigned int | THE_DEFAULT_RESOLUTION = 72u |
Default pixels density. | |
static const Standard_Integer | THE_DEFAULT_DEPTH = 3 |
Default ray-tracing depth. | |
Helper class to store rendering parameters.
Anaglyph filter presets.
Statistics display flags. If not specified otherwise, the counter value is computed for a single rendered frame.
Enumerator | |
---|---|
PerfCounters_NONE | no stats |
PerfCounters_FrameRate | Frame Rate, frames per second (number of frames within elapsed time) |
PerfCounters_CPU | CPU utilization as frames per second (number of frames within CPU utilization time (rendering thread)) |
PerfCounters_Layers | count layers (groups of structures) |
PerfCounters_Structures | count low-level Structures (normal unhighlighted Presentable Object is usually represented by 1 Structure) |
PerfCounters_Groups | count primitive Groups (1 Structure holds 1 or more primitive Group) |
PerfCounters_GroupArrays | count Arrays within Primitive Groups (optimal primitive Group holds 1 Array) |
PerfCounters_Triangles | count Triangles |
PerfCounters_Points | count Points |
PerfCounters_Lines | count Line segments |
PerfCounters_EstimMem | estimated GPU memory usage |
PerfCounters_FrameTime | frame CPU utilization time (rendering thread);
|
PerfCounters_FrameTimeMax | maximum frame times |
PerfCounters_SkipImmediate | do not include immediate viewer updates (e.g. lazy updates without redrawing entire view content) show basic statistics |
PerfCounters_Basic | |
PerfCounters_Extended | extended (verbose) statistics |
PerfCounters_All | all counters |
|
inline |
Creates default rendering parameters.
void Graphic3d_RenderingParams::DumpJson | ( | Standard_OStream & | theOStream, |
Standard_Integer | theDepth = -1 |
||
) | const |
Dumps the content of me into the stream.
|
inline |
Returns resolution ratio.
Standard_Boolean Graphic3d_RenderingParams::AdaptiveScreenSampling |
enables/disables adaptive screen sampling mode for path tracing, FALSE by default
Standard_Boolean Graphic3d_RenderingParams::AdaptiveScreenSamplingAtomic |
enables/disables usage of atomic float operations within adaptive screen sampling, FALSE by default
Anaglyph Graphic3d_RenderingParams::AnaglyphFilter |
filter for anaglyph output, Anaglyph_RedCyan_Optimized by default
Graphic3d_Mat4 Graphic3d_RenderingParams::AnaglyphLeft |
left anaglyph filter (in normalized colorspace), Color = AnaglyphRight * theColorRight + AnaglyphLeft * theColorLeft;
Graphic3d_Mat4 Graphic3d_RenderingParams::AnaglyphRight |
right anaglyph filter (in normalized colorspace), Color = AnaglyphRight * theColorRight + AnaglyphLeft * theColorLeft;
Standard_ShortReal Graphic3d_RenderingParams::CameraApertureRadius |
aperture radius of perspective camera used for depth-of-field, 0.0 by default (no DOF) (path tracing only)
Standard_ShortReal Graphic3d_RenderingParams::CameraFocalPlaneDist |
focal distance of perspective camera used for depth-of field, 1.0 by default (path tracing only)
Handle< Graphic3d_TransformPers > Graphic3d_RenderingParams::ChartPosition |
location of stats chart, upper-right position by default
Graphic3d_Vec2i Graphic3d_RenderingParams::ChartSize |
chart size in pixels, (-1, -1) by default which means that chart will occupy a portion of viewport
Standard_Boolean Graphic3d_RenderingParams::CoherentPathTracingMode |
enables/disables 'coherent' tracing mode (single RNG seed within 16x16 image blocks)
PerfCounters Graphic3d_RenderingParams::CollectedStats |
performance counters to collect, PerfCounters_Basic by default; too verbose options might impact rendering performance, because some counters might lack caching optimization (and will require expensive iteration through all data structures)
Standard_ShortReal Graphic3d_RenderingParams::Exposure |
exposure value used for tone mapping (path tracing), 0.0 by default
Font_Hinting Graphic3d_RenderingParams::FontHinting |
enables/disables text hinting within textured fonts, Font_Hinting_Off by default; hinting improves readability of thin text on low-resolution screen, but adds distortions to original font depending on font family and font library version
FrustumCulling Graphic3d_RenderingParams::FrustumCullingState |
state of frustum culling optimization; FrustumCulling_On by default
Standard_ShortReal Graphic3d_RenderingParams::HmdFov2d |
sharp field of view range in degrees for displaying on-screen 2D elements, 30.0 by default;
Standard_Boolean Graphic3d_RenderingParams::IsAntialiasingEnabled |
enables/disables adaptive anti-aliasing, False by default
Standard_Boolean Graphic3d_RenderingParams::IsGlobalIlluminationEnabled |
enables/disables global illumination effects (path tracing)
Standard_Boolean Graphic3d_RenderingParams::IsReflectionEnabled |
enables/disables specular reflections, False by default
Standard_Boolean Graphic3d_RenderingParams::IsShadowEnabled |
enables/disables shadows rendering, True by default
Standard_Boolean Graphic3d_RenderingParams::IsTransparentShadowEnabled |
enables/disables light propagation through transparent media, False by default
Standard_ShortReal Graphic3d_RenderingParams::LineFeather |
Graphic3d_RenderingMode Graphic3d_RenderingParams::Method |
specifies rendering mode, Graphic3d_RM_RASTERIZATION by default
Standard_Integer Graphic3d_RenderingParams::NbMsaaSamples |
number of MSAA samples (should be within 0..GL_MAX_SAMPLES, power-of-two number), 0 by default
Standard_Integer Graphic3d_RenderingParams::NbOitDepthPeelingLayers |
number of depth peeling (Graphic3d_RTM_DEPTH_PEELING_OIT) layers, 4 by default
Standard_Integer Graphic3d_RenderingParams::NbRayTracingTiles |
maximum number of screen tiles per frame, 256 by default (adaptive sampling mode of path tracing); this parameter limits the number of tiles to be rendered per redraw, increasing Viewer interactivity, but also increasing the time for achieving a good quality; -1 means no limit
Standard_ShortReal Graphic3d_RenderingParams::OitDepthFactor |
scalar factor [0-1] controlling influence of depth of a fragment to its final coverage (Graphic3d_RTM_BLEND_OIT), 0.0 by default
Standard_Integer Graphic3d_RenderingParams::PbrEnvBakingDiffNbSamples |
number of samples used in Monte-Carlo integration during diffuse IBL map's spherical harmonics coefficients generation (> 0), 1024 by default
Standard_ShortReal Graphic3d_RenderingParams::PbrEnvBakingProbability |
Standard_Integer Graphic3d_RenderingParams::PbrEnvBakingSpecNbSamples |
number of samples used in Monte-Carlo integration during specular IBL map's generation (> 0), 256 by default
Standard_Integer Graphic3d_RenderingParams::PbrEnvPow2Size |
size of IBL maps side can be calculated as 2^PbrEnvPow2Size (> 0), 9 by default
Standard_Integer Graphic3d_RenderingParams::PbrEnvSpecMapNbLevels |
number of levels used in specular IBL map (> 1), 6 by default
Standard_ShortReal Graphic3d_RenderingParams::RadianceClampingValue |
maximum radiance value used for clamping radiance estimation.
Standard_Integer Graphic3d_RenderingParams::RaytracingDepth |
maximum ray-tracing depth, 3 by default
Standard_Integer Graphic3d_RenderingParams::RayTracingTileSize |
screen tile size, 32 by default (adaptive sampling mode of path tracing);
Standard_Boolean Graphic3d_RenderingParams::RebuildRayTracingShaders |
forces rebuilding ray tracing shaders at the next frame
Standard_ShortReal Graphic3d_RenderingParams::RenderResolutionScale |
rendering resolution scale factor, 1 by default; incompatible with MSAA (e.g. NbMsaaSamples should be set to 0)
Pixels density (PPI), defines scaling factor for parameters like text size (when defined in screen-space units rather than in 3D) to be properly displayed on device (screen / printer). 72 is default value. Note that using difference resolution in different Views in same Viewer will lead to performance regression (for example, text will be recreated every time).
Standard_Integer Graphic3d_RenderingParams::SamplesPerPixel |
number of samples per pixel (SPP)
Graphic3d_TypeOfShadingModel Graphic3d_RenderingParams::ShadingModel |
specified default shading model, Graphic3d_TypeOfShadingModel_Phong by default
Standard_ShortReal Graphic3d_RenderingParams::ShadowMapBias |
shadowmap bias, 0.005 by default;
Standard_Integer Graphic3d_RenderingParams::ShadowMapResolution |
shadow texture map resolution, 1024 by default
Standard_Boolean Graphic3d_RenderingParams::ShowSamplingTiles |
enables/disables debug mode for adaptive screen sampling, FALSE by default
Standard_ShortReal Graphic3d_RenderingParams::StatsMaxChartTime |
upper time limit within frame chart in seconds; 0.1 seconds by default (100 ms or 10 FPS)
Standard_Integer Graphic3d_RenderingParams::StatsNbFrames |
number of data frames to collect history; 1 by default
Handle< Graphic3d_TransformPers > Graphic3d_RenderingParams::StatsPosition |
location of stats, upper-left position by default
Handle< Graphic3d_AspectText3d > Graphic3d_RenderingParams::StatsTextAspect |
stats text aspect
Standard_Integer Graphic3d_RenderingParams::StatsTextHeight |
stats text size; 16 by default
Standard_ShortReal Graphic3d_RenderingParams::StatsUpdateInterval |
Graphic3d_StereoMode Graphic3d_RenderingParams::StereoMode |
stereoscopic output mode, Graphic3d_StereoMode_QuadBuffer by default
|
static |
Default ray-tracing depth.
Default pixels density.
Standard_Boolean Graphic3d_RenderingParams::ToEnableAlphaToCoverage |
enables/disables alpha to coverage, True by default
Standard_Boolean Graphic3d_RenderingParams::ToEnableDepthPrepass |
enables/disables depth pre-pass, False by default
Standard_Boolean Graphic3d_RenderingParams::ToIgnoreNormalMapInRayTracing |
enables/disables normal map ignoring during path tracing; FALSE by default
Standard_Boolean Graphic3d_RenderingParams::ToMirrorComposer |
if output device is an external composer - mirror rendering results in window in addition to sending frame to composer, TRUE by default
Graphic3d_ToneMappingMethod Graphic3d_RenderingParams::ToneMappingMethod |
specifies tone mapping method for path tracing, Graphic3d_ToneMappingMethod_Disabled by default
Standard_Boolean Graphic3d_RenderingParams::ToReverseStereo |
flag to reverse stereo pair, FALSE by default
Standard_Boolean Graphic3d_RenderingParams::ToShowStats |
display performance statistics, FALSE by default; note that counters specified within CollectedStats will be updated nevertheless of visibility of widget managed by ToShowStats flag (e.g. stats can be retrieved by application for displaying using other methods)
Standard_Boolean Graphic3d_RenderingParams::ToSmoothInterlacing |
flag to smooth output on interlaced displays (improves text readability / reduces line aliasing), TRUE by default
Graphic3d_RenderTransparentMethod Graphic3d_RenderingParams::TransparencyMethod |
specifies rendering method for transparent graphics
Standard_Boolean Graphic3d_RenderingParams::TwoSidedBsdfModels |
forces path tracing to use two-sided versions of original one-sided scattering models
Standard_Boolean Graphic3d_RenderingParams::UseEnvironmentMapBackground |
enables/disables environment map background
Standard_ShortReal Graphic3d_RenderingParams::WhitePoint |
white point value used in filmic tone mapping (path tracing), 1.0 by default