Page MenuHomePhabricator

Support software rendering
Open, NormalPublic

Description

Using remote desktop connections is unfortunately a rather common use case. Also some CI clients tend to run on remote machines. Windows Remote Desktop only support OpenGL 1.1 which is not sufficient. We need to find a solution to make MITK remote-ready again and maybe even bundle software rendering as fallback into our installers.

There was also a request from Tobias Penzkofer.

Related Objects

StatusAssignedTask
OpenNone

Event Timeline

kislinsk triaged this task as High priority.Jun 26 2019, 1:24 PM
kislinsk created this task.

Important for T26144 (and also open office virtual desktops).

Tried every combination of options but it's always the same error:

2.02 core.mod.core.loggingadapter ERROR: ERROR: In D:\MITK-superbuild\ep\src\VTK\Rendering\OpenGL2\vtkShaderProgram.cxx, line 469
vtkShaderProgram (000001B43508AF50): Shader object was not initialized, cannot attach it.
2.15 core.mod.core.loggingadapter ERROR: ERROR: In D:\MITK-superbuild\ep\src\VTK\Rendering\OpenGL2\vtkShaderProgram.cxx, line 469
vtkShaderProgram (000001B43508A850): Shader object was not initialized, cannot attach it.
2.24 core.mod.core.loggingadapter ERROR: ERROR: In D:\MITK-superbuild\ep\src\VTK\Rendering\OpenGL2\vtkShaderProgram.cxx, line 469
vtkShaderProgram (000001B434EF5650): Shader object was not initialized, cannot attach it.
2.35 core.mod.core.loggingadapter ERROR: ERROR: In D:\MITK-superbuild\ep\src\VTK\Rendering\OpenGL2\vtkShaderProgram.cxx, line 469
vtkShaderProgram (000001B4351CC670): Shader object was not initialized, cannot attach it.
2.49 core.mod.core.loggingadapter ERROR: ERROR: In D:\MITK-superbuild\ep\src\VTK\Rendering\OpenGL2\vtkShaderProgram.cxx, line 430
vtkShaderProgram (000001B4351CC670): 1: #version 140
2: #ifdef GL_ES
3: #if __VERSION__ == 300
4: #define attribute in
5: #define varying out
6: #endif // 300
7: #else // GL_ES
8: #define highp
9: #define mediump
10: #define lowp
11: #if __VERSION__ == 150
12: #define attribute in
13: #define varying out
14: #endif
15: #endif // GL_ES
16:
17:
18: /*=========================================================================
19:
20:   Program:   Visualization Toolkit
21:   Module:    vtkPolyData2DVS.glsl
22:
23:   Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
24:   All rights reserved.
25:   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
26:
27:      This software is distributed WITHOUT ANY WARRANTY; without even
28:      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
29:      PURPOSE.  See the above copyright notice for more information.
30:
31: =========================================================================*/
32:
33: // all variables that represent positions or directions have a suffix
34: // indicating the coordinate system they are in. The possible values are
35: // MC - Model Coordinates
36: // WC - WC world coordinates
37: // VC - View Coordinates
38: // DC - Display Coordinates
39:
40: attribute vec4 vertexWC;
41:
42: // material property values
43: //VTK::Color::Dec
44:
45: // Texture coordinates
46: //VTK::TCoord::Dec
47:
48: // Apple Bug
49: //VTK::PrimID::Dec
50:
51: uniform mat4 WCVCMatrix;  // World to view matrix
52:
53: void main()
54: {
55:   // Apple Bug
56:   //VTK::PrimID::Impl
57:
58:   gl_Position = WCVCMatrix*vertexWC;
59:   //VTK::TCoord::Impl
60:   //VTK::Color::Impl
61: }
62:
2.49 core.mod.core.loggingadapter ERROR: ERROR: In D:\MITK-superbuild\ep\src\VTK\Rendering\OpenGL2\vtkShaderProgram.cxx, line 431
vtkShaderProgram (000001B4351CC670):
2.59 core.mod.core.loggingadapter ERROR: ERROR: In D:\MITK-superbuild\ep\src\VTK\Rendering\OpenGL2\vtkShaderProgram.cxx, line 430
vtkShaderProgram (000001B434EF5650): 1: #version 140
2: #ifdef GL_ES
3: #if __VERSION__ == 300
4: #define attribute in
5: #define varying out
6: #endif // 300
7: #else // GL_ES
8: #define highp
9: #define mediump
10: #define lowp
11: #if __VERSION__ == 150
12: #define attribute in
13: #define varying out
14: #endif
15: #endif // GL_ES
16:
17:
18: /*=========================================================================
19:
20:   Program:   Visualization Toolkit
21:   Module:    vtkPolyData2DVS.glsl
22:
23:   Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
24:   All rights reserved.
25:   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
26:
27:      This software is distributed WITHOUT ANY WARRANTY; without even
28:      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
29:      PURPOSE.  See the above copyright notice for more information.
30:
31: =========================================================================*/
32:
33: // all variables that represent positions or directions have a suffix
34: // indicating the coordinate system they are in. The possible values are
35: // MC - Model Coordinates
36: // WC - WC world coordinates
37: // VC - View Coordinates
38: // DC - Display Coordinates
39:
40: attribute vec4 vertexWC;
41:
42: // material property values
43: //VTK::Color::Dec
44:
45: // Texture coordinates
46: //VTK::TCoord::Dec
47:
48: // Apple Bug
49: //VTK::PrimID::Dec
50:
51: uniform mat4 WCVCMatrix;  // World to view matrix
52:
53: void main()
54: {
55:   // Apple Bug
56:   //VTK::PrimID::Impl
57:
58:   gl_Position = WCVCMatrix*vertexWC;
59:   //VTK::TCoord::Impl
60:   //VTK::Color::Impl
61: }
62:
2.59 core.mod.core.loggingadapter ERROR: ERROR: In D:\MITK-superbuild\ep\src\VTK\Rendering\OpenGL2\vtkShaderProgram.cxx, line 431
vtkShaderProgram (000001B434EF5650):
2.65 core.mod.core.loggingadapter ERROR: ERROR: In D:\MITK-superbuild\ep\src\VTK\Rendering\OpenGL2\vtkShaderProgram.cxx, line 430
vtkShaderProgram (000001B43508A850): 1: #version 140
2: #ifdef GL_ES
3: #if __VERSION__ == 300
4: #define attribute in
5: #define varying out
6: #endif // 300
7: #else // GL_ES
8: #define highp
9: #define mediump
10: #define lowp
11: #if __VERSION__ == 150
12: #define attribute in
13: #define varying out
14: #endif
15: #endif // GL_ES
16:
17:
18: /*=========================================================================
19:
20:   Program:   Visualization Toolkit
21:   Module:    vtkPolyData2DVS.glsl
22:
23:   Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
24:   All rights reserved.
25:   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
26:
27:      This software is distributed WITHOUT ANY WARRANTY; without even
28:      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
29:      PURPOSE.  See the above copyright notice for more information.
30:
31: =========================================================================*/
32:
33: // all variables that represent positions or directions have a suffix
34: // indicating the coordinate system they are in. The possible values are
35: // MC - Model Coordinates
36: // WC - WC world coordinates
37: // VC - View Coordinates
38: // DC - Display Coordinates
39:
40: attribute vec4 vertexWC;
41:
42: // material property values
43: //VTK::Color::Dec
44:
45: // Texture coordinates
46: //VTK::TCoord::Dec
47:
48: // Apple Bug
49: //VTK::PrimID::Dec
50:
51: uniform mat4 WCVCMatrix;  // World to view matrix
52:
53: void main()
54: {
55:   // Apple Bug
56:   //VTK::PrimID::Impl
57:
58:   gl_Position = WCVCMatrix*vertexWC;
59:   //VTK::TCoord::Impl
60:   //VTK::Color::Impl
61: }
62:
2.66 core.mod.core.loggingadapter ERROR: ERROR: In D:\MITK-superbuild\ep\src\VTK\Rendering\OpenGL2\vtkShaderProgram.cxx, line 431
vtkShaderProgram (000001B43508A850):
2.71 core.mod.core.loggingadapter ERROR: ERROR: In D:\MITK-superbuild\ep\src\VTK\Rendering\OpenGL2\vtkShaderProgram.cxx, line 430
vtkShaderProgram (000001B43508AF50): 1: #version 140
2: #ifdef GL_ES
3: #if __VERSION__ == 300
4: #define attribute in
5: #define varying out
6: #endif // 300
7: #else // GL_ES
8: #define highp
9: #define mediump
10: #define lowp
11: #if __VERSION__ == 150
12: #define attribute in
13: #define varying out
14: #endif
15: #endif // GL_ES
16:
17:
18: /*=========================================================================
19:
20:   Program:   Visualization Toolkit
21:   Module:    vtkPolyData2DVS.glsl
22:
23:   Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
24:   All rights reserved.
25:   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
26:
27:      This software is distributed WITHOUT ANY WARRANTY; without even
28:      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
29:      PURPOSE.  See the above copyright notice for more information.
30:
31: =========================================================================*/
32:
33: // all variables that represent positions or directions have a suffix
34: // indicating the coordinate system they are in. The possible values are
35: // MC - Model Coordinates
36: // WC - WC world coordinates
37: // VC - View Coordinates
38: // DC - Display Coordinates
39:
40: attribute vec4 vertexWC;
41:
42: // material property values
43: //VTK::Color::Dec
44:
45: // Texture coordinates
46: //VTK::TCoord::Dec
47:
48: // Apple Bug
49: //VTK::PrimID::Dec
50:
51: uniform mat4 WCVCMatrix;  // World to view matrix
52:
53: void main()
54: {
55:   // Apple Bug
56:   //VTK::PrimID::Impl
57:
58:   gl_Position = WCVCMatrix*vertexWC;
59:   //VTK::TCoord::Impl
60:   //VTK::Color::Impl
61: }
62:
2.71 core.mod.core.loggingadapter ERROR: ERROR: In D:\MITK-superbuild\ep\src\VTK\Rendering\OpenGL2\vtkShaderProgram.cxx, line 431
vtkShaderProgram (000001B43508AF50):
2.87 BlueBerry: BlueBerry Workbench ready
2.90 core.mod.core.loggingadapter ERROR: ERROR: In D:\MITK-superbuild\ep\src\VTK\Rendering\OpenGL2\vtkShaderProgram.cxx, line 430
vtkShaderProgram (000001B4351CC670): 1: #version 140
2: #ifdef GL_ES
3: #if __VERSION__ == 300
4: #define attribute in
5: #define varying out
6: #endif // 300
7: #else // GL_ES
8: #define highp
9: #define mediump
10: #define lowp
11: #if __VERSION__ == 150
12: #define attribute in
13: #define varying out
14: #endif
15: #endif // GL_ES
16:
17:
18: /*=========================================================================
19:
20:   Program:   Visualization Toolkit
21:   Module:    vtkPolyData2DVS.glsl
22:
23:   Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
24:   All rights reserved.
25:   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
26:
27:      This software is distributed WITHOUT ANY WARRANTY; without even
28:      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
29:      PURPOSE.  See the above copyright notice for more information.
30:
31: =========================================================================*/
32:
33: // all variables that represent positions or directions have a suffix
34: // indicating the coordinate system they are in. The possible values are
35: // MC - Model Coordinates
36: // WC - WC world coordinates
37: // VC - View Coordinates
38: // DC - Display Coordinates
39:
40: attribute vec4 vertexWC;
41:
42: // material property values
43: //VTK::Color::Dec
44:
45: // Texture coordinates
46: //VTK::TCoord::Dec
47:
48: // Apple Bug
49: //VTK::PrimID::Dec
50:
51: uniform mat4 WCVCMatrix;  // World to view matrix
52:
53: void main()
54: {
55:   // Apple Bug
56:   //VTK::PrimID::Impl
57:
58:   gl_Position = WCVCMatrix*vertexWC;
59:   //VTK::TCoord::Impl
60:   //VTK::Color::Impl
61: }
62:
2.90 core.mod.core.loggingadapter ERROR: ERROR: In D:\MITK-superbuild\ep\src\VTK\Rendering\OpenGL2\vtkShaderProgram.cxx, line 431
vtkShaderProgram (000001B4351CC670):
2.93 core.mod.core.loggingadapter ERROR: ERROR: In D:\MITK-superbuild\ep\src\VTK\Rendering\OpenGL2\vtkShaderProgram.cxx, line 430
vtkShaderProgram (000001B434EF5650): 1: #version 140
2: #ifdef GL_ES
3: #if __VERSION__ == 300
4: #define attribute in
5: #define varying out
6: #endif // 300
7: #else // GL_ES
8: #define highp
9: #define mediump
10: #define lowp
11: #if __VERSION__ == 150
12: #define attribute in
13: #define varying out
14: #endif
15: #endif // GL_ES
16:
17:
18: /*=========================================================================
19:
20:   Program:   Visualization Toolkit
21:   Module:    vtkPolyData2DVS.glsl
22:
23:   Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
24:   All rights reserved.
25:   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
26:
27:      This software is distributed WITHOUT ANY WARRANTY; without even
28:      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
29:      PURPOSE.  See the above copyright notice for more information.
30:
31: =========================================================================*/
32:
33: // all variables that represent positions or directions have a suffix
34: // indicating the coordinate system they are in. The possible values are
35: // MC - Model Coordinates
36: // WC - WC world coordinates
37: // VC - View Coordinates
38: // DC - Display Coordinates
39:
40: attribute vec4 vertexWC;
41:
42: // material property values
43: //VTK::Color::Dec
44:
45: // Texture coordinates
46: //VTK::TCoord::Dec
47:
48: // Apple Bug
49: //VTK::PrimID::Dec
50:
51: uniform mat4 WCVCMatrix;  // World to view matrix
52:
53: void main()
54: {
55:   // Apple Bug
56:   //VTK::PrimID::Impl
57:
58:   gl_Position = WCVCMatrix*vertexWC;
59:   //VTK::TCoord::Impl
60:   //VTK::Color::Impl
61: }
62:
2.94 core.mod.core.loggingadapter ERROR: ERROR: In D:\MITK-superbuild\ep\src\VTK\Rendering\OpenGL2\vtkShaderProgram.cxx, line 431
vtkShaderProgram (000001B434EF5650):
2.98 core.mod.core.loggingadapter ERROR: ERROR: In D:\MITK-superbuild\ep\src\VTK\Rendering\OpenGL2\vtkShaderProgram.cxx, line 430
vtkShaderProgram (000001B43508A850): 1: #version 140
2: #ifdef GL_ES
3: #if __VERSION__ == 300
4: #define attribute in
5: #define varying out
6: #endif // 300
7: #else // GL_ES
8: #define highp
9: #define mediump
10: #define lowp
11: #if __VERSION__ == 150
12: #define attribute in
13: #define varying out
14: #endif
15: #endif // GL_ES
16:
17:
18: /*=========================================================================
19:
20:   Program:   Visualization Toolkit
21:   Module:    vtkPolyData2DVS.glsl
22:
23:   Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
24:   All rights reserved.
25:   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
26:
27:      This software is distributed WITHOUT ANY WARRANTY; without even
28:      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
29:      PURPOSE.  See the above copyright notice for more information.
30:
31: =========================================================================*/
32:
33: // all variables that represent positions or directions have a suffix
34: // indicating the coordinate system they are in. The possible values are
35: // MC - Model Coordinates
36: // WC - WC world coordinates
37: // VC - View Coordinates
38: // DC - Display Coordinates
39:
40: attribute vec4 vertexWC;
41:
42: // material property values
43: //VTK::Color::Dec
44:
45: // Texture coordinates
46: //VTK::TCoord::Dec
47:
48: // Apple Bug
49: //VTK::PrimID::Dec
50:
51: uniform mat4 WCVCMatrix;  // World to view matrix
52:
53: void main()
54: {
55:   // Apple Bug
56:   //VTK::PrimID::Impl
57:
58:   gl_Position = WCVCMatrix*vertexWC;
59:   //VTK::TCoord::Impl
60:   //VTK::Color::Impl
61: }
62:
2.99 core.mod.core.loggingadapter ERROR: ERROR: In D:\MITK-superbuild\ep\src\VTK\Rendering\OpenGL2\vtkShaderProgram.cxx, line 431
vtkShaderProgram (000001B43508A850):
3.03 core.mod.core.loggingadapter ERROR: ERROR: In D:\MITK-superbuild\ep\src\VTK\Rendering\OpenGL2\vtkShaderProgram.cxx, line 430
vtkShaderProgram (000001B43508AF50): 1: #version 140
2: #ifdef GL_ES
3: #if __VERSION__ == 300
4: #define attribute in
5: #define varying out
6: #endif // 300
7: #else // GL_ES
8: #define highp
9: #define mediump
10: #define lowp
11: #if __VERSION__ == 150
12: #define attribute in
13: #define varying out
14: #endif
15: #endif // GL_ES
16:
17:
18: /*=========================================================================
19:
20:   Program:   Visualization Toolkit
21:   Module:    vtkPolyData2DVS.glsl
22:
23:   Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
24:   All rights reserved.
25:   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
26:
27:      This software is distributed WITHOUT ANY WARRANTY; without even
28:      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
29:      PURPOSE.  See the above copyright notice for more information.
30:
31: =========================================================================*/
32:
33: // all variables that represent positions or directions have a suffix
34: // indicating the coordinate system they are in. The possible values are
35: // MC - Model Coordinates
36: // WC - WC world coordinates
37: // VC - View Coordinates
38: // DC - Display Coordinates
39:
40: attribute vec4 vertexWC;
41:
42: // material property values
43: //VTK::Color::Dec
44:
45: // Texture coordinates
46: //VTK::TCoord::Dec
47:
48: // Apple Bug
49: //VTK::PrimID::Dec
50:
51: uniform mat4 WCVCMatrix;  // World to view matrix
52:
53: void main()
54: {
55:   // Apple Bug
56:   //VTK::PrimID::Impl
57:
58:   gl_Position = WCVCMatrix*vertexWC;
59:   //VTK::TCoord::Impl
60:   //VTK::Color::Impl
61: }
62:
3.03 core.mod.core.loggingadapter ERROR: ERROR: In D:\MITK-superbuild\ep\src\VTK\Rendering\OpenGL2\vtkShaderProgram.cxx, line 431
vtkShaderProgram (000001B43508AF50):
3.09 core.mod.core.loggingadapter ERROR: ERROR: In D:\MITK-superbuild\ep\src\VTK\Rendering\OpenGL2\vtkShaderProgram.cxx, line 430
vtkShaderProgram (000001B4351CC670): 1: #version 140
2: #ifdef GL_ES
3: #if __VERSION__ == 300
4: #define attribute in
5: #define varying out
6: #endif // 300
7: #else // GL_ES
8: #define highp
9: #define mediump
10: #define lowp
11: #if __VERSION__ == 150
12: #define attribute in
13: #define varying out
14: #endif
15: #endif // GL_ES
16:
17:
18: /*=========================================================================
19:
20:   Program:   Visualization Toolkit
21:   Module:    vtkPolyData2DVS.glsl
22:
23:   Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
24:   All rights reserved.
25:   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
26:
27:      This software is distributed WITHOUT ANY WARRANTY; without even
28:      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
29:      PURPOSE.  See the above copyright notice for more information.
30:
31: =========================================================================*/
32:
33: // all variables that represent positions or directions have a suffix
34: // indicating the coordinate system they are in. The possible values are
35: // MC - Model Coordinates
36: // WC - WC world coordinates
37: // VC - View Coordinates
38: // DC - Display Coordinates
39:
40: attribute vec4 vertexWC;
41:
42: // material property values
43: //VTK::Color::Dec
44:
45: // Texture coordinates
46: //VTK::TCoord::Dec
47:
48: // Apple Bug
49: //VTK::PrimID::Dec
50:
51: uniform mat4 WCVCMatrix;  // World to view matrix
52:
53: void main()
54: {
55:   // Apple Bug
56:   //VTK::PrimID::Impl
57:
58:   gl_Position = WCVCMatrix*vertexWC;
59:   //VTK::TCoord::Impl
60:   //VTK::Color::Impl
61: }
62:
3.09 core.mod.core.loggingadapter ERROR: ERROR: In D:\MITK-superbuild\ep\src\VTK\Rendering\OpenGL2\vtkShaderProgram.cxx, line 431
vtkShaderProgram (000001B4351CC670):
3.13 core.mod.core.loggingadapter ERROR: ERROR: In D:\MITK-superbuild\ep\src\VTK\Rendering\OpenGL2\vtkShaderProgram.cxx, line 430
vtkShaderProgram (000001B434EF5650): 1: #version 140
2: #ifdef GL_ES
3: #if __VERSION__ == 300
4: #define attribute in
5: #define varying out
6: #endif // 300
7: #else // GL_ES
8: #define highp
9: #define mediump
10: #define lowp
11: #if __VERSION__ == 150
12: #define attribute in
13: #define varying out
14: #endif
15: #endif // GL_ES
16:
17:
18: /*=========================================================================
19:
20:   Program:   Visualization Toolkit
21:   Module:    vtkPolyData2DVS.glsl
22:
23:   Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
24:   All rights reserved.
25:   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
26:
27:      This software is distributed WITHOUT ANY WARRANTY; without even
28:      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
29:      PURPOSE.  See the above copyright notice for more information.
30:
31: =========================================================================*/
32:
33: // all variables that represent positions or directions have a suffix
34: // indicating the coordinate system they are in. The possible values are
35: // MC - Model Coordinates
36: // WC - WC world coordinates
37: // VC - View Coordinates
38: // DC - Display Coordinates
39:
40: attribute vec4 vertexWC;
41:
42: // material property values
43: //VTK::Color::Dec
44:
45: // Texture coordinates
46: //VTK::TCoord::Dec
47:
48: // Apple Bug
49: //VTK::PrimID::Dec
50:
51: uniform mat4 WCVCMatrix;  // World to view matrix
52:
53: void main()
54: {
55:   // Apple Bug
56:   //VTK::PrimID::Impl
57:
58:   gl_Position = WCVCMatrix*vertexWC;
59:   //VTK::TCoord::Impl
60:   //VTK::Color::Impl
61: }
62:
3.13 core.mod.core.loggingadapter ERROR: ERROR: In D:\MITK-superbuild\ep\src\VTK\Rendering\OpenGL2\vtkShaderProgram.cxx, line 431
vtkShaderProgram (000001B434EF5650):
3.16 core.mod.core.loggingadapter ERROR: ERROR: In D:\MITK-superbuild\ep\src\VTK\Rendering\OpenGL2\vtkShaderProgram.cxx, line 430
vtkShaderProgram (000001B43508A850): 1: #version 140
2: #ifdef GL_ES
3: #if __VERSION__ == 300
4: #define attribute in
5: #define varying out
6: #endif // 300
7: #else // GL_ES
8: #define highp
9: #define mediump
10: #define lowp
11: #if __VERSION__ == 150
12: #define attribute in
13: #define varying out
14: #endif
15: #endif // GL_ES
16:
17:
18: /*=========================================================================
19:
20:   Program:   Visualization Toolkit
21:   Module:    vtkPolyData2DVS.glsl
22:
23:   Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
24:   All rights reserved.
25:   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
26:
27:      This software is distributed WITHOUT ANY WARRANTY; without even
28:      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
29:      PURPOSE.  See the above copyright notice for more information.
30:
31: =========================================================================*/
32:
33: // all variables that represent positions or directions have a suffix
34: // indicating the coordinate system they are in. The possible values are
35: // MC - Model Coordinates
36: // WC - WC world coordinates
37: // VC - View Coordinates
38: // DC - Display Coordinates
39:
40: attribute vec4 vertexWC;
41:
42: // material property values
43: //VTK::Color::Dec
44:
45: // Texture coordinates
46: //VTK::TCoord::Dec
47:
48: // Apple Bug
49: //VTK::PrimID::Dec
50:
51: uniform mat4 WCVCMatrix;  // World to view matrix
52:
53: void main()
54: {
55:   // Apple Bug
56:   //VTK::PrimID::Impl
57:
58:   gl_Position = WCVCMatrix*vertexWC;
59:   //VTK::TCoord::Impl
60:   //VTK::Color::Impl
61: }
62:
3.16 core.mod.core.loggingadapter ERROR: ERROR: In D:\MITK-superbuild\ep\src\VTK\Rendering\OpenGL2\vtkShaderProgram.cxx, line 431
vtkShaderProgram (000001B43508A850):
3.19 core.mod.core.loggingadapter ERROR: ERROR: In D:\MITK-superbuild\ep\src\VTK\Rendering\OpenGL2\vtkShaderProgram.cxx, line 430
vtkShaderProgram (000001B43508AF50): 1: #version 140
2: #ifdef GL_ES
3: #if __VERSION__ == 300
4: #define attribute in
5: #define varying out
6: #endif // 300
7: #else // GL_ES
8: #define highp
9: #define mediump
10: #define lowp
11: #if __VERSION__ == 150
12: #define attribute in
13: #define varying out
14: #endif
15: #endif // GL_ES
16:
17:
18: /*=========================================================================
19:
20:   Program:   Visualization Toolkit
21:   Module:    vtkPolyData2DVS.glsl
22:
23:   Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
24:   All rights reserved.
25:   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
26:
27:      This software is distributed WITHOUT ANY WARRANTY; without even
28:      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
29:      PURPOSE.  See the above copyright notice for more information.
30:
31: =========================================================================*/
32:
33: // all variables that represent positions or directions have a suffix
34: // indicating the coordinate system they are in. The possible values are
35: // MC - Model Coordinates
36: // WC - WC world coordinates
37: // VC - View Coordinates
38: // DC - Display Coordinates
39:
40: attribute vec4 vertexWC;
41:
42: // material property values
43: //VTK::Color::Dec
44:
45: // Texture coordinates
46: //VTK::TCoord::Dec
47:
48: // Apple Bug
49: //VTK::PrimID::Dec
50:
51: uniform mat4 WCVCMatrix;  // World to view matrix
52:
53: void main()
54: {
55:   // Apple Bug
56:   //VTK::PrimID::Impl
57:
58:   gl_Position = WCVCMatrix*vertexWC;
59:   //VTK::TCoord::Impl
60:   //VTK::Color::Impl
61: }
62:
3.19 core.mod.core.loggingadapter ERROR: ERROR: In D:\MITK-superbuild\ep\src\VTK\Rendering\OpenGL2\vtkShaderProgram.cxx, line 431
vtkShaderProgram (000001B43508AF50):
3.22 core.mod.core.loggingadapter ERROR: ERROR: In D:\MITK-superbuild\ep\src\VTK\Rendering\OpenGL2\vtkShaderProgram.cxx, line 430
vtkShaderProgram (000001B4351CC670): 1: #version 140
2: #ifdef GL_ES
3: #if __VERSION__ == 300
4: #define attribute in
5: #define varying out
6: #endif // 300
7: #else // GL_ES
8: #define highp
9: #define mediump
10: #define lowp
11: #if __VERSION__ == 150
12: #define attribute in
13: #define varying out
14: #endif
15: #endif // GL_ES
16:
17:
18: /*=========================================================================
19:
20:   Program:   Visualization Toolkit
21:   Module:    vtkPolyData2DVS.glsl
22:
23:   Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
24:   All rights reserved.
25:   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
26:
27:      This software is distributed WITHOUT ANY WARRANTY; without even
28:      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
29:      PURPOSE.  See the above copyright notice for more information.
30:
31: =========================================================================*/
32:
33: // all variables that represent positions or directions have a suffix
34: // indicating the coordinate system they are in. The possible values are
35: // MC - Model Coordinates
36: // WC - WC world coordinates
37: // VC - View Coordinates
38: // DC - Display Coordinates
39:
40: attribute vec4 vertexWC;
41:
42: // material property values
43: //VTK::Color::Dec
44:
45: // Texture coordinates
46: //VTK::TCoord::Dec
47:
48: // Apple Bug
49: //VTK::PrimID::Dec
50:
51: uniform mat4 WCVCMatrix;  // World to view matrix
52:
53: void main()
54: {
55:   // Apple Bug
56:   //VTK::PrimID::Impl
57:
58:   gl_Position = WCVCMatrix*vertexWC;
59:   //VTK::TCoord::Impl
60:   //VTK::Color::Impl
61: }
62:
3.22 core.mod.core.loggingadapter ERROR: ERROR: In D:\MITK-superbuild\ep\src\VTK\Rendering\OpenGL2\vtkShaderProgram.cxx, line 431
vtkShaderProgram (000001B4351CC670):
3.26 core.mod.core.loggingadapter ERROR: ERROR: In D:\MITK-superbuild\ep\src\VTK\Rendering\OpenGL2\vtkShaderProgram.cxx, line 430
vtkShaderProgram (000001B434EF5650): 1: #version 140
2: #ifdef GL_ES
3: #if __VERSION__ == 300
4: #define attribute in
5: #define varying out
6: #endif // 300
7: #else // GL_ES
8: #define highp
9: #define mediump
10: #define lowp
11: #if __VERSION__ == 150
12: #define attribute in
13: #define varying out
14: #endif
15: #endif // GL_ES
16:
17:
18: /*=========================================================================
19:
20:   Program:   Visualization Toolkit
21:   Module:    vtkPolyData2DVS.glsl
22:
23:   Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
24:   All rights reserved.
25:   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
26:
27:      This software is distributed WITHOUT ANY WARRANTY; without even
28:      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
29:      PURPOSE.  See the above copyright notice for more information.
30:
31: =========================================================================*/
32:
33: // all variables that represent positions or directions have a suffix
34: // indicating the coordinate system they are in. The possible values are
35: // MC - Model Coordinates
36: // WC - WC world coordinates
37: // VC - View Coordinates
38: // DC - Display Coordinates
39:
40: attribute vec4 vertexWC;
41:
42: // material property values
43: //VTK::Color::Dec
44:
45: // Texture coordinates
46: //VTK::TCoord::Dec
47:
48: // Apple Bug
49: //VTK::PrimID::Dec
50:
51: uniform mat4 WCVCMatrix;  // World to view matrix
52:
53: void main()
54: {
55:   // Apple Bug
56:   //VTK::PrimID::Impl
57:
58:   gl_Position = WCVCMatrix*vertexWC;
59:   //VTK::TCoord::Impl
60:   //VTK::Color::Impl
61: }
62:
3.27 core.mod.core.loggingadapter ERROR: ERROR: In D:\MITK-superbuild\ep\src\VTK\Rendering\OpenGL2\vtkShaderProgram.cxx, line 431
vtkShaderProgram (000001B434EF5650):
3.30 core.mod.core.loggingadapter ERROR: ERROR: In D:\MITK-superbuild\ep\src\VTK\Rendering\OpenGL2\vtkShaderProgram.cxx, line 430
vtkShaderProgram (000001B43508A850): 1: #version 140
2: #ifdef GL_ES
3: #if __VERSION__ == 300
4: #define attribute in
5: #define varying out
6: #endif // 300
7: #else // GL_ES
8: #define highp
9: #define mediump
10: #define lowp
11: #if __VERSION__ == 150
12: #define attribute in
13: #define varying out
14: #endif
15: #endif // GL_ES
16:
17:
18: /*=========================================================================
19:
20:   Program:   Visualization Toolkit
21:   Module:    vtkPolyData2DVS.glsl
22:
23:   Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
24:   All rights reserved.
25:   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
26:
27:      This software is distributed WITHOUT ANY WARRANTY; without even
28:      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
29:      PURPOSE.  See the above copyright notice for more information.
30:
31: =========================================================================*/
32:
33: // all variables that represent positions or directions have a suffix
34: // indicating the coordinate system they are in. The possible values are
35: // MC - Model Coordinates
36: // WC - WC world coordinates
37: // VC - View Coordinates
38: // DC - Display Coordinates
39:
40: attribute vec4 vertexWC;
41:
42: // material property values
43: //VTK::Color::Dec
44:
45: // Texture coordinates
46: //VTK::TCoord::Dec
47:
48: // Apple Bug
49: //VTK::PrimID::Dec
50:
51: uniform mat4 WCVCMatrix;  // World to view matrix
52:
53: void main()
54: {
55:   // Apple Bug
56:   //VTK::PrimID::Impl
57:
58:   gl_Position = WCVCMatrix*vertexWC;
59:   //VTK::TCoord::Impl
60:   //VTK::Color::Impl
61: }
62:
3.30 core.mod.core.loggingadapter ERROR: ERROR: In D:\MITK-superbuild\ep\src\VTK\Rendering\OpenGL2\vtkShaderProgram.cxx, line 431
vtkShaderProgram (000001B43508A850):
3.33 core.mod.core.loggingadapter ERROR: ERROR: In D:\MITK-superbuild\ep\src\VTK\Rendering\OpenGL2\vtkShaderProgram.cxx, line 430
vtkShaderProgram (000001B43508AF50): 1: #version 140
2: #ifdef GL_ES
3: #if __VERSION__ == 300
4: #define attribute in
5: #define varying out
6: #endif // 300
7: #else // GL_ES
8: #define highp
9: #define mediump
10: #define lowp
11: #if __VERSION__ == 150
12: #define attribute in
13: #define varying out
14: #endif
15: #endif // GL_ES
16:
17:
18: /*=========================================================================
19:
20:   Program:   Visualization Toolkit
21:   Module:    vtkPolyData2DVS.glsl
22:
23:   Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
24:   All rights reserved.
25:   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
26:
27:      This software is distributed WITHOUT ANY WARRANTY; without even
28:      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
29:      PURPOSE.  See the above copyright notice for more information.
30:
31: =========================================================================*/
32:
33: // all variables that represent positions or directions have a suffix
34: // indicating the coordinate system they are in. The possible values are
35: // MC - Model Coordinates
36: // WC - WC world coordinates
37: // VC - View Coordinates
38: // DC - Display Coordinates
39:
40: attribute vec4 vertexWC;
41:
42: // material property values
43: //VTK::Color::Dec
44:
45: // Texture coordinates
46: //VTK::TCoord::Dec
47:
48: // Apple Bug
49: //VTK::PrimID::Dec
50:
51: uniform mat4 WCVCMatrix;  // World to view matrix
52:
53: void main()
54: {
55:   // Apple Bug
56:   //VTK::PrimID::Impl
57:
58:   gl_Position = WCVCMatrix*vertexWC;
59:   //VTK::TCoord::Impl
60:   //VTK::Color::Impl
61: }
62:
3.33 core.mod.core.loggingadapter ERROR: ERROR: In D:\MITK-superbuild\ep\src\VTK\Rendering\OpenGL2\vtkShaderProgram.cxx, line 431
vtkShaderProgram (000001B43508AF50):
kislinsk added a parent task: Restricted Maniphest Task.Jun 26 2019, 2:08 PM

