View Issue Details

IDProjectCategoryView StatusLast Update
0026122CommunityOCCT:Visualizationpublic2016-08-01 23:56
Reportersolomin_s Assigned Tobugmaster  
PrioritynormalSeverityminor 
Status closedResolutionfixed 
PlatformLinuxOSUbuntu 
Product Version6.9.0 
Target Version7.0.0Fixed in Version7.0.0 
Summary0026122: Visualization, TKOpenGl - clipping and capping is broken when ffp is disabled on Linux
DescriptionIf ffp is disabled on linux, the adding of clip plane cut all objects on the scene depending of camera position (only on Ubuntu), capping don't render at all.
Steps To Reproduce
pload MODELING VISUALIZATION
vcaps -ffp off
vinit View1
vclear
vclipplane create pln1
vclipplane set pln1 view Driver1/Viewer1/View1
vclipplane change pln1 equation 1 1 1 0
box b -50 -50 -50 100 100 100
vdisplay b
vfit


Rotate object
TagsNo tags attached.
Test case numberdemo samples dimensionsglsl, v3d glsl texture_trsf

Attached Files

  • ffp_disable.png (5,863 bytes)
  • ffp_enable.png (6,486 bytes)
  • texture_trsf_ref.png (2,608 bytes)

Relationships

parent of 0027123 closedbugmaster Open CASCADE Visualization, TKOpenGl - fix environment texture GLSL program 
related to 0026688 closedbugmaster Community Visualization, TKOpenGl - apply transparency within GLSL programs 
related to 0027735 closedbugmaster Open CASCADE Visualization, OpenGl_ShaderManager - fix clipping state management 
child of 0024838 closedbugmaster Open CASCADE Visualization, TKOpenGl - make general rendering path compatible with OpenGL 3.1+ core profiles 
child of 0025282 closedbugmaster Open CASCADE Visualization, OpenGl_PrimitiveArray - provide built-in GLSL programs as alternative to FFP 

Activities

solomin_s

2015-04-22 16:59

developer   ~0040112

Not reproduced on Windows.

solomin_s

2015-04-22 17:40

developer   ~0040121

Last edited: 2015-04-22 17:44

Code in src/OpenGl/OpenGl_Clipping.cxx which inside
#if !defined(GL_ES_VERSION_2_0)
must not be executed with shaders also.

git

2015-04-22 22:59

administrator   ~0040137

Branch CR26122 has been created by solomin_s.

SHA-1: efa83b8169e81a4bcea86a51c8777a033dcbf3b9


Detailed log of new commits:

Author: Sergey Solomin
Date: Wed Apr 22 22:54:33 2015 +0300

    0026122: Clipping is broken with shading on linux
    
    Don't call ffp functions if ffp is disabled

kgv

2015-04-23 08:46

developer   ~0040146

Last edited: 2015-04-23 08:48

If shading is enable by default on linux, the adding of clip plane cut all objects on the scene depending of camera position. 

what kind of shading is mentioned here? There is no shading in the test case nor on attached screenshots...

> Clipping is broken with shading on linux
> Not reproduced on Windows. 

please provide more details concerning used hardware and graphical drivers.

+  aContext->ChangeClipping().SetFfpEnable(aContext->caps->ffpEnable);

does patch affects somehow your issue at all?
Since the state is changed only within capping, it should be never called within test case specified in description.

solomin_s

2015-04-23 09:33

developer   ~0040147

Description was wrong. I've updated it. Capping don't work when ffp disable and shaders (built-in GLSL programs, not shading, my typo) is used for rendering.

kgv

2015-04-23 09:40

developer   ~0040148

> please provide more details concerning used hardware and graphical drivers.
but what about drivers and hardware? Mesa, proprietary drivers, GPU family and so on...

solomin_s

2015-04-23 09:49

developer   ~0040149

00:02.0 VGA compatible controller: Intel Corporation 4th Gen Core Processor Integrated Graphics Controller (rev 06)
07:00.0 3D controller: NVIDIA Corporation GK208M [GeForce GT 740M] (rev a1)
Used first. Mesa drivers.

The main problem (this tracker): capping don't work with built-in GLSL programs on desktop. As I understand "glClipPlane" cuts capping plane. On Linux I also see side effect (see screenshots).

solomin_s

2015-04-23 10:04

developer  

ffp_disable.png (5,863 bytes)

solomin_s

2015-04-23 10:04

developer  

ffp_enable.png (6,486 bytes)

kgv

