Recent crashes with OpenGL 1.4
Moderator: Committer
Recent crashes with OpenGL 1.4
We should Display à MSG Box that says that the user has to update His drivers when using OpenGL Version 1.4. I encountered it myself and heared it From other Users that it definitely wont Run with OpenGL Version Not greater than 1.4
i could do that for the Next release.
i could do that for the Next release.
- Geoff the Medio
- Programming, Design, Admin
- Posts: 13603
- Joined: Wed Oct 08, 2003 1:33 am
- Location: Munich
Re: Recent crashes with OpenGL 1.4
I considered doing this myself, but didn't bother, though not for any particular reason.
There's already code that checks the OpenGL version during program startup and sets some default rendering options off if they wouldn't be supported. This prevents crashes with GL 1.5.
It should be fairly easy to add a check when starting up the splash screen or menu to show a popup message before the player has a chance to click "Quick Start" that it will almost certainly crash due to GL 1.4 or lower.
However some people might get GL related crashes just when trying to start the program, and don't even get to the main menu screen. Unless you're proposing to use OS-specific message box creating code to show this message, or if there's something in OGRE that can be used without requiring OGRE to run long enough to crash itself, then this won't be possible for very insufficient GL versions.
There's already code that checks the OpenGL version during program startup and sets some default rendering options off if they wouldn't be supported. This prevents crashes with GL 1.5.
It should be fairly easy to add a check when starting up the splash screen or menu to show a popup message before the player has a chance to click "Quick Start" that it will almost certainly crash due to GL 1.4 or lower.
However some people might get GL related crashes just when trying to start the program, and don't even get to the main menu screen. Unless you're proposing to use OS-specific message box creating code to show this message, or if there's something in OGRE that can be used without requiring OGRE to run long enough to crash itself, then this won't be possible for very insufficient GL versions.
Re: Recent crashes with OpenGL 1.4
i could maybe start a simple java program that shows the msg box. this would be sufficient for all systems, but i actually don't know how to create a subprocess.
Re: Recent crashes with OpenGL 1.4
here is a small java app thaat just displays the message box it works with windows and linux with macos sould it work as well.
you can execute it with the command:
you can execute it with the command:
Code: Select all
java -jar FOJavaOpenGLMsgBox.jar
- Attachments
-
- ErrorBox.tar.gz
- the java dialog box
- (2.23 KiB) Downloaded 95 times
- Geoff the Medio
- Programming, Design, Admin
- Posts: 13603
- Joined: Wed Oct 08, 2003 1:33 am
- Location: Munich
Re: Recent crashes with OpenGL 1.4
Running a separate Java program is not an acceptable solution, most notably because it requires Java, which would become yet another dependency without sufficient reason for requiring it.
Re: Recent crashes with OpenGL 1.4
i think almost everyone has java installed.
- Geoff the Medio
- Programming, Design, Admin
- Posts: 13603
- Joined: Wed Oct 08, 2003 1:33 am
- Location: Munich
Re: Recent crashes with OpenGL 1.4
Regardless, using Java is more hassle and complexity than it's worth. Preferable would be OS specific code behind ifdef blocks. For Windows, it might be better to just print some text on the console window and wait for kepress to exit or continue (presumably to a crash), which would be done before the full screen could be taken up, so the user would still have a chance to see the text.
Re: Recent crashes with OpenGL 1.4
That wont work for the ones who have Never Seen à console. The aim should Be to prevent the Users say "freeorion crashes on Start!"
which make the Game bad Look like .
What about writing à Simple .html page that Shows the Error Message and Start the Internet Explorer showing the page? On other platforms other Platform specific Browsers could Be started.
BTW: writing à .html doesn't look like As ugly As starting console and Echo it since you could make the Browser Look like à MSG box.
which make the Game bad Look like .
What about writing à Simple .html page that Shows the Error Message and Start the Internet Explorer showing the page? On other platforms other Platform specific Browsers could Be started.
BTW: writing à .html doesn't look like As ugly As starting console and Echo it since you could make the Browser Look like à MSG box.
- Geoff the Medio
- Programming, Design, Admin
- Posts: 13603
- Joined: Wed Oct 08, 2003 1:33 am
- Location: Munich
Re: Recent crashes with OpenGL 1.4
At least on Windows, starting FreeOrion always spawns a console window in which the relevant text could be shown, along with "Press any key to exit" or somesuch.strooka wrote:That wont work for the ones who have Never Seen à console.
I don't really like having starting FO end up lauching a browser window instead, or any potential issues that might cause. Basically, anything else we have to run is bad, and I'd like to find a solution that works from within the FreeOrion executable, and if not, then leave the situation as it is. The minor "ugly" of a user having to read console text is preferable to the extra dependencies and complication that an external program would require.What about writing à Simple .html page that Shows the Error Message and Start the Internet Explorer showing the page? On other platforms other Platform specific Browsers could Be started.
Re: Recent crashes with OpenGL 1.4
Then spawn à console on Linux and macos, Too, pls.
The problem Happens normally when Running fo in Linux and Not installed the propper graphics Driver.
The problem Happens normally when Running fo in Linux and Not installed the propper graphics Driver.
- Geoff the Medio
- Programming, Design, Admin
- Posts: 13603
- Joined: Wed Oct 08, 2003 1:33 am
- Location: Munich
Re: Recent crashes with OpenGL 1.4
I have no idea how to do that. Adding OS-specific messagebox popup code (in the OS, not within FreeOrion as already exists, sort of), ideally all hidden behind a function or class interface that can be used OS-independenty, would seem like the best solution, as it avoids any extra dependencies. I know Windows has ways to create popups, so I would assume that Linux (within a window manager) or MacOSX should have something as well... This would need to be doable without lauching OGRE or something like SDL do create windows and such, though...
Re: Recent crashes with OpenGL 1.4
The Solution would Be Java on Linux, As it is being installed by Default.
On mac os i don't Know but the mac Hardware has no Driver problems.
So my opinion woul Be to Pop up à console on Windows As you already can, because Windows hasnt Java preinstalled, and on Linux that Java Dialog Box i uploaded.
Additionally make à Simple cout.
On mac os i don't Know but the mac Hardware has no Driver problems.
So my opinion woul Be to Pop up à console on Windows As you already can, because Windows hasnt Java preinstalled, and on Linux that Java Dialog Box i uploaded.
Additionally make à Simple cout.
- Geoff the Medio
- Programming, Design, Admin
- Posts: 13603
- Joined: Wed Oct 08, 2003 1:33 am
- Location: Munich
Re: Recent crashes with OpenGL 1.4
On all distributions?strooka wrote:The Solution would Be Java on Linux, As it is being installed by Default.
OK, then we can ignore MacOS for the OpenGL version issue.On mac os i don't Know but the mac Hardware has no Driver problems.
But, it would still be nice to have a way to pop up an OS-level notification window on any platform, using the built-in OS' means of doing so, though...
Windows has a built-in message box popup feature, though I'm not sure if running FreeOrion as a console application will complicate or prevent using it...
On Linux, if we can open a terminal window, the dialog command would seem sufficient to create the relevant notification. There is also apparently xmessage that pops up a graphical dialog even when run from a console window, and which might work if run from within FreeOrion...?
Re: Recent crashes with OpenGL 1.4
As Long As you don't Call the GiGi wnd::Run() function implicitly or explicitly fo will Run on OpenGL 1.4 . PLZ Write some codelines and post them here what you mean and i'm able to Test it.
I think we Need only the execution of the xmessage Box.
I have ubuntu and Suse installed, ubuntu is à debian Derivate and Suse à Fedora.
I'll Look wether it is installed on ubuntu, Too.
I think we Need only the execution of the xmessage Box.
I have ubuntu and Suse installed, ubuntu is à debian Derivate and Suse à Fedora.
I'll Look wether it is installed on ubuntu, Too.
- Geoff the Medio
- Programming, Design, Admin
- Posts: 13603
- Joined: Wed Oct 08, 2003 1:33 am
- Location: Munich
Re: Recent crashes with OpenGL 1.4
I've got a bunch of other things to work on, and don't have time to do this myself.strooka wrote:PLZ Write some codelines and post them here what you mean and i'm able to Test it.
There should be ways to run a console command from within a C++ program on all 3 OSes, and the interface for xmessage in particular is outlined on the web, including the link I included earlier.
For getting the GL version, there's some code that does this in CheckGLVersion() which is defined in the anonymous namespace at the top of IntroScreen.cpp, which could be reworked and put into a function that's called from a high-level function in chmain.cpp.