I tried the VTK MarbleShader example and it works.

Potential conflicts: Multiple render windws, Qt resp. shared OpenGL context with Qt.

Our example steps do not work, they start however. Render window is just black.

Also experimented with environment variable QT_OPENGL=software and QT_OPENGL=angle. VTK's GLEW is already unable to initialize with these settings.

Our example steps do not work, they start however. Render window is just black.

Tried with surface instead of image to see if it has something to do with offscreen rendering. Again, shader-related errors:

ERROR: In D:\MITK-2018.04-sb\ep\src\VTK\Rendering\OpenGL2\vtkShaderProgram.cxx, line 469
vtkShaderProgram (00000162914BFEE0): Shader object was not initialized, cannot attach it.

ERROR: In D:\MITK-2018.04-sb\ep\src\VTK\Rendering\OpenGL2\vtkOpenGLPolyDataMapper.cxx, line 1767
vtkOpenGLPolyDataMapper (0000016294B9E9C0): failed after UpdateShader 1 OpenGL errors detected
  0 : (1280) Invalid enum


ERROR: In D:\MITK-2018.04-sb\ep\src\VTK\Rendering\OpenGL2\vtkShaderProgram.cxx, line 430
vtkShaderProgram (00000162914BFEE0): 1: #version 140
2: #ifdef GL_ES
3: #if __VERSION__ == 300
4: #define attribute in
5: #define varying out
6: #endif // 300
7: #else // GL_ES
8: #define highp
9: #define mediump
10: #define lowp
11: #if __VERSION__ == 150
12: #define attribute in
13: #define varying out
14: #endif
15: #endif // GL_ES
16: 
17: 
18: /*=========================================================================
19: 
20:   Program:   Visualization Toolkit
21:   Module:    vtkPolyDataVS.glsl
22: 
23:   Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
24:   All rights reserved.
25:   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
26: 
27:      This software is distributed WITHOUT ANY WARRANTY; without even
28:      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
29:      PURPOSE.  See the above copyright notice for more information.
30: 
31: =========================================================================*/
32: 
33: attribute vec4 vertexMC;
34: 
35: // frag position in VC
36: //VTK::PositionVC::Dec
37: 
38: // optional normal declaration
39: //VTK::Normal::Dec
40: 
41: // extra lighting parameters
42: //VTK::Light::Dec
43: 
44: // Texture coordinates
45: //VTK::TCoord::Dec
46: 
47: // material property values
48: //VTK::Color::Dec
49: 
50: // clipping plane vars
51: //VTK::Clip::Dec
52: 
53: // camera and actor matrix values
54: uniform mat4 MCDCMatrix;
55: 
56: // Apple Bug
57: //VTK::PrimID::Dec
58: 
59: // Value raster
60: //VTK::ValuePass::Dec
61: 
62: void main()
63: {
64:   //VTK::Color::Impl
65: 
66:   //VTK::Normal::Impl
67: 
68:   //VTK::TCoord::Impl
69: 
70:   //VTK::Clip::Impl
71: 
72:   //VTK::PrimID::Impl
73: 
74:     gl_Position = MCDCMatrix * vertexMC;
75: 
76: 
77:   //VTK::ValuePass::Impl
78: 
79:   //VTK::Light::Impl
80: }
81: 