2015-04-23 20:05

developer   ~0040187

> Used first. Mesa drivers.
there is the straightforward way to report the GL driver version - to copy text printed by vglinfo Draw Harness command.

solomin_s

2015-04-23 20:11

developer   ~0040188

Draw[6]> vglinfo
OpenGL info:
  GLvendor = 'Intel Open Source Technology Center'
  GLdevice = 'Mesa DRI Intel(R) Haswell Mobile '
  GLversion = '3.0 Mesa 10.1.3'
  GLSLversion = '1.30'

git

2015-10-15 11:45

administrator   ~0046771

Branch CR26122_1 has been created by kgv.

SHA-1: 606ae1176c952c6a53435e06ebb41482d59cffbc


Detailed log of new commits:

Author: kgv
Date: Thu Oct 15 11:42:07 2015 +0300

    Add test case v3d/glsl/texture_trsf applying texture transformation

Author: kgv
Date: Thu Oct 15 11:39:10 2015 +0300

    OpenGl_ShaderManager - apply 2d texture coordinates transformation in GLSL programs.
    OpenGl_Context::SetTextureMatrix() - move texture matrix assignment from OpenGl_Workspace::setTextureParams() to OpenGl_Context.
    
    Add test case demo/samples/dimensionsglsl with FFP turned OFF.

Author: kgv
Date: Thu Oct 15 11:12:44 2015 +0300

    0026122: Visualization, TKOpenGl - clipping and capping is broken when ffp is disabled on Linux
    
    OpenGl_Clipping - do not setup clipping planes using FFP when it is disabled.

kgv

2015-10-15 11:47

developer  

texture_trsf_ref.png (2,608 bytes)

kgv

2015-10-15 11:49

developer   ~0046772

New test case v3d/glsl/texture_trsf uses image file "texture_trsf_ref.png" attached to this issue.

kgv

2015-10-15 11:51

developer   ~0046773

Patch is ready for review.

apl

2015-10-15 20:50

developer   ~0046812

Patch is reviewed.

apl

2015-10-15 20:51

developer   ~0046813

Dear bugmaster,

Please test the patch.

git

2015-10-16 08:51

administrator   ~0046820

Branch CR26122_2 has been created by kgv.

SHA-1: bf47259788f66cd14ab8f316652f3e93360f8988


Detailed log of new commits:

Author: kgv
Date: Fri Oct 16 08:50:46 2015 +0300

    0026122: Visualization, TKOpenGl - clipping and capping is broken when ffp is disabled on Linux
    
    OpenGl_Clipping - do not setup clipping planes using FFP when it is disabled.
    
    OpenGl_ShaderManager - apply 2d texture coordinates transformation in GLSL programs.
    OpenGl_Context::SetTextureMatrix() - move texture matrix assignment from OpenGl_Workspace::setTextureParams() to OpenGl_Context.
    
    Add test case demo/samples/dimensionsglsl with FFP turned OFF.
    Add test case v3d/glsl/texture_trsf applying texture transformation.

kgv

2015-10-16 08:52

developer   ~0046821

Please use branch CR26122_2 for testing (squashed and rebased onto IR).
Please don't forget to add data file "texture_trsf_ref.png".

git

2015-10-16 16:29

administrator   ~0046960

Branch CR26122_2 has been updated forcibly by mkv.

SHA-1: 8c5829c9f8fe00d1f6e64c6f027df9f9bc1fe650

mkv

2015-10-19 16:09

tester   ~0047167

Dear BugMaster,
Branch CR26122_2 was rebased on current master of occt git-repository.
SHA-1: 8c5829c9f8fe00d1f6e64c6f027df9f9bc1fe650

mkv

2015-10-19 16:10

tester   ~0047168

Dear BugMaster,
Branch CR26122_2 from occt git-repository (and master from products git-repository) was compiled on Linux, MacOS and Windows platforms and tested on Release mode.
SHA-1: 8c5829c9f8fe00d1f6e64c6f027df9f9bc1fe650

Number of compiler warnings:

occt component :
Linux: 8 (8 on master)
Windows: 0 (0 on master)

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

Regressions/Differences/Improvements:
No regressions/differences

Testing cases:
http://occt-tests/CR26122-2-master-occt-64/Debian70-64/demo/samples/dimensionsglsl.html
http://occt-tests/CR26122-2-master-occt-64/Windows-64-VC10/demo/samples/dimensionsglsl.html
demo samples dimensionsglsl: OK
http://occt-tests/CR26122-2-master-occt-64/Debian70-64/v3d/glsl/texture_trsf.html
http://occt-tests/CR26122-2-master-occt-64/Windows-64-VC10/v3d/glsl/texture_trsf.html
v3d glsl texture_trsf: OK

