View Issue Details

IDProjectCategoryView StatusLast Update
0023791Open CASCADEOCCT:Visualizationpublic2013-04-29 15:24
Reporterkgv Assigned Tokgv  
PrioritynormalSeverityminor 
Status closedResolutionfixed 
Product Version6.5.4 
Target Version6.6.0Fixed in Version6.6.0 
Summary0023791: Remove obsolete functionality - animation mode and degeneration presentation mode
DescriptionThis functionality is outdated and useless since migration to VBO rendering:
- Degeneration rendering is not working at all (ignored) when VBO are used (OpenGl_PrimitiveArray)
- Animation mode was intended to accelerate rotation of camera using display lists for entire scene and has no effect when VBO's are used
TagsNo tags attached.
Test case numberNot needed

Attached Files

  • snap_wireframe.png (12,675 bytes)
  • snap_shading.png (21,906 bytes)
  • snap_hlr.png (4,000 bytes)
  • snap_degeneration_markers.png (7,564 bytes)

Activities

Pawel

2013-02-22 19:00

updater   ~0023461

Why is actually the degenerate mode going to be removed?

When I activate the 'degenerate mode' the viewer switches into wireframe mode but hidden line removal is performed anyway.

So what does this actually mean that "Degeneration rendering is not working at all (ignored) when VBO are used"?

Thanks for elaborating on that!

kgv

2013-02-23 16:32

developer  

snap_wireframe.png (12,675 bytes)

kgv

2013-02-23 16:33

developer  

snap_shading.png (21,906 bytes)

kgv

2013-02-23 16:33

developer  

snap_hlr.png (4,000 bytes)

kgv

2013-02-23 16:33

developer  

snap_degeneration_markers.png (7,564 bytes)

kgv

2013-02-23 17:01

developer   ~0023462

Dear Pawel,

HLR mode is not affected by this patch.

There was an extreme performance optimization code implemented in 3D viewer to display rough presentation during "animation" (camera rotation with mouse cursor).
Several levels of rough presentation (like markers or bounding boxes) were intended to increase FPS and 3D viewer responsibility to user actions (enumeration Aspect_TypeOfDegenerateModel):
- Aspect_TDM_NONE,
- Aspect_TDM_TINY,
- Aspect_TDM_WIREFRAME,
- Aspect_TDM_MARKER,
- Aspect_TDM_BBOX,
- Aspect_TDM_AUTO

The conception of different Levels Of Details is widespread used in highly interactive 3D applications (games). However conception of degenerated presentation as it was implemented in OCCT is something different and less useful (objects become very indistinct). Since introduction of VBO in OCCT (which significantly improves rendering performance) technical problems appeared and this old functionality was just disabled for most use cases.

Pawel

2013-02-24 03:32

updater   ~0023463

Thanks for clarifying!

kgv

2013-03-15 14:43

developer   ~0023750

Patch is ready for review in the branches CR23791_1 of occt and products repositories.

san

2013-03-15 20:51

developer   ~0023760

Branch CR23791_1 in occt and occt-products repositories reviewed without remarks, ready for testing.

mkv

2013-03-21 18:55

tester   ~0023842

Dear BugMaster,

Branch CR23791_1 from occt and occt-products repositories was compiled on Linux and Windows platforms and tested without rebase.
Branch CR23791_1 in occt repository: SHA-1: 7e48744a9c5842b692c3139d522a9d12856688eb
Branch CR23791_1 in occt-products repository: SHA-1: 894924dabb059dc17829571a3b21f7f8426602a5

Number of compiler warnings:

occt component :
Linux: 3 (3 on master)
Windows: 11 (11 on master)

products component :
Linux: 0 (0 on master)
Windows: 50 (50 on master)

Regressions:
No regressions

Improvements:
No improvements

Testing cases:
Not needed

Testing on Linux:
Total MEMORY difference: 244072960 / 241491828
Total CPU difference: 17757.069999999945 / 14660.890000000101

Testing on Windows:
Total MEMORY difference: 354526828 / 354432060
Total CPU difference: 21734.34375 / 22581.53125

There are not serious differences in images found by testdiff.

Related Changesets

occt: master de75ed09

2013-03-15 07:46:21

kgv

