Closed khkramer closed 9 years ago
I replaced the tilemap script, the opengl errors are gone now but now only autotiles and events are rendered.
While indoor maps still seem to be fine.
Also does mkxp allow games rendering at higher than 640x480 since I can't seem to do so.
It renders like this on the regular rgss player though:
Can you set a breakpoint on arbDebugFunc
in debuglogger.cpp
and tell me where the mkxp code is calling the GL from?
Also, can you provide me with your modified Scripts.rxdata so I can reproduce this locally? Otherwise it's going to be hard to diagnose the exact problem origin.
Also does mkxp allow games rendering at higher than 640x480 since I can't seem to do so.
No, RGSS doesn't allow that. Games that render at higher resolution either use visual tricks, or manipulate the window outside RGSS with via Win32 calls.
I don't think I can set breakpoints as I cross-compiled the .exe on Lubuntu.
Here's my current scripts.rxdata but it's still dependant on Win32API for a few small things though.
I managed to get 1280x720 resolution in the end by editing Graphics.cpp and recompiling, is there a way to get the resolution value from the config file or the scripts?
You can define new config file entries in config.cpp/h
.
Thanks.
I want to include you in the game credits, because if you hadn't made mkxp our game would've been doomed.
How you would prefer to be mentioned in the credits?
Wait, so you did manage to make the Tilemap work?
No, not yet.
How can I generate a GDB file for MKXP so I could set the breakpoint you mentioned?
(I'm assuming you're using cmake) To enable debugging symbols, run cmake -DCMAKE_BUILD_TYPE=Debug
. Do you have a gdb installation ready on your target system?
When I start the game with GDB I can't really continue since I'm getting this:
Program received signal SIGILL, Illegal instruction.
And the game freezes before it even started, no problems whatsoever without the debugger though.
At that point, you should be able to run "bt" or "bt full" to get a backtrace, which should point you to the code that generated the illegal instruction.
@khkramer From googling it seems that you can bypass this by typing handle SIGILL nostop noprint
into gdb before starting the program. However, from debugging a different Pokemon Essentials game from another user which also triggers these GL errors, I think I already know where they're originating from, so that should be fixed in a later commit. However fixing these GL erros should not change what you're seeing on screen.
That's weird.
My guess was that they'd be the cause of the 'faulty' rendering, the only part I really need from the Essentials tilemap though is the 'connections' between maps.
Found an alternative tilemap script that does work.
Here's what outdoor maps look like:
While indoor maps seem to render fine.
The console outputs tons of these:
But it's not outputting why it's generating an error exactly so I don't know where to look for fixing this.
EDIT: The game also seems to freeze for a second or so when it outputs one ot those gldebug errors