MAMEWorld >> EmuChat
View all threads Index   Flat Mode Flat  

MooglyGuy
Renegade MAME Dev
Reged: 09/01/05
Posts: 2261
Send PM
Re: Is Seattle.ccp not optimized?
02/27/20 01:23 PM


Currently, MAME does not use your GPU to render 3D games. That much is true.

But you have a fundamental misunderstanding as to why MAME has historically avoided GPU acceleration. From MAME's inception until roughly 2010-2013 or so, the way emulators used the host GPU to accelerate emulation was by trying to map the emulated GPU's functions as closely as possible onto the host GPU's functions.

This had a whole bunch of limitations. If you had ever played Goldeneye in an N64 emulator at the time, you'd have seen that the sky was divided diagonally, with one half having the sky texture and the other half missing it. This is because emulator authors wrongly assumed that the N64's GPU only drew triangles, when in reality some careful selection of the triangle parameters could cause it to draw a square, or a trapezoid. Goldeneye abused this functionality to draw the sky texture with one draw call, rather than two separate triangles.

In general, anything involving trying to map the guest GPU functionality onto the host GPU was a complete no-go due to accuracy concerns.

However, we now live in a day and age where Compute Shaders are a thing, which opens the door to being able to run what amounts to a software renderer massively parallel on the GPU. This solution has all of the accuracy of running a software renderer on the CPU, with all of the speed provided by using a GPU.

Progress is slow on this front due to MAME's underlying graphics architecture not having kept up with the times, and so being able to do this will essentially require a re-write of the graphics system on the order of what happened with 0.106. It's something that I've asked Olivier to look into, and he has been, but given the number of things he has on his to-do list, it's not going to be quick. But it will eventually happen.







Entire thread
Subject Posted by Posted on
* Is Seattle.ccp not optimized? Dante82 02/24/20 11:49 PM
. * Re: Is Seattle.ccp not optimized? Ziggy100  02/28/20 07:05 PM
. * Re: Is Seattle.ccp not optimized? Dante82  03/02/20 04:55 PM
. * Re: Is Seattle.ccp not optimized? TafoidAdministrator  02/25/20 01:07 AM
. * Re: Is Seattle.ccp not optimized? Hydreigon  02/25/20 05:47 AM
. * Re: Is Seattle.ccp not optimized? Vas Crabb  02/25/20 10:02 AM
. * Re: Is Seattle.ccp not optimized? CiroConsentino  02/25/20 01:01 PM
. * Re: Is Seattle.ccp not optimized? MooglyGuy  02/26/20 02:36 PM
. * Re: Is Seattle.ccp not optimized? CiroConsentino  02/27/20 01:14 PM
. * Re: Is Seattle.ccp not optimized? MooglyGuy  02/27/20 01:23 PM
. * Re: Is Seattle.ccp not optimized? CiroConsentino  02/27/20 01:37 PM
. * Re: Is Seattle.ccp not optimized? StilettoAdministrator  02/28/20 01:08 AM
. * Re: Is Seattle.ccp not optimized? Dante82  02/25/20 02:23 PM
. * Re: Is Seattle.ccp not optimized? Vas Crabb  02/25/20 03:52 PM
. * Re: Is Seattle.ccp not optimized? Dante82  02/25/20 04:40 PM
. * Re: Is Seattle.ccp not optimized? Dante82  02/26/20 02:50 PM

Extra information Permissions
Moderator:  Robbbert, Tafoid 
0 registered and 330 anonymous users are browsing this forum.
You cannot start new topics
You cannot reply to topics
HTML is enabled
UBBCode is enabled
Thread views: 884