polymer icon indicating copy to clipboard operation
polymer copied to clipboard

engine-scene crash via Intel HD graphics driver

Open lebek opened this issue 6 years ago • 6 comments

Both samples crash with an access violation here https://github.com/ddiakopoulos/polymer/blob/master/lib-engine/gfx/gl/gl-api.hpp#L572

lebek avatar Jun 13 '18 18:06 lebek

@lebek hmm can't seem to replicate this one. could you hang a breakpoint and see which of the values is invalid?

ddiakopoulos avatar Jun 14 '18 04:06 ddiakopoulos

On further investigation the crash is happening in the GPU driver (Intel HD Graphics 630). When I force it to use my GTX 1060 instead, it works. The values going into the OpenGL calls seem valid. Let me know how I can help debug. I don't think Intel provides debug symbols.

lebek avatar Jun 14 '18 05:06 lebek

Hmm, thanks for checking. I tried to debug yesterday on a spare windows machine with Iris 540 but Intel's drivers won't let me install their latest with gl 4.5 support (argh!)

ddiakopoulos avatar Jun 15 '18 17:06 ddiakopoulos

It's also failing here with Intel HD Graphics 530 on latest drivers (exception reading 0x0000000000000028 in ig9icd64.dll) Crashes in the glDrawElements call. The values going to the call seem valid, I've forced Windows to use the Nvidia card on my laptop and the call parameters are exactly the same.

ibesora avatar Jun 26 '18 20:06 ibesora

Odd. I finally managed to install the latest Intel Iris 540 drivers on my laptop today and the samples ran. I'll keep trying to find a local machine to replicate this issue on.

ddiakopoulos avatar Jun 26 '18 21:06 ddiakopoulos

I had another look this morning and it fails in the shadow pass (works if I disable the shadow pass). It might be related to updating the uniform blocks in renderer_common.glsl. Oddly when I switch those to packed layout instead of std140, it runs (shadow pass on). I doubt it actually worked since the struct layout isn't setup for packed on the C++ side.. but that's as far as I got.

lebek avatar Jun 27 '18 09:06 lebek