View Issue Details

IDProjectCategoryView StatusLast Update
0032722Open CASCADEOCCT:Visualizationpublic2022-03-07 02:10
Reporterkgv Assigned Tosmoskvin  
PrioritynormalSeverityminor 
Status verifiedResolutionfixed 
Product Version7.3.0 
Target Version7.7.0 
Summary0032722: Visualization, TKOpenGl - performance counters disappear at some camera viewpoints
DescriptionPerformance counters are lost at some camera viewpoints as can be reproduced by script below.
Steps To Reproduce
pload XDE MODELING VISUALIZATION
vinit View1
vcamera -persp
vviewparams -scale 2 -proj -0 -1 -0 -up 0 0 1 -at 96 88 -68

# display red boxes
set aBoxTransp 0.5
box b1   0   0 0 50 50 50
box b2 150   0 0 50 50 50
box b3   0 150 0 50 50 50
vdisplay b1 b2 b3 -dispMode 1 -noupdate
vaspects b1 b2 b3 -color RED -transparency $aBoxTransp

vrenderparams -perfCounters fps
vviewparams -scale 2.14747 -proj 0.160074 0.265291 -0.950788 -up -0.0189965 0.963858 0.265739 -at 63.0574 214.479 199.417
TagsNo tags attached.
Test case numberopengl general bug32722

Attached Files

  • occt_lost_fps_KO.png (118,475 bytes)

Relationships

parent of 0032866 verifiedkgv Visualization, TKOpenGles - FitAll() is broken when performance counters are displayed 

Activities

kgv

2021-12-07 15:40

developer  

occt_lost_fps_KO.png (118,475 bytes)

git

2022-01-08 17:14

administrator   ~0106267

Branch CR32722 has been created by CheskoArt.

SHA-1: c3d5b13fdb9b408ef04cd1f66c97b4a251a5c2de


Detailed log of new commits:

Author: achesnok
Date: Sat Jan 8 17:07:10 2022 +0300

    0032722: Visualization, TKOpenGl - performance counters disappear at some camera viewpoints
    
    Fixed OpenGl_View::MinMaxValues() to take into account focal plane at which performance overlay is displayed.

CheskoArt

2022-01-08 17:20

developer   ~0106268

The text was clipped away by zfar/znear plane due to camera's bounding box zfitting

git

2022-01-08 19:45

administrator   ~0106269

Branch CR32722 has been updated forcibly by CheskoArt.

SHA-1: fe8f9a48a47954313eddf88a1c2fc109cd47a533

CheskoArt

2022-01-08 20:05

developer   ~0106270

Please review patch.
Test results: http://jenkins-test-12.nnov.opencascade.com/view/CR32722-master-achesnok/view/ALL/

kgv

2022-01-10 11:01

developer   ~0106273

@@ -786,6 +786,11 @@ Bnd_Box OpenGl_View::MinMaxValues (const Standard_Boolean theToIncludeAuxiliary)
   }
 
   Bnd_Box aBox = base_type::MinMaxValues (theToIncludeAuxiliary);
