Go Back   Steam Users' Forums > Steam Game Discussions > Q - S > Serious Sam series > Serious Sam 3: BFE

Reply
 
Thread Tools Display Modes
Old 02-22-2012, 10:52 PM   #1
flibitijibibo
 
Join Date: Nov 2009
Reputation: 592
Posts: 1,234
OpenGL Renderer: API Error (CreateStaticVertexBuffer)

When attempting to run Sam3 with OpenGL, I get a crash on start, with this at the end of the log...

Code:
01:20:12 LOG:   0 textures reloaded in 0.0 seconds
01:20:14 ERR:   OpenGL: API error! (CreateStaticVertexBuffer)
01:20:14 ERR:   OpenGL: API error! (CreateStaticVertexBuffer)
01:20:14 ERR:   OpenGL: API error! (CreateStaticVertexBuffer)
01:20:14 ERR:   OpenGL: API error! (CreateStaticVertexBuffer)
01:20:14 ERR:   OpenGL: API error! (CreateTexture)
This happens right after the cvars are set and AutoDetect.lua is run.

System specs:

Core i7 2600K, 3.4GHz
8GB DDR3 1600MHz RAM
nVidia GTX 560 Ti 1GB 900/1800

And the nasty part... OS is Fedora 16 x86_64, nVidia driver 290.10.

Is there a way to enable a more verbose logging system? I'd hate to be wasting support time for a Wine issue that I couldn't see.

The only cause I could guess is that the engine doesn't detect the proper card information, which may be causing some issue with loading things into graphics memory (this is assuming that "API error" is referring to something returned from glGetError). It does seem to get all of the information anyway though:

Code:
01:42:06 INF:   Gfx API: OpenGL
01:42:06 INF:   Resolution: 1920 x 1200
01:42:06 INF:   Vendor: unknown (0x0000)
01:42:06 INF:   Driver: NVIDIA Corporation (0x0000)
01:42:06 INF:   Renderer: GeForce GTX 560 Ti/PCI/SSE2
01:42:06 INF:   Version: 4.2.0 NVIDIA 290.10
01:42:06 INF:   Video memory size: 1024 MB
01:42:06 INF:   Available for textures: 1024 MB
01:42:06 INF:   Active GPU(s): 1
01:42:06 LOG:   Processing file Content/SeriousSam3/Config/CheckDriver.lua
01:42:06 INF:   Unable to check for correct version of display driver!
If you need any more info, ask away.

Thanks in advance!

Edit: I experimented a little bit and tried running the game in D3D mode, then setting the gfx_iAPI to OpenGL and restarting the renderer. It actually ran, but the screen was a mess of artifacts and other such nonsense, with a wall of this in the log:

Code:
01:57:37 ERR:   OpenGL: API error! (NewTextureCanvas, texture-buffer object)
So yeah. Might be useful info.

Last edited by flibitijibibo: 02-22-2012 at 11:01 PM.
flibitijibibo is offline  
Reply With Quote
Old 02-22-2012, 11:20 PM   #2
Orange_1050
 
 
 
Join Date: Jan 2011
Reputation: 2
Posts: 100
There's a newer Nvidia driver for you out there.
Ver. 295.2
It contains some OpenGL fixes.
Perhaps try this before diggin' in deeper?

•Fixed an OpenGL bug where using display lists on Fermi-based GPUs could result in missing rendering in some cases.
•Fixed an OpenGL bug that caused incorrect rendering when using framebuffer objects to render to 16-bit color textures with alpha.
•Fixed two bugs that caused sporadic application crashes in some multi-threaded OpenGL applications.
•Fixed a bug that caused creating OpenGL 4.2 contexts with glXCreateContextAttribsARB to fail.
•Fixed a bug that caused OpenGL to print
Orange_1050 is offline   Reply With Quote
Old 02-23-2012, 01:57 AM   #3
Dean Sekulic
 
Dean Sekulic's Avatar
 
Croteam
Join Date: Nov 2009
Reputation: 45
Posts: 160
> •Fixed an OpenGL bug that caused incorrect rendering when using framebuffer objects to render to 16-bit color textures with alpha.

That could be the one!
Dean Sekulic is offline   Reply With Quote
Old 02-23-2012, 02:27 AM   #4
flibitijibibo
 
Join Date: Nov 2009
Reputation: 592
Posts: 1,234
Well, shoot. It may be a while before I can get that running, as the package maintainers haven't gotten 295 in yet and Fedora's kernel isn't very happy with nVidia's generic installer.

I'll see if I can find someone with nVidia 295 to see if it's the driver.
flibitijibibo is offline   Reply With Quote
Old 02-24-2012, 01:39 AM   #5
seanj
 
 
 
Join Date: Jan 2007
Reputation: 71
Posts: 511
I decided to try this driver 295.20 with Wine and Arch i686. I installed OpenAL and tried it both with and without OpenAL support. Switching to OpenGL and restarting the renderer kept the game running, but performance dropped severely. Starting the game with +gfx_iAPI 1 caused the game to crash. I did not get a crash log but if it's of use I'll do so.

D3D works but is obviously very slow even at lowest details, and there are strange bugs that make Sam look like he has thick bars of light emanating from him.
seanj is offline   Reply With Quote
Old 02-24-2012, 01:43 AM   #6
flibitijibibo
 
