schellingb / dosbox-pure

DOSBox Pure is a new fork of DOSBox built for RetroArch/Libretro aiming for simplicity and ease of use.
GNU General Public License v2.0
731 stars 61 forks source link

Would it make sense to port Voodoo code to DosBox Pure? #407

Open MagnusPerotinus opened 1 year ago

MagnusPerotinus commented 1 year ago

Not sure if that's 100% true but I've seen few times posts on Vogons mentioning that pcemu's emulation of Voodoo is more advanced i.e. works faster and it less prone to various bugs. Since there are no more updates to DosBox Pure since a long time, I wonder if it would make sense for me to try import pcemu's Voodoo code and adapt them to work with Pure.

schellingb commented 1 year ago

I'm currently very active preparing the next version with many big changes but nothing in regards to Voodoo support. I once briefly looked at the PCem Voodoo code and it seemed a very different architecture than ours (which was based on a patch for DOSBox that has existed for a while which itself is based on code from the MAME project).

That being said, you are more than welcome to give this a shot :-) Feel free to report any findings, insights or progress here. Better performance for the 3dfx emulation would be great.

Another thing I've been meaning to try is to run the polygon rendering on the host GPU. The original DOSBox patch had that working in some fashion but it was a bit convoluted and to implement that as a libretro core it'd be a different setup in regards to how the 3D rendering context is initialized. GPU compute shaders instead of actual polygon rendering might be an option, too.

MagnusPerotinus commented 1 year ago

Thank you for quick answer and great news! I enjoy DosBox Pure already and only 3D stuff makes me wish for more. Can you recommend any text sources about Voodoo to help understand the code? I see quite a lot of reference 3dfx docs on falconfly website. Probably that will be a good start :)

...and this one as well: Software 3D Rendering in MAME

PoloniumRain commented 7 months ago

Any update on this? I'd love to see it happen. PCem Voodoo emulation is excellent and very accurate. I'm sure it would fix issues like #316.

PCem is very impressive for many reasons but the high input latency it has is always a problem with games. It can be quite noticeable even on the Windows desktop. So if DSP had better Voodoo emulation combined with its already lower input latency it would be amazing.