Summary: | Screen mess "white smoke" when running vdrift | ||
---|---|---|---|
Product: | Mesa | Reporter: | meng <mengmeng.meng> |
Component: | Mesa core | Assignee: | mesa-dev |
Status: | VERIFIED NOTOURBUG | QA Contact: | |
Severity: | normal | ||
Priority: | medium | CC: | bo.b.wang, eugeni, kdekorte |
Version: | git | ||
Hardware: | All | ||
OS: | Linux (All) | ||
Whiteboard: | |||
i915 platform: | i915 features: | ||
Attachments: | photo for this screen mess |
Description
meng
2011-04-20 02:42:42 UTC
Created attachment 45849 [details]
photo for this screen mess
I just pushed some changes to the 7.10 branch that should fix this. If rendering is still incorrect in 7.10 but is correct on master, could you please bisect to the commit in master that fixes it? (In reply to comment #2) 1.The problem still exists on (7.10)73f4273b8647abe0020ad3c2d593e009092d2be5. 2.I'm sorry, but I can't find good commit.I try the oldest commit 25328509c which builded on 2010-10-22. 3.There is some message in console after running vdrift: GL User Error: calling GL function without a rendering context The version of vdrift is 2010-06-30(phoronix install), but it's Ok on vdrift20090615(yum install). There is a fundamental question that needs to be answered first: does it work with current master? That is not clear from anything posted so far. (In reply to comment #4) > There is a fundamental question that needs to be answered first: does it work > with current master? That is not clear from anything posted so far. The problem still exists with current master 0a9cec3475f. The problem still exists with current mesa master 4a96a02de7c1b8c136ffc0cd278401c85faab233 in every platform such as Huronriver, Sugarbay, Capella and so on . Problem also occurs on radeon 3650 card. (tested using git as of Nov 3, 2011) When loading vdrift has the following errors INFO: Video card information: Vendor: X.Org Renderer: Gallium 0.4 on AMD RV635 Version: 2.1 Mesa 7.12-devel (git-f37b1ad) Maximum texture size: 8192 Maximum varying floats: 64 Using GLEW 1.5.8 INFO: Maximum color attachments: 8 INFO: Maximum draw buffers (1 required): 8 INFO: Texture units: 8 full, 16 partial INFO: Loaded shader package simple INFO: Loaded shader package simple, variant simple_premult INFO: Loaded shader package simple, variant simple_gamma_premult INFO: Loaded shader package simple, variant simple_gamma INFO: Loaded shader package simple, variant simplecar INFO: Loaded shader package logluminance INFO: ----- Start Shader Compile Log for /usr//share/vdrift/shaders/logluminance/fragment.glsl ----- INFO: 0:0(0): error: no matching function for call to `texture2DLod(sampler2D, vec2, float)' 0:32(73): error: type mismatch 0:32(73): error: Operands to arithmetic operators must be numeric INFO: ----- End Shader Compile Log ----- INFO: ----- Start Shader Link Log for /usr//share/vdrift/shaders/logluminance/vertex.glsl and /usr//share/vdrift/shaders/logluminance/fragment.glsl ----- INFO: error: linking with uncompiled shader INFO: ----- End Shader Link Log ----- ERROR: Shader compilation failure: /usr//share/vdrift/shaders/logluminance/vertex.glsl and /usr//share/vdrift/shaders/logluminance/fragment.glsl ERROR: ERROR: Vertex shader: ERROR: 1 : #version 120 ERROR: 2 : #define _TINY_ ERROR: 3 : #define _SHADOWSMEDIUM_ ERROR: 4 : #define _CSM2_ ERROR: 5 : #define _SHADOWS_ ERROR: 6 : #define _REFLECTIONSTATIC_ ERROR: 7 : #define SCREENRESY 768 ERROR: 8 : #define SCREENRESX 1024 ERROR: 9 : varying vec2 tu0coord; ERROR: 10 : ERROR: 11 : void main() ERROR: 12 : { ERROR: 13 : // Transforming the vertex ERROR: 14 : gl_Position = gl_ProjectionMatrix * gl_ModelViewMatrix * gl_Vertex; ERROR: 15 : ERROR: 16 : tu0coord = vec2(gl_MultiTexCoord0); ERROR: 17 : } ERROR: 18 : ERROR: ERROR: Fragment shader: ERROR: 1 : #version 120 ERROR: 2 : #define _TINY_ ERROR: 3 : #define _SHADOWSMEDIUM_ ERROR: 4 : #define _CSM2_ ERROR: 5 : #define _SHADOWS_ ERROR: 6 : #define _REFLECTIONSTATIC_ ERROR: 7 : #define SCREENRESY 768 ERROR: 8 : #define SCREENRESX 1024 ERROR: 9 : varying vec2 tu0coord; ERROR: 10 : ERROR: 11 : uniform sampler2D tu0_2D; ERROR: 12 : ERROR: 13 : const vec3 LUMINANCE = vec3(0.2125, 0.7154, 0.0721); ERROR: 14 : const float DELTA = 0.0001; ERROR: 15 : ERROR: 16 : /*const float scale = 0.1; ERROR: 17 : const float offset = 5.; ERROR: 18 : const float timefactor = 0.1; ERROR: 19 : const float scale_tiny = 3.0; ERROR: 20 : const float offset_tiny = -0.12;*/ ERROR: 21 : ERROR: 22 : const float scale = 0.25; ERROR: 23 : const float offset = 2.0; ERROR: 24 : const float timefactor = 0.1; ERROR: 25 : //const float timefactor = 1.0; ERROR: 26 : ERROR: 27 : void main() ERROR: 28 : { ERROR: 29 : #ifdef _TINY_ ERROR: 30 : float lod = 9; ERROR: 31 : //gl_FragColor.rgb = vec3(1.,1.,1.)*(texture2DLod(tu0_2D, tu0coord, lod).r+offset_tiny)*scale_tiny; ERROR: 32 : gl_FragColor.rgb = vec3(1.,1.,1.)*texture2DLod(tu0_2D, tu0coord, lod).r; ERROR: 33 : gl_FragColor.a = timefactor; ERROR: 34 : #else ERROR: 35 : float luminance = dot(LUMINANCE,texture2D(tu0_2D, tu0coord).rgb); ERROR: 36 : float logluminance = log(luminance+DELTA); ERROR: 37 : gl_FragColor.rgb = vec3(1.,1.,1.)*(logluminance+offset)*scale; ERROR: 38 : #endif ERROR: 39 : } ERROR: 40 : ERROR: ERROR: Disabling shaders due to shader loading error This is a still an issue with Mesa 8.0-devel (git-eab036a) on r600 (rv635) Issue also occurs with llvmpipe so it appears it may be a mesa core issue. The shader portion of this issue seems to be a separate bug. So disregard comment #7. But there are still problems with shadows and tire smoke in vdrift. Vdrift 2010 "release" has several known bugs. Two of them are: with fix function the alpha is ignored on the smoke, with shaders alpha is applied twice. Note that they have no releases, just development snapshots, which are only updated if their cron job spits out a new (untested) snapshot (usually every summer). You might want to consider checking out the code from svn. Closing as notourbug. Also see bug 32272 . As the issue is application's bug, verified it. |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.