MantisBT
Mantis Bug Tracker Workflow

View Issue Details Jump to Notes ] Related Changesets ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0024310Open CASCADE[OCCT] OCCT:Visualizationpublic2013-11-02 16:382013-12-19 13:59
Reporterkgv 
Assigned Toabv 
PrioritynormalSeverityminor 
StatusclosedResolutionfixed 
PlatformWindowsOSVC++ 2008OS Version32 bit
Product Version 
Target Version[OCCT] 6.7.0Fixed in Version[OCCT] 6.7.0 
Summary0024310: TKOpenGl - GLSL compatibility issues
DescriptionSome ancient OpenGL implementations are unable to draw Phong GLSL program.
Particularly:
- RadeOn 9600, GL version 2.1.8454, GLSL version 1.20. Result: linkage fails without description.
- Mesa Windows GDI Driver, GL version 2.1 Mesa 7.8.2, GLSL version 1.20. Result: unhandled GL_INVALID_OPERATION and broken rendering.
- GeForce 320, Mac OS X 10.6 / OS X 10.9. Result: white shape (but image drawn fine with Apple software renderer).
TagsNo tags attached.
Test case number
Attached Files

- Relationships
related to 0024250closedbugmaster TKOpenGl - per-pixel lighting using GLSL program (Phong shading) 
related to 0024322closedbugmaster TKOpenGl - light sources management inconsistency 
related to 0024345closedbugmaster TKOpenGl - GLSL compatibility issues on NV40 (GeForce 6xxx/7xxx) 
related to 0024363closedkgv Automated Tests - optimize testing environment for visualization tests 

-  Notes
(0026431)
kgv (developer)
2013-11-02 16:46

Some GLSL implementation are unable to handle structure array uniforms in proper way. We might eliminate their usage to workaround such issues which will lead to syntax degradation.

The proposed patch in CR24310 branch detects issue in old Mesa implementation to prevent broken rendering. Notice that other broken drivers might be broken in different way... But probably not much important nowadays.
(0026436)
kgv (developer)
2013-11-04 03:52

Since this issue happens more often, new patch has been implemented which eliminates problematic constructions. Shader program now works with old Mesa library (with some artifacts) and GeForce on Mac OS X. Ancient RadeOn 9600 seems to be unable to execute program due to hardware limits.

In addition new Draw Harness command vlight has been introduced for light sources configuration.

Please see branch CR24310_2.
(0026459)
apl (developer)
2013-11-05 17:20

Dear kgv,

The branch is completely reviewed.

Please proceed with pending minor remark (if still any) and send to testing.
(0026465)
abv (manager)
2013-11-06 11:06

Tested on Windows: the patch fixes the problem with shaders on GeForce 630M

- Related Changesets
occt: master 12381341
Timestamp: 2013-11-04 00:42:44
Author: abv
Committer: abv
Details ] Diff ]
0024310: TKOpenGl - GLSL compatibility issues

Lights defintion clean up:
- remove duplicated enumeration TLightType (equals to Visual3d_TypeOfLightSource)
- remove unused fields from Graphic3d_CLight
- OpenGl_Light, reuse Graphic3d_CLight definition

Phong GLSL program:
- move out cumulative ambient light intencity from limited list of lights
- compatibility issues, replace array of structures (light sources, materials, clipping planes) with arrays of primitive types

New Draw Harness command vlight to alter light sources definition.

OpenGl_ShaderProgram::Initialize() - add missing Linker log
mod - src/Graphic3d/Graphic3d_CLight.hxx Diff ] File ]
mod - src/Graphic3d/Graphic3d_CView.hxx Diff ] File ]
mod - src/Graphic3d/Graphic3d_GraphicDriver.cdl Diff ] File ]
mod - src/Graphic3d/Graphic3d_GraphicDriver.cxx Diff ] File ]
mod - src/InterfaceGraphic/InterfaceGraphic_telem.hxx Diff ] File ]
mod - src/InterfaceGraphic/InterfaceGraphic_Visual3d.hxx Diff ] File ]
mod - src/NCollection/NCollection_Vec4.hxx Diff ] File ]
mod - src/OpenGl/OpenGl_Light.hxx 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_View.cxx Diff ] File ]
mod - src/OpenGl/OpenGl_View_2.cxx Diff ] File ]
mod - src/OpenGl/OpenGl_Workspace_Raytrace.cxx Diff ] File ]
mod - src/Shaders/Declarations.glsl Diff ] File ]
add - src/Shaders/DeclarationsImpl.glsl Diff ] File ]
mod - src/Shaders/PhongShading.fs Diff ] File ]
mod - src/Shaders/PhongShading.vs Diff ] File ]
mod - src/V3d/V3d_Light.cdl Diff ] File ]
mod - src/V3d/V3d_Light.cxx Diff ] File ]
mod - src/ViewerTest/ViewerTest_ViewerCommands.cxx Diff ] File ]
mod - src/Visual3d/Visual3d_Light.cdl Diff ] File ]
mod - src/Visual3d/Visual3d_Light.cxx Diff ] File ]
mod - src/Visual3d/Visual3d_View.cxx Diff ] File ]
mod - tests/v3d/glsl/phong_box Diff ] File ]
mod - tests/v3d/glsl/phong_couple Diff ] File ]
mod - tests/v3d/glsl/phong_fuse Diff ] File ]
add - tests/v3d/glsl/phong_fuse2 Diff ] File ]
mod - tests/v3d/glsl/phong_views Diff ] File ]

- Issue History
Date Modified Username Field Change
2013-11-02 16:38 kgv New Issue
2013-11-02 16:38 kgv Assigned To => kgv
2013-11-02 16:38 kgv Relationship added related to 0024250
2013-11-02 16:46 kgv Note Added: 0026431
2013-11-02 16:46 kgv Assigned To kgv => dbp
2013-11-02 16:46 kgv Status new => resolved
2013-11-04 03:52 kgv Note Added: 0026436
2013-11-04 03:52 kgv Description Updated View Revisions
2013-11-05 11:16 dbp Assigned To dbp => kgv
2013-11-05 11:16 dbp Status resolved => assigned
2013-11-05 11:25 kgv Assigned To kgv => apl
2013-11-05 11:25 kgv Status assigned => resolved
2013-11-05 11:50 kgv Priority low => normal
2013-11-05 17:20 apl Note Added: 0026459
2013-11-05 17:20 apl Assigned To apl => kgv
2013-11-05 17:20 apl Status resolved => assigned
2013-11-06 11:05 kgv Relationship added related to 0024322
2013-11-06 11:06 abv Note Added: 0026465
2013-11-06 11:07 abv Changeset attached => occt master 12381341
2013-11-06 11:07 abv Assigned To kgv => abv
2013-11-06 11:07 abv Status assigned => verified
2013-11-06 11:07 abv Resolution open => fixed
2013-11-11 20:37 kgv Relationship added related to 0024345
2013-11-15 11:29 kgv Relationship added related to 0024363
2013-12-19 13:50 bugmaster Status verified => closed
2013-12-19 13:59 bugmaster Fixed in Version => 6.7.0


Copyright © 2000 - 2019 MantisBT Team
Powered by Mantis Bugtracker