DiscussionsIssue archiveOCCT:Visualization

Archived issue #0024381

Visualization, TKOpenGl - revise matrices stack and usage of temporary matrices

Open CASCADEOCCT:Visualizationclosed51 public notes

Search issues

Description

Current implementation of matrices is complicated.
Not all places are correctly processed for GLSL rendering (e.g. text).
Matrices stack (glPushMatrix) should be either simulated or withdrawn.

Public activity

51 archived notes

Participants are labeled by their role within this record.

01Commenter 2
Branch [archived branch] has been created by Participant.

[revision removed]


Detailed log of new commits:

Author: dbp
Date: Fri Oct 3 11:17:29 2014 +0400

    Eliminating matrix operations from z-buffer trihedron.
02Commenter 2
Branch [archived branch] has been updated by Participant.

[revision removed]


Detailed log of new commits:

Author: dbp
Date: Fri Oct 3 13:29:40 2014 +0400

    Eliminating glPushMatrix/glPopMatrix.

03Commenter 2
Branch [archived branch] has been updated by Participant.

[revision removed]


Detailed log of new commits:

Author: dbp
Date: Fri Oct 3 14:41:57 2014 +0400

    Eliminating OpenGl matrix operations from OpenGl_Text.cxx.

04Commenter 2
Branch [archived branch] has been updated by Participant.

[revision removed]


Detailed log of new commits:

Author: dbp
Date: Fri Oct 3 15:13:36 2014 +0400

    Eliminating OpenGL matrix operations from OpenGl_Structure.

05Commenter 2
Branch [archived branch] has been created by Participant.

[revision removed]


Detailed log of new commits:

Author: dbp
Date: Fri Oct 3 16:08:07 2014 +0400

    Eliminating OpenGl matrix operations.
06Commenter 6
Dear duv,

please review (and possibly correct) the patch in branch CR24381_1. Please check all fragments in which camera information can be used.
07Commenter 2
Branch [archived branch] has been created by Participant.

[revision removed]


Detailed log of new commits:

Author: duv
Date: Thu Oct 9 18:38:10 2014 +0400

    Porting to matrix stack

Author: duv
Date: Tue Oct 7 11:44:52 2014 +0400

    Move shaders to OpenGL_Mat4.

Author: duv
Date: Mon Oct 6 18:22:20 2014 +0400

    Matrix stack implemented.
08Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
09Commenter 9
Dear kgv,

Please review the patch.
10Commenter 2
Branch [archived branch] has been updated by Author.

[revision removed]


Detailed log of new commits:

Author: Author
Date: Wed Oct 15 19:51:16 2014 +0400

    Move OpenGl_Quadric classes to dedicated files

Author: Author
Date: Wed Oct 15 19:26:39 2014 +0400

    OpenGl_Quadric - inherit from OpenGl_PrimitiveArray, eliminate duplicated arrays

11Commenter 2
Branch [archived branch] has been updated by Author.

[revision removed]


Detailed log of new commits:

Author: Author
Date: Wed Oct 15 20:43:45 2014 +0400

    OpenGl_Trihedron - fix memory leak on OpenGl_Quadric fields allocated dynamically

12Commenter 2
Branch [archived branch] has been updated by Author.

[revision removed]


Detailed log of new commits:

Author: Author
Date: Thu Oct 16 11:56:45 2014 +0400

    cosmetics

Author: Author
Date: Thu Oct 16 11:26:08 2014 +0400

    OpenGl_Trihedron::redrawZBuffer() - do not use glPushAttrib()/glPopAttrib()

13Commenter 2
Branch [archived branch] has been created by Author.

[revision removed]


Detailed log of new commits:

Author: duv
Date: Thu Oct 16 12:01:51 2014 +0400

    0024381: TKOpenGl - revise matrices stack and usage of temporary matrices
14Commenter 2
Branch [archived branch] has been updated by Author.

[revision removed]


Detailed log of new commits:

Author: Author
Date: Thu Oct 16 13:04:42 2014 +0400

    NCollection_Mat4 - fix new compilation errors and warnings

15Commenter 2
Branch [archived branch] has been updated by Author.

[revision removed]


Detailed log of new commits:

Author: Author
Date: Thu Oct 16 14:30:23 2014 +0400

    OpenGl_Utils - fix compilation errors on gcc

16Commenter 2
Branch [archived branch] has been created by Author.

[revision removed]


Detailed log of new commits:

Author: Author
Date: Thu Oct 16 14:31:41 2014 +0400

    0024381: TKOpenGl - revise matrices stack and usage of temporary matrices