Testing on Linux:
occt component :
Total MEMORY difference: 92439804 / 92267848 [+0.19%]
Total CPU difference: 19735.599999999802 / 19657.58999999973 [+0.40%]
products component :
Total MEMORY difference: 26235342 / 26295062 [-0.23%]
Total CPU difference: 7886.399999999987 / 7414.720000000001 [+6.36%]

Testing on Windows:
occt component :
Total MEMORY difference: 58067107 / 58086434 [-0.03%]
Total CPU difference: 18333.64312259909 / 18302.69252419895 [+0.17%]
products component :
Total MEMORY difference: 17163002 / 17167618 [-0.03%]
Total CPU difference: 5634.038515399967 / 5655.301451699955 [-0.38%]

There are no differences in images found by testdiff.

git

2015-10-19 16:10

administrator   ~0047169

Branch CR26122_2 has been updated by mkv.

SHA-1: ea87fb3f86756d93f44d4c0023d0b2fc0bb448c1


Detailed log of new commits:

Author: mkv
Date: Mon Oct 19 16:07:56 2015 +0300

    Small correction of test case for issue CR26122

mkv

2015-10-19 16:11

tester   ~0047170

Dear BugMaster,
Branch CR26122_2 is TESTED.

git

2016-04-17 14:42

administrator   ~0053215

Branch CR26122 has been deleted by kgv.

SHA-1: efa83b8169e81a4bcea86a51c8777a033dcbf3b9

git

2016-04-17 14:42

administrator   ~0053216

Branch CR26122_1 has been deleted by kgv.

SHA-1: 606ae1176c952c6a53435e06ebb41482d59cffbc

git

2016-04-17 14:42

administrator   ~0053217

Branch CR26122_2 has been deleted by kgv.

SHA-1: ea87fb3f86756d93f44d4c0023d0b2fc0bb448c1

Related Changesets

occt: master 79f4f036

2015-10-16 05:50:46

kgv


Committer: bugmaster Details Diff
0026122: Visualization, TKOpenGl - clipping and capping is broken when ffp is disabled on Linux

OpenGl_Clipping - do not setup clipping planes using FFP when it is disabled.

OpenGl_ShaderManager - apply 2d texture coordinates transformation in GLSL programs.
OpenGl_Context::SetTextureMatrix() - move texture matrix assignment from OpenGl_Workspace::setTextureParams() to OpenGl_Context.

Add test case demo/samples/dimensionsglsl with FFP turned OFF.
Add test case v3d/glsl/texture_trsf applying texture transformation.

Small correction of test case for issue CR26122
Affected Issues
0026122
mod - src/OpenGl/OpenGl_CappingAlgo.cxx Diff File
mod - src/OpenGl/OpenGl_CappingPlaneResource.cxx Diff File
mod - src/OpenGl/OpenGl_Clipping.cxx Diff File
mod - src/OpenGl/OpenGl_Clipping.hxx Diff File
mod - src/OpenGl/OpenGl_Context.cxx Diff File
mod - src/OpenGl/OpenGl_Context.hxx Diff File
mod - src/OpenGl/OpenGl_LineAttributes.cxx Diff File
mod - src/OpenGl/OpenGl_PrimitiveArray.cxx Diff File
mod - src/OpenGl/OpenGl_ShaderManager.cxx Diff File
mod - src/OpenGl/OpenGl_ShaderProgram.cxx Diff File
mod - src/OpenGl/OpenGl_ShaderProgram.hxx Diff File
mod - src/OpenGl/OpenGl_Structure.cxx Diff File
mod - src/OpenGl/OpenGl_View_Redraw.cxx Diff File
mod - src/OpenGl/OpenGl_Workspace.cxx Diff File
mod - src/Shaders/Declarations.glsl Diff File
mod - src/Shaders/DeclarationsImpl.glsl Diff File
add - tests/demo/samples/dimensionsglsl Diff File
add - tests/v3d/glsl/texture_trsf Diff File

Issue History

