libsdl-org / sdl12-compat

An SDL-1.2 compatibility layer that uses SDL 2.0 behind the scenes.
Other
194 stars 40 forks source link

Mark of the Ninja - Failure to render anything but a black screen #315

Closed vv221 closed 1 year ago

vv221 commented 1 year ago

Initially reported on ./play.it forge, this has been triggered using the Linux build of Mark of the Ninja that used to be provided by Humble Bundle (markoftheninja_linux38_1380755375.zip).


When using sdl12-compat to provide libSDL-1.2.so.0, the game fails to render anything but a black screen.

Ambient music can be heard in the background and the menu can be navigated using the keyboard (navigation sound effects are played as expected), so I guess this can be narrowed down to a rendering failure.

This does not happen when using a real libSDL-1.2.so.0, then the game menu is rendered with no problem.

System details

vv221 commented 1 year ago

This is not limited to the menu: I can blindly start a game and try moving around the character, then I hear the footsteps sound effect. Meanwhile the screen is still black.

sulix commented 1 year ago

This works for me (with the same Humble Bundle version) with SDL12COMPAT_OPENGL_SCALING=0 set, i.e.:

SDL12COMPAT_OPENGL_SCALING=0 ./bin/ninja-bin

I've sent out PR #316 to enable this by default for Mark of the Ninja. It seems to work fine with SDL_VIDEODRIVER=wayland as well, so we don't need to override that.

vv221 commented 1 year ago

The suggested workaround worked well here too.