Author: Author
Date: Wed Oct 8 12:29:47 2014 +0400

    0025303: Visualization, TKOpenGl - dynamically disable unused light sources in generated GLSL program
17Commenter 2
Branch [archived branch] has been updated by Author.

[revision removed]


Detailed log of new commits:

Author: Author
Date: Thu Oct 16 15:23:21 2014 +0400

    OpenGl_Context::ApplyModelViewMatrix() - fix compiler warning on Android

18Author
Please test the patch in branch CR24381_4.
19Commenter 19
Dear kgv,

Please rebase branch CR24381_4 to new master.
20Commenter 2
Branch [archived branch] has been created by Author.

[revision removed]


Detailed log of new commits:

Author: duv
Date: Thu Oct 16 14:31:41 2014 +0400

    0024381: TKOpenGl - revise matrices stack and usage of temporary matrices
21Author
Please test branch CR24381_5.
22Commenter 22
Dear Commenter 1,

Branch CR24381_5 was compiled on Linux platform.
There are following compilation errors:
http://jenkins-test-02.nnov.opencascade.com/user/mnt/my-views/view/CR24381_5/job/mnt-CR24381_5-master_build_occt_linux/2/parsed_console/
1. ../../../../inc/OpenGl_GlFunctions.hxx:1038: error: ‘PFNGLBINDFRAGDATALOCATIONINDEXEDPROC’ does not name a type
2. ../../../../inc/OpenGl_GlFunctions.hxx:1039: error: ‘PFNGLGETFRAGDATAINDEXPROC’ does not name a type
3. ../../../../inc/OpenGl_GlFunctions.hxx:1043: error: ‘PFNGLGENSAMPLERSPROC’ does not name a type
...
Total: 260 errors
23Commenter 2
Branch [archived branch] has been updated by Author.

[revision removed]


Detailed log of new commits:

Author: Author
Date: Wed Oct 22 14:13:41 2014 +0400

    OpenGl_Window - revert header inclusion order change

24Author
Please try updated branch.
25Commenter 25
Dear Commenter 1,

Branch CR24381_5 (and products from GIT master) was compiled on Linux, MacOS and Windows platforms and tested.
[revision removed]

Number of compiler warnings:
occt component:
   Linux: 15 (15 on master)
   Windows: 0 (0 on master)
products component:
   Linux: 11 (11 on master)
   Windows: 1 (1 on master)

Regressions/Differences:
Not detected

Testing cases:
Not needed

Testing on Linux:
Total MEMORY difference: 368829344 / 368919864
Total CPU difference: 47217.09000000007 / 44655.71000000001

Testing on Windows:
Total MEMORY difference: 368829344 / 368919864
Total CPU difference: 47217.09000000007 / 44655.71000000001

There are differences in images found by testdiff:
http://occt-tests/CR24381-5-master-occt/Debian60-64/diff-Debian60-64.html
http://occt-tests/CR24381-5-master-occt/Windows-32-VC10/diff-Windows-32-VC10.html
Pay attention to (Linux only):
demo samples dimensions
bugs vis bug25132, bug22368, bug23120, bug24901, bug24224, bug25276, bug23120, bug24902, bug223
26Commenter 2
Branch [archived branch] has been created by Participant.

[revision removed]


No new revisions were added by this update.
27Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
28Commenter 28
Dear Commenter 1,

please re-test the patch in branch CR24381_6.
29Commenter 2
Branch [archived branch] has been updated by Participant.

[revision removed]


Detailed log of new commits:

Author: dbp
Date: Fri Oct 24 19:35:06 2014 +0400

    Fix problem with capping surfaces.

30Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
31Commenter 31
Dear Commenter 1,

Branch CR24381_6 (and products from GIT master) was compiled on Linux, MacOS and Windows platforms and tested.
[revision removed]

Number of compiler warnings:
occt component:
   Linux: 18 (18 on master)
   Windows: 0 (0 on master)
products component:
   Linux: 11 (11 on master)
   Windows: 1 (1 on master)

Regressions/Differences:
Not detected

Testing cases:
Not needed

Testing on Linux:
Total MEMORY difference: 372387260 / 371798320
Total CPU difference: 48110.360000000175 / 48296.50000000005

Testing on Windows:
Total MEMORY difference: 275266560 / 273087684
Total CPU difference: 45199.390625 / 37050.84375