+  // make sure that the focal point at which the stats overlay is displayed falls in boundary box
+  if (myRenderParams.ToShowStats && theToIncludeAuxiliary)
+  {
+    aBox.Add (myCamera->Center());

This is technically might be incorrect as text is not necessarily will be drawn at Camera center.
`Graphic3d_RenderingParams::StatsPosition` / `::ChartPosition` should be involved into computations in similar manner as `Graphic3d_CView::MinMaxValues()` handles 2D persistence presentations.

In addition, when `OpenGl_Context::arbDepthClamp` is available, `GL_DEPTH_CLAMP` could be temporarily enabled within `OpenGl_FrameStatsPrs::Render()` as a better alternative to expanding Z range.

git

2022-01-13 22:44

administrator   ~0106360

Branch CR32722 has been updated forcibly by CheskoArt.

SHA-1: bf40c8c88da2ff8b68b82426c24e24ddffa76827

CheskoArt

2022-01-13 22:48

developer   ~0106361

Fixed remarks

git

2022-01-13 22:54

administrator   ~0106362

Branch CR32722 has been updated forcibly by CheskoArt.

SHA-1: 78b337e51c3445269d91ee98a0e7c0f9c686ffed

git

2022-01-14 00:19

administrator   ~0106364

Branch CR32722 has been updated forcibly by kgv.

SHA-1: 7a8521bc520d184b16512f147eec8cea8e5d82b4

smoskvin

2022-01-15 14:07

administrator   ~0106396

Combination -
OCCT branch : IR-2022-01-14
master SHA - 71943b31f820c2b9191854299241dd82c2716eaf
49e51745631c52b6c452c65adae4d6dfa21a1b1e
Products branch : IR-2022-01-14 SHA - 13a1d612d3ecdc2ed1a10120341e9df4c3d9fd2e
was compiled on Linux, MacOS and Windows platforms and tested in optimize mode.

Number of compiler warnings:
No new/fixed warnings

Regressions/Differences/Improvements:
No regressions/differences

CPU differences:
Debian80-64:
OCCT
Total CPU difference: 18239.750000000447 / 18223.400000000463 [+0.09%]
Products
Total CPU difference: 11656.240000000102 / 11659.240000000125 [-0.03%]
Windows-64-VC14:
OCCT
Total CPU difference: 19987.609375 / 20012.3125 [-0.12%]
Products
Total CPU difference: 13139.84375 / 13120.265625 [+0.15%]


Image differences :
No differences that require special attention

Memory differences :
No differences that require special attention

git

2022-01-15 14:37

administrator   ~0106400

Branch CR32722 has been deleted by mnt.

SHA-1: 7a8521bc520d184b16512f147eec8cea8e5d82b4

Related Changesets

occt: master 71943b31

2022-01-08 17:07:10

achesnok


Committer: smoskvin Details Diff
0032722: Visualization, TKOpenGl - performance counters disappear at some camera viewpoints

Fixed OpenGl_FrameStatsPrs::Render() to enable depth clamping.
Fixed OpenGl_View::MinMaxValues() to take into account performance overlay.
Affected Issues
0032722
mod - src/OpenGl/OpenGl_FrameStatsPrs.cxx Diff File
mod - src/OpenGl/OpenGl_View.cxx Diff File
add - tests/opengl/data/general/bug32722 Diff File

Issue History

Date Modified Username Field Change
2021-12-07 15:37 kgv New Issue
2021-12-07 15:37 kgv Assigned To => kgv
2021-12-07 15:40 kgv Product Version 7.6.0 => 7.3.0
2021-12-07 15:40 kgv File Added: occt_lost_fps_KO.png
2021-12-07 15:58 kgv Summary Visualization, TKOpenGl - performance counters are lost at some camera viewpoints => Visualization, TKOpenGl - performance counters disappear at some camera viewpoints
2021-12-28 10:41 kgv Assigned To kgv => CheskoArt
2021-12-28 10:41 kgv Status new => assigned
2022-01-08 17:14 git Note Added: 0106267
2022-01-08 17:16 CheskoArt Test case number => opengl general bug32722
2022-01-08 17:20 CheskoArt Note Added: 0106268
2022-01-08 19:45 git Note Added: 0106269
2022-01-08 20:05 CheskoArt Assigned To CheskoArt => kgv
2022-01-08 20:05 CheskoArt Status assigned => resolved
2022-01-08 20:05 CheskoArt Note Added: 0106270
2022-01-10 11:01 kgv Note Added: 0106273
2022-01-10 11:02 kgv Assigned To kgv => CheskoArt
2022-01-10 11:02 kgv Status resolved => assigned
2022-01-10 11:10 kgv Time allocated 10.1.2022: 2 h. => set
2022-01-13 22:44 git Note Added: 0106360
2022-01-13 22:48 CheskoArt Assigned To CheskoArt => kgv
2022-01-13 22:48 CheskoArt Status assigned => resolved
2022-01-13 22:48 CheskoArt Note Added: 0106361
2022-01-13 22:54 git Note Added: 0106362
2022-01-14 00:19 git Note Added: 0106364
2022-01-14 10:23 kgv Assigned To kgv => bugmaster
2022-01-14 10:23 kgv Status resolved => reviewed
2022-01-15 14:07 smoskvin Status reviewed => tested
2022-01-15 14:07 smoskvin Note Added: 0106396
2022-01-15 14:26 smoskvin Changeset attached => occt master 71943b31
2022-01-15 14:26 smoskvin Assigned To bugmaster => smoskvin
2022-01-15 14:26 smoskvin Status tested => verified
2022-01-15 14:26 smoskvin Resolution open => fixed
2022-01-15 14:37 git Note Added: 0106400
2022-03-07 02:10 kgv Relationship added parent of 0032866