Summary: | [glsl] Shader backend in Regnum Online does not work | ||
---|---|---|---|
Product: | Mesa | Reporter: | Sven Arvidsson <sa> |
Component: | glsl-compiler | Assignee: | Ian Romanick <idr> |
Status: | RESOLVED FIXED | QA Contact: | |
Severity: | major | ||
Priority: | high | CC: | silpablo |
Version: | git | ||
Hardware: | x86-64 (AMD64) | ||
OS: | Linux (All) | ||
URL: | http://www.regnumonlinegame.com/ | ||
Whiteboard: | |||
i915 platform: | i915 features: | ||
Bug Depends on: | 34006 | ||
Bug Blocks: |
Description
Sven Arvidsson
2011-09-23 06:57:26 UTC
I've just pushed a workaround to the VBO module to make it ignore invalid out-of-bounds ranges in glDrawRangeElements, which should fix a lot of models flickering in and out of view with Regnum Online's shader-based renderer. This may fix this bug. Can you retest? (See also 28138, 40361, 44701, and 45214...) No difference here. Bug 40361 seems to be a regression causing problems in the fixed function rendering, this bug is about the shader backend that has never worked correctly AFAIK. *** Bug 46802 has been marked as a duplicate of this bug. *** let me clarify the situation. Regnum online provides 5 modes to play. SAFE MODE: if you check this, it replace any shader option. Perfectly playable fixed : after the resolution of bug 44701 everything is ok with this. Shader model 2: with mesa 7.11 it crash on load. with mesa 7.12 and higher you can use this option but nothing in the game is showed, just buttons and menu ( and splash screen ). shader model 3: it cannot be selected by using gallium 3d ( only with restricted drivers) but it can be selected if you runs the windows version with wine. I guess this option must be added in the future as per future improvements in r600g shader model 4: only with restricted drivers but I guess this option must be added in the future as per future improvements in r600g. shader 3 and 4 supports hardware skinning ( needful in order to improve the frame rates.) I forgot to add that there are big problems with wine, and the game does not run on that mode, you only can confirm that shader model 3 is provided as an option I'm not sure what SM3 and 4 corresponds to in OpenGL (if anything?). You might want to ask the RO devs what OpenGL version, extensions etc. they're checking for. I guess they follow standar values, actually the propietary drivers can handle it without problems. I will try to gather some information. (In reply to comment #6) > I'm not sure what SM3 and 4 corresponds to in OpenGL (if anything?). You might > want to ask the RO devs what OpenGL version, extensions etc. they're checking > for. There isn't really an analog for SM3 in OpenGL. It's basically the OpenGL 2.0 feature set. Various vendors correctly supported it to varying degrees. Various SM4 features were added from GLSL 1.30 to GLSL 3.30 (and the associated OpenGL versions). The main SM4 features that Mesa drivers lack are OpenGL 3.1 UBOs (this is the "16 x 4096" constant registers in the Wikipedia table) and OpenGL 3.2 geometry shaders. See also http://en.wikipedia.org/wiki/HLSL only you need to fix the shader model 2 mode, I guess it will be enough the shader problem are glGetError(glGetUniformLocationARB) = GL_INVALID_OPERATION error: linking with uncompiled shader glGetError(glUniform4fARB) = GL_INVALID_OPERATION taken from apitrace 3.0 [i can put my apitrace online if needed] happens with r600g TGSI and LLVM shaders (In reply to comment #10) > the shader problem are > glGetError(glGetUniformLocationARB) = GL_INVALID_OPERATION > error: linking with uncompiled shader > glGetError(glUniform4fARB) = GL_INVALID_OPERATION > > taken from apitrace 3.0 [i can put my apitrace online if needed] > > happens with r600g TGSI and LLVM shaders Hmm, that sounds like a new bug. All the shaders used to compile without problems, they were just not rendering correctly. That's a recent regression due to Carl's #line changes. I've pushed a temporary fix to master now: commit dcf8754cce1af09547a5976a74ba807bc6f2657c / glcpp: Add a newline to expanded #line directives. With that in place, Regnum with SM2.0 seems to be working fine again. many thanks/kudos going to check now XD ok it runs perfectly now XD the only glitch is when activating antialiasing the textures get corrupted but i think is cuz msaa is missing from master so i think at least for r600g you can close this bug just in case this is the output from apitrace(apitrace is AWESOME I LOVE IT) glGetError(glCompressedTexImage2DARB) = GL_INVALID_OPERATION Yep, I can confirm that it's working with git master now. Besides the #line fix I'm not sure what fixed the shaders though. Just to be sure I'm going to retry the game on i965 before closing bug 28138. Thanks! |
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.