There are differences in images found by testdiff:
http://occt-tests/CR24381-6-master-occt/Debian60-64/diff-Debian60-64.html
http://occt-tests/CR24381-6-master-occt/Windows-32-VC10/diff-Windows-32-VC10.html
Pay attention to:
bugs vis bug25276, bug22337
32Commenter 2
Branch [archived branch] has been updated by Author.

[revision removed]


Detailed log of new commits:

Author: Author
Date: Thu Oct 30 19:42:46 2014 +0400

    OpenGl_View::ReleaseGlResources() - release GL resources of trihedron, do not destroy it

33Commenter 2
Branch [archived branch] has been created by Author.

[revision removed]


No new revisions were added by this update.
34Commenter 2
Branch [archived branch] has been updated by Author.

[revision removed]


Detailed log of new commits:

Author: duv
Date: Fri Oct 31 10:29:51 2014 +0300

    0024381: Visualization, TKOpenGl - revise matrices stack and usage of temporary matrices
    0025301: Visualization, TKOpenGl - transpose matrix manually before glUniformMatrix4fv()
    
    OpenGl_View::ReleaseGlResources() - release GL resources of trihedron, do not destroy it

35Commenter 2
Branch [archived branch] has been created by Author.

[revision removed]


Detailed log of new commits:

Author: Author
Date: Mon Nov 3 20:32:37 2014 +0300

    OpenGl_Structure::Render() - fix rebase issue

Author: duv
Date: Fri Oct 31 10:29:51 2014 +0300

    0024381: Visualization, TKOpenGl - revise matrices stack and usage of temporary matrices
    0025301: Visualization, TKOpenGl - transpose matrix manually before glUniformMatrix4fv()
    
    OpenGl_View::ReleaseGlResources() - release GL resources of trihedron, do not destroy it
36Commenter 2
Branch [archived branch] has been updated by Author.

[revision removed]


Detailed log of new commits:

Author: Author
Date: Mon Nov 3 23:15:55 2014 +0300

    OpenGl_View::RedrawScene() - compute proper projection matrix within printer context

37Commenter 2
Branch [archived branch] has been created by Author.

[revision removed]


Detailed log of new commits:

Author: duv
Date: Mon Nov 3 23:18:25 2014 +0300

    0024381: Visualization, TKOpenGl - revise matrices stack and usage of temporary matrices
    0025301: Visualization, TKOpenGl - transpose matrix manually before glUniformMatrix4fv()
    
    OpenGl_View::ReleaseGlResources() - release GL resources of trihedron, do not destroy it
38Author
> Pay attention to: bugs vis bug25276, bug22337
Regressions should be fixed now, please test branch CR24381_9.
39Commenter 2
Branch [archived branch] has been created by Participant.

[revision removed]


Detailed log of new commits:

Author: Author
Date: Fri Oct 31 15:33:12 2014 +0300

    0025438: Visualization, TKOpenGl - always setup viewport within OpenGl_Workspace::Redraw()
40Commenter 40
Dear Commenter 1,

Branch CR24381_9_CR25438 (and products from GIT master) was compiled on Linux and Windows platforms and tested.
[revision removed]

Number of compiler warnings:
occt component:
   Linux: 18 (18 on master)
   Windows: 0 (0 on master)
products component:
   Linux: 11 (11 on master)
   Windows: 1 (1 on master)

Regressions/Differences:
Not detected

Testing cases:
Not needed

Testing on Linux:
Total MEMORY difference: 372579184 / 373127428
Total CPU difference: 46335.78999999996 / 48561.70000000008

Testing on Windows:
Total MEMORY difference: 274595460 / 274441904
Total CPU difference: 33781.921875 / 34083.171875
41Commenter 2
Branch [archived branch] has been deleted by Author.

[revision removed]
42Commenter 2
Branch [archived branch] has been deleted by Author.

[revision removed]
43Commenter 2
Branch [archived branch] has been deleted by Author.

[revision removed]
44Commenter 2
Branch [archived branch] has been deleted by Author.

[revision removed]
45Commenter 2
Branch [archived branch] has been deleted by Author.

[revision removed]
46Commenter 2
Branch [archived branch] has been deleted by Author.

[revision removed]
47Commenter 2
Branch [archived branch] has been deleted by Author.

[revision removed]
48Commenter 2
Branch [archived branch] has been deleted by Author.

[revision removed]
49Commenter 2
Branch [archived branch] has been deleted by Author.

[revision removed]
50Commenter 2
Branch [archived branch] has been deleted by Author.

[revision removed]
51Commenter 2
Branch [archived branch] has been deleted by Author.

[revision removed]

Related records