ERROR: In D:\MITK-2018.04-sb\ep\src\VTK\Rendering\OpenGL2\vtkShaderProgram.cxx, line 431
vtkShaderProgram (00000162914BFEE0):

VTK has a little bug in vtkShader.cxx around line 76: GLuint handle = glCreateShader(type);. The handle is not tested against 0 which leads into a misleading error message like above. The actual problem is that vertex and fragment shaders can be created (and compiled successfully) but not geometry shaders.

Built MITK in 32bit and tried again just in case the 64bit binaries of Mes3D for Windows would have a problem. Same error, though. Next step would probably be a stand-alone VTK app with geometry shaders and if it works a stand-alone app based on VTK's Qt render window.

Wrote my own minimal Qt application with QVTKOpenGLNativeWidget and it basially has the same problems.

I deployed the application into a stand-alone directory for further testing. Qt comes with its own very old and patched version of Mesa that is not sufficient for OpenGL > 2.1 (we need 3.2). The Qt DLL is called opengl32sw.dll. So I copied the latest Mesa opengl32.dll into the application directory, renamed it to opengl32sw.dll and just to be on the safe side created a shortlink to it called opengl32.dll. Now both Qt and VTK should somehow use the very same Mesa binary when the environment variable QT_OPENGL=software is set.

