View Issue Details

IDProjectCategoryView StatusLast Update
0027633Open CASCADEOCCT:Visualizationpublic2016-12-09 16:38
Reporterkgv Assigned Tobugmaster  
PrioritynormalSeverityminor 
Status closedResolutionfixed 
Product Version7.0.0 
Target Version7.1.0Fixed in Version7.1.0 
Summary0027633: Visualization, TKOpenGl - point sprites are inconsistent within Core and Compatible Profiles
DescriptionThere are several issues within Point Sprites and Core Profile.
- Simple points can not be displayed due to incomplete GLSL program:
vmarkerstest m0_5 5 -7 0 MarkerType=0 Scale=1.0 PointsOnSide=1
TKOpenGl | Type: Error | ID: 0 | Severity: High | Message:
  Failed to compile shader object. Compilation log:
Fragment shader failed to compile with the following errors:
ERROR: 0:185: error(0000143) Undeclared identifier: getAlpha
ERROR: 0:185: error(0000202) No matching overloaded function found: getAlpha
ERROR: error(#273) 2 compilation errors.  No code generated

See OpenGl_ShaderManager::prepareStdProgramFlat().

- Textured markers are drawn upside-down.
  The issue is because current rendering code relies on call
glPointParameteri (GL_POINT_SPRITE_COORD_ORIGIN, GL_LOWER_LEFT);
  which is available on desktop OpenGL (but disabled in OCCT) and unavailable on OpenGL ES.
  See OpenGl_Workspace::setTextureParams.

- Aspect_TOM_BALL is dispayed with transparency.
Steps To Reproducevcaps -core
test bugs vis bug23654_MarkersRecompute 1
TagsNo tags attached.
Test case numberbugs vis bug23654_MarkersRecompute, bug24131_markers_bitmap, bug24131_markers_core, bug24131_markers_glsl, bug24131_markers_sprites

Attached Files

  • markers_core_KO.png (32,709 bytes)
  • markers_ffp_OK.png (32,808 bytes)

Relationships

related to 0026809 closedbugmaster Visualization, TKOpenGl - handle point arrays with per-vertex color within built-in GLSL programs 
child of 0024838 closedbugmaster Visualization, TKOpenGl - make general rendering path compatible with OpenGL 3.1+ core profiles 

Activities

kgv

2016-06-23 18:56

developer  

markers_core_KO.png (32,709 bytes)

kgv

2016-06-23 18:56

developer  

markers_ffp_OK.png (32,808 bytes)

kgv

2016-06-23 18:58

developer   ~0055397

Last edited: 2016-06-23 20:30

The first and 3rd issues are regressions after 0026809.

git

2016-06-23 21:24

administrator   ~0055401

Branch CR27633 has been created by kgv.

SHA-1: f8fc234862c0e01469f7c670a03b09441708ba03


Detailed log of new commits:

Author: kgv
Date: Thu Jun 23 21:24:22 2016 +0300

    0027633: Visualization, TKOpenGl - some point sprites look different within Core Profile

git

2016-06-24 11:43

administrator   ~0055406

Branch CR27633 has been updated forcibly by kgv.

SHA-1: 9572b190d6d223c18470163320b38c20cb3c54bc

kgv

2016-06-24 11:44

developer   ~0055407

Patch is ready for review in branch CR27633.

git

2016-06-24 12:55

administrator   ~0055412

Branch CR27633 has been deleted by inv.

SHA-1: 9572b190d6d223c18470163320b38c20cb3c54bc

git

2016-06-24 13:07

administrator   ~0055439

Branch CR27633 has been created by inv.

SHA-1: 9572b190d6d223c18470163320b38c20cb3c54bc


Detailed log of new commits:

Author: kgv
Date: Fri Jun 24 11:36:57 2016 +0300

    0027633: Visualization, TKOpenGl - point sprites are inconsistent within Core and Compatible Profiles
    
    OpenGl_ShaderManager::pointSpriteAlphaSrc() now does not return alpha from Red channel
    for RGBA marker texture in Core profile.
    OpenGl_ShaderManager::prepareStdProgramFlat() - restored code for drawing points without texture.
    
    Built-in GLSL programs now flip .y in shaders instead of
    relying on GL_POINT_SPRITE_COORD_ORIGIN unavailable on OpenGL ES.
    
    Added sample markers.tcl (moved from test cases).
    Sample now includes marker_kr.png for testing marker orientation.

san

2016-06-24 19:36

developer   ~0055473

Branch CR27633 reviewed without remarks, ready for testing.

git

2016-07-06 12:14

administrator   ~0055709

Branch CR27633 has been updated forcibly by kgv.

SHA-1: 2a50faf2dc0435d5a26eaba020b7746c4abad062

mkv

2016-07-06 17:56

tester   ~0055727

Dear BugMaster,
Branch CR27633 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: 2a50faf2dc0435d5a26eaba020b7746c4abad062

Number of compiler warnings:

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

products component :
Linux: 64 (64 on master)
Windows: 0 (0 on master)
MacOS : 1144

Regressions/Differences/Improvements:
http://occt-tests/CR27633-master-OCCT/Windows-64-VC10/bugs/mesh/bug25378_3_3.html
bugs mesh bug25378_3_3: FAILED

Testing cases:
http://occt-tests/CR27633-master-OCCT/Debian70-64/bugs/vis/bug23654_MarkersRecompute.html
http://occt-tests/CR27633-master-OCCT/Windows-64-VC10/bugs/vis/bug23654_MarkersRecompute.html
bugs vis bug23654_MarkersRecompute: OK
http://occt-tests/CR27633-master-OCCT/Debian70-64/bugs/vis/bug24131_markers_bitmap.html
http://occt-tests/CR27633-master-OCCT/Windows-64-VC10/bugs/vis/bug24131_markers_bitmap.html
bugs vis bug24131_markers_bitmap: OK
http://occt-tests/CR27633-master-OCCT/Debian70-64/bugs/vis/bug24131_markers_core.html
http://occt-tests/CR27633-master-OCCT/Windows-64-VC10/bugs/vis/bug24131_markers_core.html
bugs vis bug24131_markers_core: OK
http://occt-tests/CR27633-master-OCCT/Debian70-64/bugs/vis/bug24131_markers_glsl.html
http://occt-tests/CR27633-master-OCCT/Windows-64-VC10/bugs/vis/bug24131_markers_glsl.html
bugs vis bug24131_markers_glsl: OK
http://occt-tests/CR27633-master-OCCT/Debian70-64/bugs/vis/bug24131_markers_sprites.html
http://occt-tests/CR27633-master-OCCT/Windows-64-VC10/bugs/vis/bug24131_markers_sprites.html
bugs vis bug24131_markers_sprites: OK

Testing on Linux:
occt component :
Total MEMORY difference: 90217088 / 89887581 [+0.37%]
Total CPU difference: 19375.39999999998 / 19413.749999999993 [-0.20%]
products component :
Total MEMORY difference: 30031674 / 30103773 [-0.24%]
Total CPU difference: 5083.76999999997 / 5081.419999999974 [+0.05%]

Testing on Windows:
occt component :
Total MEMORY difference: 57374868 / 57386142 [-0.02%]
Total CPU difference: 18623.742582198687 / 17910.08480749893 [+3.98%]
products component :
Total MEMORY difference: 21235730 / 21200614 [+0.17%]
Total CPU difference: 4906.699452999946 / 4916.777117599947 [-0.20%]

There are following differences in images found by testdiff.
http://occt-tests/CR27633-master-OCCT/Debian70-64/diff-Debian70-64.html
http://occt-tests/CR27633-master-OCCT/Windows-64-VC10/diff-Windows-64-VC10.html
New behaviour:
IMAGE bugs vis bug23654_MarkersRecompute: bug23654_MarkersRecompute_1.png differs
IMAGE bugs vis bug23654_MarkersRecompute: bug23654_MarkersRecompute_2.png differs

mkv

2016-07-06 17:57

tester   ~0055728

Dear kgv,
Branch CR27633 has been rejected due to:
- regressions/differences/improvements

kgv

2016-07-06 18:37

developer   ~0055731

I don't see how patch might affect performance in test case bugs/mesh/bug25378_3_3. Could you please re-check this regression?

mkv

2016-07-07 12:01

tester   ~0055737

Dear BugMaster,
Branch CR27633 is TESTED.

git

2016-07-22 10:44

administrator   ~0056121

Branch CR27633 has been deleted by inv.

SHA-1: 2a50faf2dc0435d5a26eaba020b7746c4abad062

Related Changesets

occt: master fd59283a

2016-06-24 08:36:57

kgv


Committer: bugmaster Details Diff
0027633: Visualization, TKOpenGl - point sprites are inconsistent within Core and Compatible Profiles

OpenGl_ShaderManager::pointSpriteAlphaSrc() now does not return alpha from Red channel
for RGBA marker texture in Core profile.
OpenGl_ShaderManager::prepareStdProgramFlat() - restored code for drawing points without texture.

Built-in GLSL programs now flip .y in shaders instead of
relying on GL_POINT_SPRITE_COORD_ORIGIN unavailable on OpenGL ES.

Added sample markers.tcl (moved from test cases).
Sample now includes marker_kr.png for testing marker orientation.
Affected Issues
0027633
add - data/images/marker_kr.png Diff File
add - samples/tcl/markers.tcl Diff File
mod - src/OpenGl/OpenGl_Context.cxx Diff File
mod - src/OpenGl/OpenGl_Context.hxx Diff File
mod - src/OpenGl/OpenGl_PrimitiveArray.cxx Diff File
mod - src/OpenGl/OpenGl_ShaderManager.cxx Diff File
mod - src/OpenGl/OpenGl_ShaderManager.hxx Diff File
mod - src/OpenGl/OpenGl_Workspace.cxx Diff File
mod - tests/bugs/vis/bug23654_MarkersRecompute Diff File
rm - tests/bugs/vis/bug24131_markers Diff File
add - tests/bugs/vis/bug24131_markers_bitmap Diff File
add - tests/bugs/vis/bug24131_markers_core Diff File
add - tests/bugs/vis/bug24131_markers_glsl Diff File
add - tests/bugs/vis/bug24131_markers_sprites Diff File

Issue History

Date Modified Username Field Change
2016-06-23 18:56 kgv New Issue
2016-06-23 18:56 kgv Assigned To => kgv
2016-06-23 18:56 kgv File Added: markers_core_KO.png
2016-06-23 18:56 kgv File Added: markers_ffp_OK.png
2016-06-23 18:58 kgv Relationship added related to 0026809
2016-06-23 18:58 kgv Note Added: 0055397
2016-06-23 20:30 kgv Note Edited: 0055397
2016-06-23 21:24 git Note Added: 0055401
2016-06-24 11:30 kgv Summary Visualization, TKOpenGl - some point sprites look different within Core Profile => Visualization, TKOpenGl - point sprites are inconsistent within Core and Compatible Profiles
2016-06-24 11:43 git Note Added: 0055406
2016-06-24 11:44 kgv Note Added: 0055407
2016-06-24 11:44 kgv Assigned To kgv => san
2016-06-24 11:44 kgv Status new => resolved
2016-06-24 12:55 git Note Added: 0055412
2016-06-24 13:07 git Note Added: 0055439
2016-06-24 19:36 san Note Added: 0055473
2016-06-24 19:36 san Assigned To san => bugmaster
2016-06-24 19:36 san Status resolved => reviewed
2016-07-06 12:14 git Note Added: 0055709
2016-07-06 13:11 mkv Assigned To bugmaster => mkv
2016-07-06 17:56 mkv Note Added: 0055727
2016-07-06 17:57 mkv Note Added: 0055728
2016-07-06 17:57 mkv Assigned To mkv => kgv
2016-07-06 17:57 mkv Status reviewed => feedback
2016-07-06 17:57 mkv Test case number => bugs vis bug23654_MarkersRecompute, bug24131_markers_bitmap, bug24131_markers_core, bug24131_markers_glsl, bug24131_markers_sprites
2016-07-06 18:37 kgv Note Added: 0055731
2016-07-06 18:37 kgv Assigned To kgv => bugmaster
2016-07-07 10:04 bugmaster Assigned To bugmaster => mkv
2016-07-07 12:01 mkv Note Added: 0055737
2016-07-07 12:01 mkv Assigned To mkv => bugmaster
2016-07-07 12:01 mkv Status feedback => tested
2016-07-08 11:57 bugmaster Changeset attached => occt master fd59283a
2016-07-08 11:57 bugmaster Status tested => verified
2016-07-08 11:57 bugmaster Resolution open => fixed
2016-07-11 10:14 kgv Relationship added child of 0024838
2016-07-22 10:44 git Note Added: 0056121
2016-12-09 16:31 aiv Status verified => closed
2016-12-09 16:38 aiv Fixed in Version => 7.1.0