MantisBT
Mantis Bug Tracker Workflow

View Issue Details Jump to Notes ] Related Changesets ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0032042Open CASCADE[OCCT] OCCT:Visualizationpublic2021-01-07 11:202021-03-22 20:42
Reporterkgv 
Assigned Tobugmaster 
PrioritynormalSeverityintegration request 
StatusverifiedResolutionfixed 
PlatformOSOS Version
Product Version 
Target Version[OCCT] 7.6.0*Fixed in Version 
Summary0032042: Visualization, TKOpenGl - pre-multiply headlight flag into light source position
DescriptionCurrently headlight flag is passed to GLSL program so that transformation has to be applied dynamically.

This looks like unnecessary overcomplication - as camera position remains static within frame, it makes sense premultiplying transformation and passing final headlight position.
TagsNo tags attached.
Test case numberNot required
Attached Files

- Relationships
related to 0027750closedbugmaster Visualization, V3d_View - remove unused functionality ZClipping and ZCueing 
parent of 0032200verifiedbugmaster Visualization, TKOpenGl - unify Phong/PBR light space calculations 
related to 0032238newkgv Visualization, TKOpenGl - GLSL compilation errors when using ANGLE (OpenGL ES 2.0) with disabled highp 
related to 0032222verifiedbugmaster Visualization, V3d_Viewer - use Graphic3d_TOSM_FRAGMENT by default instead of Graphic3d_TOSM_VERTEX 

-  Notes
(0098022)
git (administrator)
2021-01-09 23:34

Branch CR32042 has been created by kgv.

SHA-1: c262aafaff5398237d85c2ab434141501460ab70


Detailed log of new commits:

Author: kgv
Date: Fri Jan 8 00:48:29 2021 +0300

    0032042: Visualization, TKOpenGl - pre-multiply headlight flag into light source position
    
    OpenGl_ShaderManager::pushLightSourceState() now pre-multiplies headlight transformation.
    Built-in shading GLSL programs have been updated to remove special handling if headlight flag;
    also removed redundant pre-normalization of light source direction
    (already normalized implicitly by Graphic3d_CLight interface).
    
    Graphic3d_CLight::SetHeadlight() now raises exception in case of ambient light type.
    OpenGl_ShaderManager::SetLastView() - removed unused property.
(0098032)
git (administrator)
2021-01-10 02:29

Branch CR32042 has been updated forcibly by kgv.

SHA-1: f9be7ae44ff09900e41e2b41627ab91bdf803fe9
(0098036)
kgv (developer)
2021-01-10 04:25

Patch is ready for review
- OCCT branch: CR32042.

http://jenkins-test-12.nnov.opencascade.com/view/CR32042-master-KGV [^]
(0098088)
osa (developer)
2021-01-12 12:17

The patch was reviewed
(0098147)
bugmaster (administrator)
2021-01-16 13:30

Combination -
OCCT branch : IR-2021-01-15
master SHA - 6fab0b34288ef3f29ecf4eabc0283540460dbc31
a206de37fbfa0bf71bd534ae47192bbec23b8522
Products branch : IR-2021-01-15 SHA - a8521c25e41405ac279e65e1fcde5de75a344b0b
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: 17754.160000000134 / 17720.07000000011 [+0.19%]
Products
Total CPU difference: 12412.630000000105 / 12419.360000000095 [-0.05%]
Windows-64-VC14:
OCCT
Total CPU difference: 19336.3125 / 19330.015625 [+0.03%]
Products
Total CPU difference: 13740.03125 / 13831.828125 [-0.66%]


Image differences :
No differences that require special attention

Memory differences :
No differences that require special attention

- Related Changesets
occt: master 37f80e16
Timestamp: 2021-01-07 21:48:29
Author: kgv
Committer: bugmaster
Details ] Diff ]
0032042: Visualization, TKOpenGl - pre-multiply headlight flag into light source position

OpenGl_ShaderManager::pushLightSourceState() now pre-multiplies headlight transformation.
Built-in shading GLSL programs have been updated to remove special handling if headlight flag;
also removed redundant pre-normalization of light source direction
(already normalized implicitly by Graphic3d_CLight interface).

Graphic3d_CLight::SetHeadlight() now raises exception in case of ambient light type.
OpenGl_ShaderManager::SetLastView() - removed unused property.
mod - src/Graphic3d/Graphic3d_CLight.cxx Diff ] File ]
mod - src/Graphic3d/Graphic3d_CLight.hxx Diff ] File ]
mod - src/OpenGl/OpenGl_ShaderManager.cxx Diff ] File ]
mod - src/OpenGl/OpenGl_ShaderManager.hxx Diff ] File ]
mod - src/OpenGl/OpenGl_View.cxx Diff ] File ]
mod - src/Shaders/Declarations.glsl Diff ] File ]
mod - src/Shaders/Shaders_Declarations_glsl.pxx Diff ] File ]
mod - src/ViewerTest/ViewerTest_ViewerCommands.cxx Diff ] File ]

- Issue History
Date Modified Username Field Change
2021-01-07 11:20 kgv New Issue
2021-01-07 11:20 kgv Assigned To => kgv
2021-01-07 11:23 kgv Relationship added related to 0027750
2021-01-09 23:34 git Note Added: 0098022
2021-01-10 02:29 git Note Added: 0098032
2021-01-10 04:25 kgv Note Added: 0098036
2021-01-10 04:25 kgv Assigned To kgv => osa
2021-01-10 04:25 kgv Status new => resolved
2021-01-12 12:17 osa Note Added: 0098088
2021-01-12 12:17 osa Assigned To osa => bugmaster
2021-01-12 12:17 osa Status resolved => reviewed
2021-01-16 13:30 bugmaster Note Added: 0098147
2021-01-16 13:30 bugmaster Status reviewed => tested
2021-01-16 13:51 bugmaster Test case number => Not required
2021-01-16 14:12 bugmaster Changeset attached => occt master 37f80e16
2021-01-16 14:12 bugmaster Status tested => verified
2021-01-16 14:12 bugmaster Resolution open => fixed
2021-03-06 02:48 kgv Relationship added parent of 0032200
2021-03-22 20:42 kgv Relationship added related to 0032238
2021-03-22 20:42 kgv Relationship added related to 0032222


Copyright © 2000 - 2021 MantisBT Team
Powered by Mantis Bugtracker