I also set the environment variable MESA_DEBUG=context and for the first time received an error output before "Segmentation fault":

Mesa: User error: GL_INVALID_OPERATION in glGetRenderbufferParameterivEXT(no renderbuffer bound)

I did the same for the Qt contextinfo example. When creating a 2.1 context Mesa is reporting:

*** Context information ***
Vendor: VMware, Inc.
Renderer: llvmpipe (LLVM 8.0, 256 bits)
OpenGL version: 3.1 Mesa 19.1.1
GLSL version: 1.40

*** QSurfaceFormat from context ***
OpenGL version: 3.1
Profile: none
Options: deprecated functions (not forward compatible) 
Renderable type: OpenGL
Depth buffer size: 24
Stencil buffer size: 8
Samples: 0
Red buffer size: 8
Green buffer size: 8
Blue buffer size: 8
Alpha buffer size: 8
Swap interval: 1

*** QSurfaceFormat from window surface ***
OpenGL version: 2.1
Profile: none
Options: 
Renderable type: default
Depth buffer size: 16
Stencil buffer size: -1
Samples: -1
Red buffer size: -1
Green buffer size: -1
Blue buffer size: -1
Alpha buffer size: -1
Swap interval: 1

*** Qt build information ***
Qt OpenGL configuration: Desktop
Qt OpenGL library handle: f620000

