I get an intermittent crash at startup under Windows 8.1 with an NVIDIA GeForce GTX 750 Ti.
It happens before the main window loads at
Texture.cpp Texture::InitFromRawData
glGetTexLevelParameteriv(GL_PROXY_TEXTURE_2D, 0, GL_TEXTURE_INTERNAL_FORMAT, &checked_format);
Going up the stack trace to some context gives
GalaxySetupWnd.cpp GalaxySetupPanel::Init
m_textures[RANDOM] = ClientUI::GetTexture(ClientUI::ArtDir() / "gp_random.png");
These may be related:
viewtopic.php?f=25&t=8544&hilit=nvoglv32.dll
http://stackoverflow.com/questions/1504 ... video-card
The full stack trace (from built-from-source SVN 7115) is
nvoglv32.dll!5a139cca()
[Frames below may be incorrect and/or missing, no symbols loaded for nvoglv32.dll]
nvoglv32.dll!59636c10()
GiGi.dll!GG::Texture::InitFromRawData(GG::X width, GG::Y height, const unsigned char * image, unsigned int format, unsigned int type, unsigned int bytes_per_pixel, bool mipmap) Line 494 C++
GiGi.dll!GG::Texture::Init(GG::X width, GG::Y height, const unsigned char * image, unsigned int format, unsigned int type, unsigned int bytes_per_pixel, bool mipmap) Line 423 C++
GiGi.dll!GG::Texture::Load(const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & filename, bool mipmap) Line 382 C++
GiGi.dll!GG::TextureManager::LoadTexture(const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & filename, bool mipmap) Line 679 C++
GiGi.dll!GG::TextureManager::GetTexture(const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & name, bool mipmap) Line 662 + 0x10 bytes C++
GiGi.dll!GG::GUI::GetTexture(const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & name, bool mipmap) Line 1276 + 0x24 bytes C++
FreeOrion.exe!ClientUI::GetTexture(const boost::filesystem::path & path, bool mipmap) Line 827 + 0x5d bytes C++
> FreeOrion.exe!GalaxySetupPanel::Init() Line 318 + 0x44 bytes C++
FreeOrion.exe!GalaxySetupPanel::GalaxySetupPanel(GG::X x, GG::Y y, GG::X w) Line 199 C++
FreeOrion.exe!MultiPlayerLobbyWnd::MultiPlayerLobbyWnd() Line 407 + 0x37 bytes C++
FreeOrion.exe!ClientUI::ClientUI() Line 528 + 0x25 bytes C++
FreeOrion.exe!HumanClientApp::HumanClientApp(Ogre::Root * root, Ogre::RenderWindow * window, Ogre::SceneManager * scene_manager, Ogre::Camera * camera, Ogre::Viewport * viewport, const boost::filesystem::path & ois_input_cfg_file_path) Line 193 + 0x1f bytes C++
FreeOrion.exe!mainSetupAndRunOgre() Line 322 + 0x60 bytes C++
FreeOrion.exe!wmain(int argc, wchar_t * * argv, wchar_t * * envp) Line 88 + 0x5 bytes C++
FreeOrion.exe!__tmainCRTStartup() Line 552 + 0x17 bytes C
kernel32.dll!7683919f()
ntdll.dll!76ffa8cb()
ntdll.dll!76ffa8a1()
FreeOrion.exe!Effect::RemoveStarlanes::Execute(const ScriptingContext & context) Line 1855 + 0x35 bytes C++
The event log entry (from test-build-install SVN 7108) is
Faulting application name: FreeOrion.exe, version: 0.0.0.0, time stamp: 0x535e9f34
Faulting module name: nvoglv32.DLL, version: 9.18.13.3523, time stamp: 0x5315b3b9
Exception code: 0xc0000005
Fault offset: 0x00c39cca
Faulting process id: 0x7cc
Faulting application start time: 0x01cf74997342cfd4
Faulting application path: C:\Program Files (x86)\FreeOrion\FreeOrion.exe
Faulting module path: C:\Windows\SYSTEM32\nvoglv32.DLL
Report Id: b24546e3-e08c-11e3-82aa-d850e6dcf81a
Faulting package full name:
Faulting package-relative application ID:
Edit: I have the GeForce 335.23 driver installed, and it claims it is up-to-date. There is a 337.50 beta available, but the release highlights only talk about DirectX.
Edit(2): This appears to be the same issue as viewtopic.php?f=28&t=8755&hilit=nvoglv32.dll
Intermittent startup crash in Win8.1 nvoglv32.DLL
Moderator: Oberlus
Intermittent startup crash in Win8.1 nvoglv32.DLL
- Attachments
-
- ogre.zip
- ogre.log and freeorion.log
- (5.46 KiB) Downloaded 151 times
- Geoff the Medio
- Programming, Design, Admin
- Posts: 13603
- Joined: Wed Oct 08, 2003 1:33 am
- Location: Munich
Re: Intermittent startup crash in Win8.1 nvoglv32.DLL
That the driver is up to date doesn't guarantee there are no bugs or incompatibilities. Not much we can do, I suspect, unless someone knows some workaround for texture loading issues with such cards.
You might also try reverting the file the is being loaded when it crashes to a previous version. Various files have been recompressed and reuploaded to SVN, which has occasionally caused crashes. Just deleting the file without replacing might also avoid the crash, as it should default to the missing file graphic instead (which hopefully will load ok?).
You might also try reverting the file the is being loaded when it crashes to a previous version. Various files have been recompressed and reuploaded to SVN, which has occasionally caused crashes. Just deleting the file without replacing might also avoid the crash, as it should default to the missing file graphic instead (which hopefully will load ok?).
Re: Intermittent startup crash in Win8.1 nvoglv32.DLL
Updating the drivers didn't help.
Since this is always related to loading large graphic files, I found that calling
earlier in the ClientUI constructor reduces the chance of the crash.
Has there been any thought of using sprite sheets instead of expanding each graphic file to "power of two" bounds?
Patch code released under GPLv2 or later license.
Since this is always related to loading large graphic files, I found that calling
Code: Select all
m_multiplayer_lobby_wnd = new MultiPlayerLobbyWnd();
Has there been any thought of using sprite sheets instead of expanding each graphic file to "power of two" bounds?
Patch code released under GPLv2 or later license.
- Attachments
-
[The extension patch has been deactivated and can no longer be displayed.]