beetle-psx-libretro icon indicating copy to clipboard operation
beetle-psx-libretro copied to clipboard

[Beetle PSX HW] Lightgun API is broken

Open Phiben opened this issue 5 years ago • 7 comments

Since the release of the Lightgun API #271 by @hiddenasbestos back in 2017 it never worked in Beetle PSX HW.

It kind of works in the non-HW version of the core but only at native resolution. If the resolution is higher than native, the gun alignment is completely off.

In Beetle PSX HW (OpenGL and Vulkan) it simply doesn't work at all. Neither at native resolution nor at upscaled resolutions.

Phiben avatar May 08 '19 16:05 Phiben

Yeah I've run into this as well. Lightgun functionality in Bettle PSX HW when using the OpenGL or Vulkan driver is non-existent. The trigger and button inputs are sent, but the cursor is not drawn.

I can confirm that using higher than native internal resolution in the non-HW version messes with the alignment as well.

I will say that the lightgun API functions in Beetle PSX HW if you use DX11 or 12 though. Cursor is drawn and everything works as it should. So I just use that as a workaround for now. Slightly irritating to have to load another video driver and restart the RetroArch frontend, but it's not the end of the world.

chasburger avatar Jun 16 '19 01:06 chasburger

@chasburger Beetle PSX HW only has hardware renderers for OpenGL and Vulkan. If you're using RetroArch with a video driver different from gl, glcore and vulkan, that's solely software rendering.

rz5 avatar Jun 16 '19 02:06 rz5

Diagnosis of the alignment issues: https://github.com/libretro/beetle-psx-libretro/issues/471#issuecomment-558778374

As for the lightgun not showing cursor for hardware renderers, that's probably going to require an RSX interface hook in mednafen/psx/frontio.cpp for either the crosshair_plot() or DrawCrosshairs() function. These draw functions also need to be adjusted to scale the cursor's size up proportionally for the software renderer at higher internal resolutions.

ggrtk avatar Nov 26 '19 19:11 ggrtk

Hi everyone, some news about this problem ? Some solution to solve it ? Thanks

Darknior avatar Jul 05 '22 08:07 Darknior

I've tested in software rendering and indeed, it works. Hardware rendering is the problem here, whatever the API used. It would be great to fix this, since it's the best core with all the light guns required to play all gun games (including Area 51 which is not possible to play without the Justifier, and it has no GunCon conversion patch).

Tovarichtch avatar Nov 02 '22 19:11 Tovarichtch

Hi, any news on this? I can not make lightgun works on linux :(

huco95 avatar Aug 18 '23 16:08 huco95

Can confirm that this still seems to be broken with hardware rendering specifically, as it works totally fine in software mode (with all the performance caveats that it brings).

At least the few Justifier-only games on PS1 are predominantly 2D in nature (so for example, Lethal Enforcers, Area 51 and Maximum Force wouldn't benefit much, if at all), though this might suck a little for the likes of Crypt Killer, Project Horned Owl and Die Hard Trilogy which could look much better.

For now, the workaround will have to be to run Beetle-HW for those Justifier-only games in software mode, and run GunCon games in SwanStation if you desire HW rendering.

SeongGino avatar Dec 11 '23 19:12 SeongGino