When trying to create a 3.0 or later context, output is:

An error has occurred:
0:1(10): error: GLSL 1.50 is not supported. Supported versions are: 1.10, 1.20, 1.30, 1.40, 1.00 ES, and 3.00 ES

*** Context information ***
Vendor: VMware, Inc.
Renderer: llvmpipe (LLVM 8.0, 256 bits)
OpenGL version: 3.1 Mesa 19.1.1
GLSL version: 1.40

*** QSurfaceFormat from context ***
OpenGL version: 3.1
Profile: none
Options: 
Renderable type: OpenGL
Depth buffer size: 24
Stencil buffer size: 8
Samples: 0
Red buffer size: 8
Green buffer size: 8
Blue buffer size: 8
Alpha buffer size: 8
Swap interval: 1

*** QSurfaceFormat from window surface ***
OpenGL version: 3.0
Profile: core
Options: 
Renderable type: OpenGL
Depth buffer size: 16
Stencil buffer size: -1
Samples: -1
Red buffer size: -1
Green buffer size: -1
Blue buffer size: -1
Alpha buffer size: -1
Swap interval: 1

*** Qt build information ***
Qt OpenGL configuration: Desktop
Qt OpenGL library handle: f620000

According to https://mesamatrix.net/, Mesa (llvmpipe) should be able to 100% support OpenGL 3.3 with GLSL 3.30 and hence OpenGL 3.2 with GLSL 1.50. Next test: build Mesa by myself.

Built Mesa. Same result. Mesa keeps reporting OpenGL 3.1 with GLSL 1.40. If we figure out how to squeeze the correct OpenGL context out of Mesa, it could be the breakthough.

kislinsk moved this task from Backlog to Postpone on the MITK (2018-04-4) board.Jul 31 2019, 1:28 PM
kislinsk removed kislinsk as the assignee of this task.Mon, Sep 9, 11:39 AM
kislinsk lowered the priority of this task from High to Normal.
kislinsk added a comment.EditedThu, Sep 12, 1:00 PM

Side note: https://fdossena.com does provide 64-bit builds now.