Page MenuHomePhabricator

Support software rendering
Closed, WontfixPublic

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
WontfixNone

Event Timeline

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 lowered the priority of this task from High to Normal.

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

This seems to be still an issue. Maybe there is new information out there or it could be re-tested with newer Windows versions / drivers?

@tpenzkofer also mentioned

https://opensource.google/projects/angle

and

https://www.khronos.org/news/permalink/nvidia-provides-opengl-accelerated-remote-desktop-for-geforce-5e88fc2035e342.98417181

Any thoughts on this, @kislinsk ?

Running MITK within a Windows Server 2012 R2 Session (VMWare virtualized) and using the fdossena's opengl mesa libraries the current state is (no crash, though):

Screen Shot 2021-06-03 at 09.54.38.png (821ร—1 px, 329 KB)

Without looking into it yet, I think the Nvidia solution for accelerated remote desktop is currently by far the most promising as it tackles the actual issue.

I think Stefan is refering to that https://developer.nvidia.com/designworks, arn't you @kislinsk ?

For RD with windows on real metal (NVIDIA GPU) it works realy well. I don't know if it helps on purely virtual setups.
@tpenzkofer But it could work if youre server has a GPU installed, which is basically looped through VMWare?

Would be nice if this workarround also works for you.

Update regarding the problem of @tpenzkofer (Software Rendering with VMWare VMs):
After the update to the newest VMWare version, the software rendering works correctly also with newer MITK versions. It seems like the new VMWare version has its own Mesa driver with OpenGL 3.3 support wich does the trick.

Does not help for software rendering in general, but at least we know now that VMWare based VM can already handled again.

kislinsk added a project: Auto-closed.

Hi there! ๐Ÿ™‚

This task was auto-closed according to our Task Lifecycle Management.
Please follow this link for more information and don't forget that you are encouraged to reasonable re-open tasks to revive them. ๐Ÿš‘

Best wishes,
The MITK devs