- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
System: Dell Venue Pro 5855
CPU: Intel Atom x5-Z8500
Driver: 20.19.15.4364 06/01/2016 Intel Corporation, signed by Microsoft Windows Hardware Compatibility Publisher
Issue:
Using osgEarth 2.7.0 fails on the specified hardware/driver platform. Tracing this issue shows a compilation error with the shaders in use by osgEarth:
<blockquote>Compiling VERTEX source:
1: #version 120
2:
3:
4: #pragma vp_entryPoint "oe_mp_vertModel"
5: #pragma vp_location "vertex_model"
6: #pragma vp_order "-FLT_MAX"
7:
8: varying vec4 oe_layer_texc;
9: varying vec4 oe_layer_tilec;
10:
11: void oe_mp_vertModel(inout vec4 vertexModel)
12: {
13: oe_layer_texc = gl_MultiTexCoord0;
14: oe_layer_tilec = gl_MultiTexCoord1;
15: }
16:
VERTEX glCompileShader "oe_mp_vertModel" FAILED
VERTEX Shader "oe_mp_vertModel" infolog:
ERROR: 0:4: '' : illegal character (") (0x22)
ERROR: 0:4: '' : illegal character (") (0x22)
ERROR: 0:5: '' : illegal character (") (0x22)
ERROR: 0:5: '' : illegal character (") (0x22)
ERROR: 0:6: '' : illegal character (") (0x22)
ERROR: 0:6: '' : illegal character (") (0x22) </blockquote>
osgEarth uses #pragma lines to insert its own pre-processing into the shader. These pragmas include quoted properties which cause the shader compilation to fail.
Reading the OpenGL Shading Language specification (GLSLangSpec.Full.1.20.8.pdf) states:
"If an implementation does not recognize the tokens following #pragma, then it will ignore that pragma."
From this we would expect that the shader compilation would ignore the pragmas that it does not understand, rather than processing them and rejecting them due to unexpected characters - this interpretation is based on limited reading around the specification and so could be disagreed with. For reference though this is what appears to happen correctly on discrete graphics cards rather than embedded graphics.
It would be very useful to get an opinion from a member of the driver team about whether or not the observed behaviour is correct.
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Stephen,
I am talking with the OpenGL driver team on this issue, based on your description is sounds like a driver issue. I will update when I know something.
-Michael
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Stephen,
We have a fix for this issue, the next driver release will have it.
-Michael
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page