Main > Main Forum
Hardware 3D Acceleration In Mame
<< < (17/20) > >>
brandon:
so in this case a plugin system would be great right?  OpenGL plugin, DirectX plugin, software rendering plugin...  Wouldnt that cover all the multiple platforms?  and BTW, arent most of the none PC/Mac ports of Mame used really old builds anyway?  I know that Mame4All on PSP is based on Mame 0.53 and I think most of the console ports of Mame are older versions as well.
jerryjanis:

--- Quote from: brandon on February 26, 2008, 08:01:05 pm ---so in this case a plugin system would be great right?  OpenGL plugin, DirectX plugin, software rendering plugin...  Wouldnt that cover all the multiple platforms?  and BTW, arent most of the none PC/Mac ports of Mame used really old builds anyway?  I know that Mame4All on PSP is based on Mame 0.53 and I think most of the console ports of Mame are older versions as well.

--- End quote ---

Unfortunately, it's not that easy.  A plugin architecture adds a layer of programming complexity to the whole system, while taking away some of the programming flexibility.  If a small change is made to Mame that effects the graphics interface, then all the previously written plugins will likely be broken.  If the graphics system in Mame were stable, then this wouldn't be such a problem, but Mame's graphics system is anything but stable, and likely never will be, because there are always going to be new tweaks that need changing to accommodate newer and more unusual games.

Another huge problem with a plugin architecture is that the plugins are system-dependent.  In Windows, the developers would need to create .dll files for plugins, and Linux developers would be creating .so libraries, and I don't even know how one would create plugins for a Dreamcast, PS3, or a digital camera (all of which are platforms that Mame has been ported to).  In other words, I'm pretty sure that a plug-in architecture would damage the portability of Mame to other systems.

That is not to say that your idea isn't possible.  I guess I have to look at it that the Mame Developers have taken it upon themselves to take on the most difficult and important parts of emulation, which include reverse engineering the hardware, and documenting it in every nitty gritty detail and making it publicly available.  From there, if you would like to implement your own arcade emulator or Mame derivative, then you have that same "documentation" to work from.  I am completely grateful that the developers stick to the goals that they have, because if they were to focus on short-term goals like tweaking games to run faster on current computer hardware, then that would leave them less time to work on the important stuff, which is the long term goal of documenting the hardware so that 10 years from now or 100 years from now, there will always be a way to play the games, or at least a set of documentation that will make it easy to create something that will play the games.

DJ_Izumi:
If you were to go and look at the emulation plugin system used by ePSXe or others, you'll notice that it's buggy, slow, complicated, and the varrying settings can have a wildly different effect on different games.  And that's to do hardware rendering for ONE piece of hardware, ONE.

Mame has to support a wide range of hardware and varying games for that hardware.  Mame is not behind the times, Mame is faced with a monumental task and hardware acceleration of 3D just won't happen, it'll make Mame FAR more difficult to work with, to run games on, and to build in the first place.  Right now, Mame bascily only using the CPU for all it's work means it's pretty easy to work with, not to mention building a Mame machine is fairly simple, all that's a concern is the CPU and the RAM.  Just about any graphics adaptor will do, depending on your video output needs.

MAME will always be 1015 or so years behind, it's just the way it's going to be and it's part of the nature of emulation.  However that may change one day, as many recent arcade systems are more based on consumer PC hardware, emulating them may be a lot easier once that area is reached.  Maybe in only 5 years we'll see a Sega Chihiro emulator. :)
brandon:

--- Quote from: DJ_Izumi on March 08, 2008, 12:33:27 pm ---
MAME will always be 1015 or so years behind,
--- End quote ---

Thats a LONG time before I can play MK4 ;)
Jdurg:

--- Quote from: DJ_Izumi on March 08, 2008, 12:33:27 pm ---If you were to go and look at the emulation plugin system used by ePSXe or others, you'll notice that it's buggy, slow, complicated, and the varrying settings can have a wildly different effect on different games.  And that's to do hardware rendering for ONE piece of hardware, ONE.

Mame has to support a wide range of hardware and varying games for that hardware.  Mame is not behind the times, Mame is faced with a monumental task and hardware acceleration of 3D just won't happen, it'll make Mame FAR more difficult to work with, to run games on, and to build in the first place.  Right now, Mame bascily only using the CPU for all it's work means it's pretty easy to work with, not to mention building a Mame machine is fairly simple, all that's a concern is the CPU and the RAM.  Just about any graphics adaptor will do, depending on your video output needs.

MAME will always be 1015 or so years behind, it's just the way it's going to be and it's part of the nature of emulation.  However that may change one day, as many recent arcade systems are more based on consumer PC hardware, emulating them may be a lot easier once that area is reached.  Maybe in only 5 years we'll see a Sega Chihiro emulator. :)

--- End quote ---

Heh.  I'm still looking for a plugin based emulator that isn't wrought with bugs and compatibility issues and is able to set up without having a doctorate in computer science.  I downloaded NullDC the other day and while it is a mighty fine emulator, the fact that everything is plugin based has made running games on it almost pointless.  How the heck are you going to be able to fix bugs when they happen on one plugin but not another, and not on everybody's computer at the same time?  Plus, having to use different plugins for different games is just a complete pain, especially if you are building a cabinet.  The common flaw I see in EVERY SINGLE PLUGIN BASED EMULATOR are graphics issues relating to the fact that the plugins aren't compatible with every video card or videocard driver out there.  All the graphical garbage can be blamed on the video plugins, but trying to de-bug them is nearly impossible.

If it worked well, then fine.  A plugin based emulator might work.  In reality, it doesn't work very well and leads to a near impossible attempt to fix any bugs.
Navigation
Message Index
Next page
Previous page

Go to full version