Join Date: Nov 2009
Reputation: 592
Posts: 1,234
Eh, you never know what you'll find in those.

I'll have a little time tomorrow/today to mess with it some. I'll run it with winedbg and dust off my Windows drive to see how it runs on that in comparison.
flibitijibibo is offline   Reply With Quote
Old 02-24-2012, 02:30 PM   #7
LardLarry
 
Join Date: Nov 2011
Reputation: 15
Posts: 32
I tried this on Debian unstable with nvidia 295.20 driver and the game crashes on start with the same errors.

Code:
ERR: OpenGL: API error! (CreateStaticVertexBuffer)
ERR: OpenGL: API error! (CreateStaticVertexBuffer)
ERR: OpenGL: API error! (CreateStaticVertexBuffer)
ERR: OpenGL: API error! (CreateStaticVertexBuffer)
ERR: OpenGL: API error! (CreateTexture)
LardLarry is offline   Reply With Quote
Old 02-24-2012, 02:57 PM   #8
flibitijibibo
 
Join Date: Nov 2009
Reputation: 592
Posts: 1,234
It may have something to do with this... from a log on the AppDB:
Code:
fixme:wgl:ConvertAttribWGLtoGLX unsupported 80a8 WGL Attribute
fixme:wgl:ConvertAttribWGLtoGLX unsupported 1 WGL Attribute
fixme:wgl:ConvertAttribWGLtoGLX unsupported 80a9 WGL Attribute
fixme:wgl:ConvertAttribWGLtoGLX unsupported 10 WGL Attribute
fixme:win:EnumDisplayDevicesW ((null),0,0x33f444,0x00000000), stub!
fixme:win:EnumDisplayDevicesW ((null),0,0x33f370,0x00000000), stub!
err:d3d_caps:WineD3D_ReleaseFakeGLContext Failed to restore previous GL context.
I looked up some of those addresses and found this, from enumext.spec:
Code:
SAMPLE_BUFFERS_ARB				= 0x80A8
SAMPLES_ARB					= 0x80A9
So perhaps these are not properly implemented in the WGL implementation? Edit: Found something like it in the source. Going to try fixing it myself.

Edit 2: Nope, seems to be properly defined (the WGL one, anyway). Guess it's some other attribute?

Edit 3: Woah, it actually works in windowed mode just fine. Started in D3D/Windowed mode, entered this, and all was fine:

gfx_iAPI = 1;
gfxRestart(); gfxResetRenderingDevice(); oglListExtensions();

This is only in windowed mode though. Fullscreen goes back to texturing Dr. Seuss nightmares though. What happens with the OpenGL renderer where the rendering would fail only in fullscreen mode?

Edit 4: Found another weird thing: It only works up to a certain resolution, so odds are the resolution is what's causing the issue. I can get up to 1600x1200 on this 1400x1050 monitor before it explodes.

Last edited by flibitijibibo: 02-24-2012 at 07:14 PM.
flibitijibibo is offline   Reply With Quote
Old 02-24-2012, 07:07 PM   #9
BHTrellis
 
 
 
Join Date: Mar 2011
Reputation: 22
Posts: 224
I have a solution, and it's so crazy it might just work. Go out and actually buy a copy of Windows 7. Install it on a secondary hard drive and watch your home brewed pc actually work.
BHTrellis is offline   Reply With Quote
Old 02-25-2012, 04:29 AM   #10
LardLarry
 
Join Date: Nov 2011
Reputation: 15
Posts: 32
Quote:
Originally Posted by BHTrellis View Post
I have a solution, and it's so crazy it might just work. Go out and actually buy a copy of Windows 7. Install it on a secondary hard drive and watch your home brewed pc actually work.
And I have a suggestion for you. If you don't have anything smart to say, don't say anything at all.
LardLarry is offline   Reply With Quote
Old 02-24-2012, 07:14 PM   #11
flibitijibibo
 
Join Date: Nov 2009
Reputation: 592
Posts: 1,234
I have a Win7 drive available, but I'm interested in seeing if Serious Sam 3 can work with native APIs under Wine. Is it a necessity for me? Not really, but I imagine some people with terrible regional pricing for Windows would be very happy to see it working.
flibitijibibo is offline   Reply With Quote
Old 02-26-2012, 11:49 PM   #12
dyrvere
 
Join Date: Nov 2011
Reputation: 0
Posts: 4
Thumbs up Indeed

Quote:
Originally Posted by flibitijibibo View Post
I have a Win7 drive available, but I'm interested in seeing if Serious Sam 3 can work with native APIs under Wine. Is it a necessity for me? Not really, but I imagine some people with terrible regional pricing for Windows would be very happy to see it working.
Or for those who aren't actually poor, just interested in having a fully customizable and working desktop on their PCs. OpenGL4.2>Direct3D9 any day since you actually don't need => Vista to have most Direct3D10/11 features.
Game Devs, collaborate more with Khronos and improve that thing, makes me happy when I see OpenGL is still an option for more than just Graphics tools.
dyrvere is offline   Reply With Quote
Reply

Go Back   Steam Users' Forums > Steam Game Discussions > Q - S > Serious Sam series > Serious Sam 3: BFE


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



All times are GMT -7. The time now is 03:59 AM.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2014, vBulletin Solutions, Inc.
Site Content Copyright Valve Corporation 1998-2014, All Rights Reserved.