MantisBT - Open CASCADE
View Issue Details
0031129Open CASCADE[OCCT] OCCT:Visualizationpublic2019-11-05 10:482021-01-12 13:44
kgv 
kgv 
normalminor 
newopen 
 
[OCCT] 7.6.0* 
0031129: Visualization - revise background / environment API
Existing API for configuring viewer background / environment is unreliable.
There is no public getter returning current state, too many setters, PBR supports only Cubemap and Ray Tracing supports only Equirectangular panorama, different ways for using environment for lighting / background (V3d_View::SetBackgroundCubeMap() for PBR and Graphic3d_RenderingParams::UseEnvironmentMapBackground for RaT Tracing), Graphic3d_TextureEnv/Graphic3d_CubeMap have no relationship although has similar nature, and result depends on the order of called methods.

OpenGl_View::myBackgroundType is inaccessible outside. OpenGl_View::myBackgroundCubeMap can be left defined after OpenGl_View::SetBackgroundImage (Handle(Graphic3d_TextureMap)()) without any option to make it active as background again.

It is proposed to:
- Move background / environment properties to Graphic3d_RenderingParams (preserving a couple of old V3d_View methods for compatibility). No setter is needed to switch state - renderer should be able tracking change.
- Support Cubemap within Ray-Tracing. Preserving support of equirectangular panorama to be considered, if not troublesome.
- Provide dedicated properties for Background Environment and IBL Environment.
  Renderer should be able reusing OpenGL resource created for Background Environment for baking IBL Environment when they are the same using normal resource sharing mechanism. Remove Graphic3d_RenderingParams::UseEnvironmentMapBackground flag.
No tags attached.
related to 0031105new iko Open CASCADE Visualization, TKOpenGl - provide built-in environment maps 
parent of 0031225closed bugmaster Open CASCADE Visualization, TKOpenGl - support cubemap for environment texture within Ray-Tracing 
related to 0030982closed bugmaster Open CASCADE Visualization, OpenGl_View::MinMaxValues() - do not add background quad into depth range 
related to 0031683closed abv Community Visualization - V3d_View::SetBackgroundImage() should accept Image_PixMap 
child of 0030700closed apn Open CASCADE Visualization, TKOpenGl - support PBR Metallic-Roughness shading model 
child of 0030807closed apn Open CASCADE Visualization, TKOpenGl - supporting cubemaps 
child of 0030592closed bugmaster Open CASCADE Draw Harness, ViewerTest - provide vbackground command unifying vsetbg, vsetbgmode, vsetgradientbg, vsetgrbgmode, vsetcolorbg 
Issue History
2019-11-05 10:48kgvNew Issue
2019-11-05 10:48kgvAssigned To => kgv
2019-11-05 10:48kgvRelationship addedrelated to 0031105
2019-11-05 10:49kgvRelationship addedchild of 0030700
2019-11-05 10:49kgvRelationship addedchild of 0030807
2019-11-05 10:49kgvRelationship addedchild of 0030592
2019-11-05 10:50kgvDescription Updatedbug_revision_view_page.php?rev_id=22149#r22149
2019-11-22 15:50kgvRelationship addedrelated to 0030982
2019-12-06 10:33kgvRelationship addedparent of 0031225
2020-07-23 09:12kgvRelationship addedrelated to 0031683
2020-09-21 17:42kgvTarget Version7.5.0 => 7.6.0*
2021-01-12 02:16kgvRelationship addedrelated to 0032052
2021-01-12 13:44kgvDescription Updatedbug_revision_view_page.php?rev_id=24289#r24289

There are no notes attached to this issue.