|Anonymous | Login||2019-09-22 03:23 MSK|
|My View | View Issues | Change Log | Roadmap|
|occt: master 3a9b5dc8|
|dbp||kgv||master||2016-07-13 09:19:27||master 6a24c6de|
|Affected Issues||0027607: Visualization - Implement adaptive screen space sampling in path tracing|
|Changeset||0027607: Visualization - Implement adaptive screen space sampling in path tracing
This commit provides useful functionality for path tracing rendering core.
1) Graphic3d_RenderingParams class was extended with additional AdaptiveScreenSampling option (disabled by default).
If this option is enabled, path tracing tries to adjust the number of samples for different screen areas.
In this way, the more complex areas (from the point of light conditions) are sampled more intensively,
while the simple areas are sampled very rarely.
For example, caustics and glossy reflections are typical candidates for more precise sampling.
In general, this allows to equalize image convergence and not to waste resources for already converged areas.
It is also possible to visualize sampling densities by enabling ShowSamplingTiles option
(activating and deactivating this option does not affect on the accumulated image).
2) Mixing OpenGL and ray-tracing output has been changed.
Now blending is performed using OpenGL functionality, while ray-tracing shaders only output correct Z-value.
Test case bugs vis bug27083 has been updated,
since the alpha value is now correctly set by Ray-Tracing to 1, opaque.
|mod - samples/tcl/pathtrace.tcl|
|mod - src/Graphic3d/Graphic3d_RenderingParams.hxx|
|mod - src/Graphic3d/Graphic3d_TypeOfLimit.hxx|
|mod - src/OpenGl/FILES|
|mod - src/OpenGl/OpenGl_Context.cxx|
|mod - src/OpenGl/OpenGl_Context.hxx|
|mod - src/OpenGl/OpenGl_GlCore11Fwd.hxx|
|mod - src/OpenGl/OpenGl_GlFunctions.hxx|
|mod - src/OpenGl/OpenGl_GraphicDriver.cxx|
|add - src/OpenGl/OpenGl_HaltonSampler.hxx|
|mod - src/OpenGl/OpenGl_SceneGeometry.cxx|
|add - src/OpenGl/OpenGl_TileSampler.cxx|
|add - src/OpenGl/OpenGl_TileSampler.hxx|
|mod - src/OpenGl/OpenGl_View.hxx|
|mod - src/OpenGl/OpenGl_View_Raytrace.cxx|
|mod - src/OpenGl/OpenGl_View_Redraw.cxx|
|mod - src/Shaders/Display.fs|
|mod - src/Shaders/PathtraceBase.fs|
|mod - src/Shaders/RaytraceBase.fs|
|mod - src/Shaders/RaytraceRender.fs|
|mod - src/ViewerTest/ViewerTest_ViewerCommands.cxx|
|mod - tests/bugs/vis/bug27083|
|Copyright © 2000 - 2019 MantisBT Team|