On 26.09.2017 12:59, Federico Dossena wrote:
The crash is in GLU, and I'm 99% sure that it has to do with the format
of that texture.
So how about a backtrace?
It would be really valuable to have a simple stand-alone reproduction.
Cheers,
Nicolai
I saw a patch from Miklòs Màté a while ago that changed something in
src/mesa/state_tracker/st_atom_sampler.c to fix this (link:
https://patchwork.freedesktop.org/patch/68298/). It never made it to
master, and that function has changed quite a bit since his patch. I
don't really understand what it does since I don't know mesa very well,
do you know how I could do the same thing in the new st_convert_sampler
function?
Thanks
Il 2017-09-26 12:56, Nicolai Hähnle ha scritto:
On 25.09.2017 18:50, Federico Dossena wrote:
Hello everyone,
you may remember that a few months ago I was trying to fix KOTOR to
work with Mesa to use the Gallium llvmpipe software renderer.
Well, it's been a while and I'm happy to see that things are a bit
better with Mesa 17.2. The game still crashes, but we're closer to
fixing it.
Here's what I found using 17.2.1:
With frame buffer effects and soft shadows the game crashes at the
end of loading; the crash is inside a function that amongst other
things, generates mipmaps for a texture used in a pbuffer (function
at offset 2FB37D in my exe).
The crash happens when gluBuild2DMipmaps is called, however doesn't
seem to be a null pointer like it was back in march: it's an access
violation alright but no longer a null pointer. So I think it's a
different, hopefully simpler, problem.
So is it a crash in KOTOR, in glu, or in Mesa? If it's in one of the
last two, then you should be able to compile both glu and Mesa from
source with debugging info to help you narrow things down. A backtrace
would be a good start.
If it's in KOTOR itself, then I'm afraid we're probably not going to
be a lot of help here...
Cheers,
Nicolai
Back in march, Miklòs Màté suggested that changing the checks for the
pixel format could fix the problem, and he was right; without those
checks we definitely got a step closer to fixing it.
My first thought was to just NOP the entire section that generates
mipmaps and a bit of code later that uses it. The game no longer
crashes, however it displays nothing, but I can hear it running in
background. So this is the last issue! We're almost there!
Now, I'm bothering you again because I think that at this point it's
just a problem with the texture format used there. The call to
gluBuild2DMipmaps uses LuminanceAlpha' as texture format as well as
internal format (0x190a). I tried changing it to RGB and RGBA just to
try something, but that didn't work because I guess the texture was
already generated with another format.
What could I do to investigate this further? And where should I look
inside Mesa if I wanted to say... force a specific texture format for
pbuffers?
I feel that we're very close to fixing this. Your help would mean the
world to me and the whole KOTOR community.
Thank you ;)
P.S.
This has nothing to do with mesa, but you should know that KOTOR is
slowly dieing. It is currently unplayable on Intel and AMD graphics,
and recent nVidia driver updates have introduced a glitch with
transparencies (it can be fixed, but still, no one can play KOTOR on
modern hardware properly and we have to keep old computers as
dedicated "shrines" for KOTOR, that's why I insist so much on Mesa)
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev
--
Lerne, wie die Welt wirklich ist,
Aber vergiss niemals, wie sie sein sollte.
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev