View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0027130 | Open CASCADE | OCCT:Visualization | public | 2016-02-05 10:43 | 2020-11-21 13:27 |
Reporter | kgv | Assigned To | bugmaster | ||
Priority | normal | Severity | minor | ||
Status | closed | Resolution | fixed | ||
Product Version | 7.0.0 | ||||
Target Version | 7.6.0 | Fixed in Version | 7.6.0 | ||
Summary | 0027130: Visualization, Ray tracing - skip structures with transformation persistence flag | ||||
Description | Transformation persistence is not supported by Ray Tracing core. Thus, such structures should not be identified as ray-traceable and should be rendered using rasterization approach. | ||||
Steps To Reproduce | test bugs vis bug26719_1 1 vraytrace 1 | ||||
Tags | No tags attached. | ||||
Test case number | v3d/raytrace/bug27130 | ||||
|
zoompers_raytrace_KO.png (3,405 bytes) |
|
zoompers_raster_OK.png (19,942 bytes) |
|
Branch CR27130 has been created by mzernova. SHA-1: 0e53cca0a4c70160baefcf63a5539a61c6c3b883 Detailed log of new commits: Author: mzernova Date: Thu Jul 9 11:32:40 2020 +0300 0027130: Visualization, Ray tracing - skip structures with transformation persistence flag Added myHasPersistence flag into Graphic3d_PrimitiveArray and Graphic3d_Group It is allows to determine objects with transform persistence as non ray-traceable and render them using the rasterization approach |
|
http://vm-jenkins-test-12.nnov.opencascade.com:8080/view/CR27130-master-mzernova |
|
OpenGl_Structure::SetTransformPersistence() is not handled by the patch.OpenGl_PrimitiveArray* anArray = new OpenGl_PrimitiveArray (aDriver, theType, theIndices, theAttribs, theBounds); + anArray->SetPersistence (HasPersistence()); There is no reason for OpenGl_PrimitiveArray or OpenGl_Group to be aware of transformation persistence assigned to entire structure. --- a/tests/bugs/vis/bug26719_1 +++ b/tests/bugs/vis/bug26719_1 +vraytrace 1 +vdump ${imagedir}/${casename}_raytrace.png This test case is dedicated to another issue. Ray-Tracing test cases should be defined independently in v3d/raytrace test grid. |
|
Branch CR27130 has been updated forcibly by mzernova. SHA-1: 0f3670e70e025655dedb8100c8c0293ab0ae9ec4 |
|
Branch CR27130_1 has been created by mzernova. SHA-1: 52e072eb4e3d9eced32add817efa424fb8bfbd51 Detailed log of new commits: Author: mzernova Date: Thu Jul 9 11:32:40 2020 +0300 0027130: Visualization, Ray tracing - skip structures with transformation persistence flag Objects with transform persistence are detected as non ray-tracable and redered using the rasterization approach. The renderFiltered() method moved to the OpenGl_Group class. bugs/vis/bug27130: test case added |
|
http://vm-jenkins-test-12.nnov.opencascade.com:8080/view/CR27130_1-master-mzernova |
|
Branch CR27130_1 has been updated forcibly by mzernova. SHA-1: a4036c4443910d1d739ff108731d4dbce2bd5464 |
|
Branch CR27130 has been updated forcibly by mzernova. SHA-1: aadf293420af60cffd4e1d24a09393b5b4edeb68 |
|
Branch CR27130 has been updated by mzernova. SHA-1: 6d2496ffc3d105ef5a29e2ab8c676a5ce4ad1bee Detailed log of new commits: Author: mzernova Date: Wed Nov 18 08:42:41 2020 +0300 Test case was moved |
|
Branch CR27130_1 has been updated forcibly by mzernova. SHA-1: 8739ee225c933dc616a29d5747a93af56743f605 |
|
+Standard_Boolean OpenGl_Group::renderFiltered (const Handle(OpenGl_Workspace)& theWorkspace, + OpenGl_Element* theElement) const +{ + Standard_Boolean isNotRaytraced = (theWorkspace->RenderFilter() & OpenGl_RenderFilter_NonRaytraceableOnly) != 0 + && OpenGl_Raytrace::IsRaytracedElement (theElement) + && HasPersistence(); + + if (isNotRaytraced || theWorkspace->ShouldRender (theElement)) + { + theElement->Render (theWorkspace); Proposed logic spreads apart filtering into two places making it fragile and cumbersome. I propose keeping the logic within OpenGl_Workspace::ShouldRender() method, which could be extended with Groups/Structure parameters to take into account necessary context. |
|
Branch CR27130 has been updated by mzernova. SHA-1: 550b4498b75f4fa65a4a3121e7cd2879590c3b10 Detailed log of new commits: Author: mzernova Date: Wed Nov 18 11:43:22 2020 +0300 remarks from kgv |
|
Branch CR27130_1 has been updated forcibly by mzernova. SHA-1: 6b5f74abde61e09df02ec056e10aecaf70a313fd |
|
Branch CR27130 has been updated by mzernova. SHA-1: 77d30d5740a7903f897a6b43ad39710c85970552 Detailed log of new commits: Author: mzernova Date: Wed Nov 18 17:10:28 2020 +0300 remarks from kgv |
|
Branch CR27130_1 has been updated forcibly by mzernova. SHA-1: 3b3266bc5ad6c5fbfcfe51af6ea1b711d8d78dd9 |
|
Branch CR27130_1 has been updated forcibly by mzernova. SHA-1: 053fa0ebed2d574987862d313d7e8fd9e621ad56 |
|
Branch CR27130 has been updated by mzernova. SHA-1: 155dc4e4b1f0db2185cb0bf0845c51d00e392a3e Detailed log of new commits: Author: mzernova Date: Thu Nov 19 11:16:26 2020 +0300 remarks from kgv |
|
Branch CR27130_1 has been updated forcibly by kgv. SHA-1: cf78965e03a6ca6b22f6ad45234752717d75f26a |
|
Please raise the patch - OCCT branch: CR27130_1. |
|
Combination - OCCT branch : IR-2020-11-20 master SHA - c5892d852bb462075f9db03f31085e35d7b59f35 a206de37fbfa0bf71bd534ae47192bbec23b8522 Products branch : IR-2020-11-20 SHA - a5d1f89f5fa83c955e6a604f57a5b590eb433b43 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: 18024.090000000127 / 17964.340000000077 [+0.33%] Products Total CPU difference: 12166.12000000011 / 12169.520000000111 [-0.03%] Windows-64-VC14: OCCT Total CPU difference: 19696.90625 / 19723.125 [-0.13%] Products Total CPU difference: 13644.875 / 13567.078125 [+0.57%] Image differences : No differences that require special attention Memory differences : No differences that require special attention |
|
Branch CR27130_1 has been deleted by inv. SHA-1: cf78965e03a6ca6b22f6ad45234752717d75f26a |
|
Branch CR27130 has been deleted by inv. SHA-1: 155dc4e4b1f0db2185cb0bf0845c51d00e392a3e |
occt: master 4552cb85 2020-07-09 08:32:40 Committer: bugmaster Details Diff |
0027130: Visualization, Ray tracing - skip structures with transformation persistence flag Objects with transform persistence are detected as non ray-tracable and redered using the rasterization approach. The renderFiltered() method moved to the OpenGl_Group class. v3d/raytrace/bug27130: test case added |
Affected Issues 0027130 |
|
mod - src/OpenGl/OpenGl_CappingAlgo.cxx | Diff File | ||
mod - src/OpenGl/OpenGl_Group.cxx | Diff File | ||
mod - src/OpenGl/OpenGl_Group.hxx | Diff File | ||
mod - src/OpenGl/OpenGl_SceneGeometry.cxx | Diff File | ||
mod - src/OpenGl/OpenGl_Structure.cxx | Diff File | ||
mod - src/OpenGl/OpenGl_Workspace.cxx | Diff File | ||
mod - src/OpenGl/OpenGl_Workspace.hxx | Diff File | ||
add - tests/v3d/raytrace/bug27130 | Diff File |
Date Modified | Username | Field | Change |
---|---|---|---|
2016-02-05 10:43 | kgv | New Issue | |
2016-02-05 10:43 | kgv | Assigned To | => kgv |
2016-02-05 10:43 | kgv | File Added: zoompers_raytrace_KO.png | |
2016-02-05 10:43 | kgv | File Added: zoompers_raster_OK.png | |
2016-10-25 09:41 | kgv | Target Version | 7.1.0 => 7.2.0 |
2017-07-20 10:52 | kgv | Target Version | 7.2.0 => 7.4.0 |
2019-09-04 12:48 |
|
Target Version | 7.4.0 => 7.5.0 |
2020-07-02 10:09 | kgv | Assigned To | kgv => mzernova |
2020-07-02 10:09 | kgv | Status | new => assigned |
2020-07-09 11:33 | git | Note Added: 0093055 | |
2020-07-09 14:17 | mzernova | Note Added: 0093061 | |
2020-07-09 18:27 | kgv | Note Added: 0093071 | |
2020-09-21 17:42 | kgv | Target Version | 7.5.0 => 7.6.0 |
2020-11-17 18:02 | git | Note Added: 0096838 | |
2020-11-17 18:03 | git | Note Added: 0096839 | |
2020-11-17 18:06 | mzernova | Note Added: 0096840 | |
2020-11-17 23:04 | git | Note Added: 0096854 | |
2020-11-17 23:05 | git | Note Added: 0096855 | |
2020-11-18 08:35 | mzernova | Assigned To | mzernova => kgv |
2020-11-18 08:35 | mzernova | Status | assigned => resolved |
2020-11-18 08:43 | git | Note Added: 0096859 | |
2020-11-18 08:44 | git | Note Added: 0096860 | |
2020-11-18 09:58 | kgv | Note Added: 0096861 | |
2020-11-18 09:59 | kgv | Assigned To | kgv => mzernova |
2020-11-18 09:59 | kgv | Status | resolved => assigned |
2020-11-18 11:57 | git | Note Added: 0096875 | |
2020-11-18 11:57 | git | Note Added: 0096876 | |
2020-11-18 15:40 | mzernova | Assigned To | mzernova => kgv |
2020-11-18 15:40 | mzernova | Status | assigned => resolved |
2020-11-18 15:59 | kgv | Assigned To | kgv => mzernova |
2020-11-18 15:59 | kgv | Status | resolved => assigned |
2020-11-18 17:11 | git | Note Added: 0096886 | |
2020-11-18 17:11 | git | Note Added: 0096887 | |
2020-11-18 17:12 | mzernova | Assigned To | mzernova => kgv |
2020-11-18 17:12 | mzernova | Status | assigned => resolved |
2020-11-19 09:59 | kgv | Assigned To | kgv => mzernova |
2020-11-19 09:59 | kgv | Status | resolved => assigned |
2020-11-19 11:16 | git | Note Added: 0096894 | |
2020-11-19 11:17 | git | Note Added: 0096895 | |
2020-11-19 11:18 | mzernova | Assigned To | mzernova => kgv |
2020-11-19 11:18 | mzernova | Status | assigned => resolved |
2020-11-19 11:31 | git | Note Added: 0096896 | |
2020-11-19 11:31 | kgv | Note Added: 0096897 | |
2020-11-19 11:31 | kgv | Assigned To | kgv => bugmaster |
2020-11-19 11:31 | kgv | Status | resolved => reviewed |
2020-11-21 12:39 | bugmaster | Changeset attached | => occt master 4552cb85 |
2020-11-21 12:39 | bugmaster | Status | reviewed => verified |
2020-11-21 12:39 | bugmaster | Resolution | open => fixed |
2020-11-21 12:42 | bugmaster | Note Added: 0096927 | |
2020-11-21 12:44 | bugmaster | Test case number | => v3d/raytrace/bug27130 |
2020-11-21 13:27 | git | Note Added: 0096945 | |
2020-11-21 13:27 | git | Note Added: 0096946 |