Details Diff
0023791: Remove obsolete functionality - animation mode and degeneration presentation mode Affected Issues
0023791
mod - samples/CSharp/OCC/OCC.vcproj Diff File
mod - samples/CSharp/OCC/OCCViewer.cpp Diff File
mod - samples/CSharp/OCC/stdafx.h Diff File
mod - samples/CSharp/shell/shell.vcproj Diff File
mod - samples/mfc/standard/01_Geometry/src/GeometryView.cpp Diff File
mod - samples/mfc/standard/04_Viewer3d/src/Viewer3dView.cpp Diff File
mod - samples/mfc/standard/04_Viewer3d/src/Viewer3dView.h Diff File
mod - samples/mfc/standard/08_HLR/res/HLR.APS Diff File
mod - samples/mfc/standard/08_HLR/res/HLR.rc Diff File
mod - samples/mfc/standard/08_HLR/res/resource.h Diff File
mod - samples/mfc/standard/08_HLR/src/SelectionDialog.cpp Diff File
mod - samples/mfc/standard/08_HLR/src/SelectionDialog.h Diff File
mod - samples/mfc/standard/09_Animation/src/AnimationView3D.cpp Diff File
mod - samples/mfc/standard/09_Animation/src/AnimationView3D.h Diff File
mod - samples/mfc/standard/Common/OCC_3dView.cpp Diff File
mod - samples/mfc/standard/Common/OCC_3dView.h Diff File
mod - samples/qt/Common/src/MDIWindow.cxx Diff File
mod - samples/qt/Common/src/View.cxx Diff File
mod - samples/qt/Common/src/View.h Diff File
mod - src/AIS/AIS_InteractiveContext.cdl Diff File
mod - src/AIS/AIS_InteractiveContext.cxx Diff File
mod - src/AIS/AIS_InteractiveObject.cdl Diff File
mod - src/AIS/AIS_InteractiveObject.cxx Diff File
mod - src/Aspect/Aspect.cdl Diff File
mod - src/Graphic3d/Graphic3d_AspectFillArea3d.cdl Diff File
mod - src/Graphic3d/Graphic3d_AspectFillArea3d.cxx Diff File
mod - src/Graphic3d/Graphic3d_CGroup.hxx Diff File
mod - src/Graphic3d/Graphic3d_CView.hxx Diff File
mod - src/Graphic3d/Graphic3d_GraphicDriver.cdl Diff File
mod - src/Graphic3d/Graphic3d_Structure.cxx Diff File
mod - src/InterfaceGraphic/FILES Diff File
rm - src/InterfaceGraphic/InterfaceGraphic_degeneration.hxx Diff File
mod - src/InterfaceGraphic/InterfaceGraphic_Labels.hxx Diff File
mod - src/InterfaceGraphic/InterfaceGraphic_PrimitiveArray.hxx Diff File
mod - src/OpenGl/FILES Diff File
mod - src/OpenGl/OpenGl_GraphicDriver.cxx Diff File
mod - src/OpenGl/OpenGl_GraphicDriver.hxx Diff File
mod - src/OpenGl/OpenGl_GraphicDriver_1.cxx Diff File
mod - src/OpenGl/OpenGl_GraphicDriver_3.cxx Diff File
mod - src/OpenGl/OpenGl_GraphicDriver_4.cxx Diff File
mod - src/OpenGl/OpenGl_GraphicDriver_7.cxx Diff File
mod - src/OpenGl/OpenGl_Group.cxx Diff File
mod - src/OpenGl/OpenGl_NamedStatus.hxx Diff File
mod - src/OpenGl/OpenGl_Polygon.cxx Diff File
mod - src/OpenGl/OpenGl_Polyline.cxx Diff File
mod - src/OpenGl/OpenGl_PrimitiveArray.cxx Diff File
mod - src/OpenGl/OpenGl_PrimitiveArray.hxx Diff File
mod - src/OpenGl/OpenGl_Structure.cxx Diff File
mod - src/OpenGl/OpenGl_Structure.hxx Diff File
mod - src/OpenGl/OpenGl_Text.cxx Diff File
mod - src/OpenGl/OpenGl_tsm.hxx Diff File
mod - src/OpenGl/OpenGl_View.cxx Diff File
mod - src/OpenGl/OpenGl_View.hxx Diff File
mod - src/OpenGl/OpenGl_View_2.cxx Diff File
mod - src/OpenGl/OpenGl_Workspace.cxx Diff File
mod - src/OpenGl/OpenGl_Workspace.hxx Diff File
rm - src/OpenGl/OpenGl_Workspace_1.cxx Diff File
mod - src/OpenGl/OpenGl_Workspace_3.cxx Diff File
mod - src/OpenGl/OpenGl_Workspace_5.cxx Diff File
mod - src/QABugs/QABugs_17.cxx Diff File
mod - src/QABugs/QABugs_8.cxx Diff File
mod - src/V3d/V3d_View.cdl Diff File
mod - src/V3d/V3d_View.cxx Diff File
mod - src/V3d/V3d_Viewer.cdl Diff File
mod - src/ViewerTest/ViewerTest_Tool.cxx Diff File
mod - src/ViewerTest/ViewerTest_ViewerCommands.cxx Diff File
mod - src/Visual3d/Visual3d.cdl Diff File
mod - src/Visual3d/Visual3d_View.cdl Diff File
mod - src/Visual3d/Visual3d_View.cxx Diff File
mod - src/Visual3d/Visual3d_View.pxx Diff File
rm - tests/bugs/vis/buc60753 Diff File

Issue History

Date Modified Username Field Change
2013-02-22 17:37 kgv New Issue
2013-02-22 17:37 kgv Assigned To => kgv
2013-02-22 19:00 Pawel Note Added: 0023461
2013-02-23 16:32 kgv File Added: snap_wireframe.png
2013-02-23 16:33 kgv File Added: snap_shading.png
2013-02-23 16:33 kgv File Added: snap_hlr.png
2013-02-23 16:33 kgv File Added: snap_degeneration_markers.png
2013-02-23 17:01 kgv Note Added: 0023462
2013-02-24 03:32 Pawel Note Added: 0023463
2013-02-26 15:25 abv Target Version => 6.7.0
2013-03-15 14:43 kgv Note Added: 0023750
2013-03-15 14:43 kgv Assigned To kgv => san
2013-03-15 14:43 kgv Status new => resolved
2013-03-15 20:51 san Note Added: 0023760
2013-03-15 20:51 san Assigned To san => bugmaster
2013-03-15 20:51 san Status resolved => reviewed
2013-03-18 19:41 mkv Assigned To bugmaster => mkv
2013-03-21 18:55 mkv Note Added: 0023842
2013-03-21 18:55 mkv Test case number => Not needed
2013-03-21 18:55 mkv Assigned To mkv => bugmaster
2013-03-21 18:55 mkv Status reviewed => tested
2013-03-25 18:39 kgv Changeset attached => occt master de75ed09
2013-03-25 18:39 kgv Assigned To bugmaster => kgv
2013-03-25 18:39 kgv Status tested => verified
2013-03-25 18:39 kgv Resolution open => fixed
2013-03-29 21:36 abv Target Version 6.7.0 => 6.6.0
2013-04-23 13:35 aiv Status verified => closed
2013-04-29 15:24 aiv Fixed in Version => 6.6.0