Date Modified Username Field Change
2015-04-22 16:58 solomin_s New Issue
2015-04-22 16:58 solomin_s Assigned To => kgv
2015-04-22 16:58 solomin_s File Added: shading_mode.png
2015-04-22 16:58 solomin_s File Added: original_mode.png
2015-04-22 16:59 solomin_s Note Added: 0040112
2015-04-22 17:40 solomin_s Note Added: 0040121
2015-04-22 17:44 solomin_s Note Edited: 0040121
2015-04-22 22:59 git Note Added: 0040137
2015-04-23 08:46 kgv Note Added: 0040146
2015-04-23 08:46 kgv Assigned To kgv => solomin_s
2015-04-23 08:46 kgv Status new => feedback
2015-04-23 08:47 kgv Target Version 6.9.0 => 7.1.0
2015-04-23 08:47 kgv Steps to Reproduce Updated
2015-04-23 08:48 kgv Note Edited: 0040146
2015-04-23 09:29 solomin_s Summary Clipping is broken with shading on linux => Clipping and capping is broken when ffp disable on linux
2015-04-23 09:29 solomin_s Description Updated
2015-04-23 09:33 solomin_s Note Added: 0040147
2015-04-23 09:34 solomin_s Assigned To solomin_s => kgv
2015-04-23 09:40 kgv Note Added: 0040148
2015-04-23 09:40 kgv Assigned To kgv => solomin_s
2015-04-23 09:49 solomin_s Note Added: 0040149
2015-04-23 09:50 solomin_s Assigned To solomin_s => kgv
2015-04-23 10:03 solomin_s File Deleted: shading_mode.png
2015-04-23 10:03 solomin_s File Deleted: original_mode.png
2015-04-23 10:04 solomin_s File Added: ffp_disable.png
2015-04-23 10:04 solomin_s File Added: ffp_enable.png
2015-04-23 19:39 kgv Status feedback => assigned
2015-04-23 20:05 kgv Note Added: 0040187
2015-04-23 20:11 solomin_s Note Added: 0040188
2015-09-15 13:31 Timo Issue cloned: 0026688
2015-09-15 13:31 Timo Relationship added related to 0026688
2015-09-28 20:57 kgv Relationship added child of 0024838
2015-10-15 11:45 git Note Added: 0046771
2015-10-15 11:46 kgv Relationship added child of 0025282
2015-10-15 11:47 kgv File Added: texture_trsf_ref.png
2015-10-15 11:49 kgv Note Added: 0046772
2015-10-15 11:49 kgv Target Version 7.1.0 => 7.0.0
2015-10-15 11:49 kgv Summary Clipping and capping is broken when ffp disable on linux => Visualization, TKOpenGl - clipping and capping is broken when ffp is disabled on Linux
2015-10-15 11:51 kgv Note Added: 0046773
2015-10-15 11:51 kgv Assigned To kgv => apl
2015-10-15 11:51 kgv Status assigned => resolved
2015-10-15 20:50 apl Note Added: 0046812
2015-10-15 20:50 apl Assigned To apl => kgv
2015-10-15 20:50 apl Status resolved => reviewed
2015-10-15 20:51 apl Assigned To kgv => bugmaster
2015-10-15 20:51 apl Note Added: 0046813
2015-10-16 08:51 git Note Added: 0046820
2015-10-16 08:52 kgv Note Added: 0046821
2015-10-16 12:47 mkv Assigned To bugmaster => mkv
2015-10-16 16:29 git Note Added: 0046960
2015-10-19 16:09 mkv Note Added: 0047167
2015-10-19 16:10 mkv Note Added: 0047168
2015-10-19 16:10 git Note Added: 0047169
2015-10-19 16:11 mkv Note Added: 0047170
2015-10-19 16:11 mkv Assigned To mkv => bugmaster
2015-10-19 16:11 mkv Status reviewed => tested
2015-10-19 16:11 mkv Test case number => demo samples dimensionsglsl, v3d glsl texture_trsf
2015-10-23 12:30 bugmaster Changeset attached => occt master 79f4f036
2015-10-23 12:30 bugmaster Status tested => verified
2015-10-23 12:30 bugmaster Resolution open => fixed
2016-01-30 18:25 kgv Relationship added related to 0027123
2016-01-30 18:27 kgv Relationship replaced parent of 0027123
2016-04-17 14:42 git Note Added: 0053215
2016-04-17 14:42 git Note Added: 0053216
2016-04-17 14:42 git Note Added: 0053217
2016-04-20 15:42 aiv Fixed in Version => 7.0.0
2016-04-20 15:51 aiv Status verified => closed
2016-08-01 23:56 kgv Relationship added related to 0027735