Video mode color depth for snes emulation
Moderator: General Mods
Video mode color depth for snes emulation
Hello there
I take the deepest video mode needed for faithfull snes video emulation is 16 bits, but I see most emulators (SnesGT) have 32 bit modes.
Should be 16 bit modes any faster? In WinUAE here's a notable speed improvement in 16 bit modes when running on ddraw.
Or do 16 bit modes involve some image conversion making those modes slower than 32 bit modes on nowadays cards?
Thanks!
I take the deepest video mode needed for faithfull snes video emulation is 16 bits, but I see most emulators (SnesGT) have 32 bit modes.
Should be 16 bit modes any faster? In WinUAE here's a notable speed improvement in 16 bit modes when running on ddraw.
Or do 16 bit modes involve some image conversion making those modes slower than 32 bit modes on nowadays cards?
Thanks!
Spanish third republic NOW!
Displaying 16-bit on 32-bit does require conversion so yes it will be a little slower than 32-bit.
But some emulators can render (like mine) directly in 32-bit which doesn't involve any conversion.
I just did some quick benchmarking. I was running Sonic 3D in Regen 0.95. Note that the FPS I got are only valid for my system:
Render 16-bit in 16-bit mode: 424 FPS
Render 32-bit in 32-bit Mode: 448 FPS
Render 16-bit in 32-bit mode (using DDraw's 16 bit surface creation): 398 FPS
I have an onboard Intel card (yeah I know it sucks yada yada).
Of course someone else may get completely different results.
But some emulators can render (like mine) directly in 32-bit which doesn't involve any conversion.
I just did some quick benchmarking. I was running Sonic 3D in Regen 0.95. Note that the FPS I got are only valid for my system:
Render 16-bit in 16-bit mode: 424 FPS
Render 32-bit in 32-bit Mode: 448 FPS
Render 16-bit in 32-bit mode (using DDraw's 16 bit surface creation): 398 FPS
I have an onboard Intel card (yeah I know it sucks yada yada).
Of course someone else may get completely different results.
-
- Trooper
- Posts: 369
- Joined: Tue Jun 10, 2008 6:19 am
- Location: Australia
- Contact:
You'll actually find on modern video cards, its rendering at 16bit that is slower then 32bit.
Apparently its because most 16bit modes are sampled back to 32bit in the graphics hardware or something??
Apparently its because most 16bit modes are sampled back to 32bit in the graphics hardware or something??
[img]http://img.photobucket.com/albums/v253/squall_leonhart69r/Final_Fantasy_8/squall_sig1.gif[/img]
[url=http://vba-m.com/]VBA-M Forum[/url], [url=http://www.ngohq.com]NGOHQ[/url]
[url=http://vba-m.com/]VBA-M Forum[/url], [url=http://www.ngohq.com]NGOHQ[/url]
See this link to basically get the answer why that happens: http://forum.beyond3d.com/showthread.php?t=46378
thanks for the obvious answer, franpa. I knew that. I wanted to know what he meant configuration-wise.
What's 32bits on 32 bits? an emulator configured with a 32bpp resolution that switches to that 32bpp resolution , I understand.
But if I configure, let's say, SnesGT with 640x480@16bpp or 32bpp it will switch to that resolution without color conversion involvment whatever I do... How could I have 16bpp on 32bpp for example? Thanks
What's 32bits on 32 bits? an emulator configured with a 32bpp resolution that switches to that 32bpp resolution , I understand.
But if I configure, let's say, SnesGT with 640x480@16bpp or 32bpp it will switch to that resolution without color conversion involvment whatever I do... How could I have 16bpp on 32bpp for example? Thanks
Spanish third republic NOW!
-
- Trooper
- Posts: 369
- Joined: Tue Jun 10, 2008 6:19 am
- Location: Australia
- Contact:
depends on your hardware.
if its newer then a G80, its 32bpp no matter what you do since its internally resampled to 32bpp regardless of desktop/window depth setting.
if its newer then a G80, its 32bpp no matter what you do since its internally resampled to 32bpp regardless of desktop/window depth setting.
[img]http://img.photobucket.com/albums/v253/squall_leonhart69r/Final_Fantasy_8/squall_sig1.gif[/img]
[url=http://vba-m.com/]VBA-M Forum[/url], [url=http://www.ngohq.com]NGOHQ[/url]
[url=http://vba-m.com/]VBA-M Forum[/url], [url=http://www.ngohq.com]NGOHQ[/url]
-
- Trooper
- Posts: 369
- Joined: Tue Jun 10, 2008 6:19 am
- Location: Australia
- Contact:
Re: Video mode color depth for snes emulation
Yes and no. The SNES itself is 15-bit, so technically yes. But in practice a few issues come up.vanfanel wrote:I take the deepest video mode needed for faithfull snes video emulation is 16 bits, but I see most emulators (SnesGT) have 32 bit modes.
First, TV to PC monitor gamma is very different. To adjust that with only 16-bits is not really enough precision, and you'll end up crushing especially the lower-band colors together. The extra precision also helps with other adjustments: brightness, contrast, etc.
Second, I've seen some shitty video cards / drivers that upconvert improperly. At 16bpp the color white is 11111 111111 11111. Yet on these cards, that gets converted to 11111000 11111100 11111000, or RGB 248, 252, 248. So what should be bright white ends up slightly gray with a green tint. You can tell by running 32-bit mode with a 16-bit mode emulator, and use a white background for your desktop. Again, only some drivers do this. Otherwise the difference is very minor, especially for red and blue.
Lastly, sometimes it's faster to render at 32bpp, sometimes at 16bpp. Depends on the card and drivers. But either way, the bottleneck is PPU emulation, which takes at least 10x as long as blitting either 16bpp or 32bpp @ 256x224 to your monitor. It's not really worth worrying about the overhead involved.
-
- Trooper
- Posts: 369
- Joined: Tue Jun 10, 2008 6:19 am
- Location: Australia
- Contact:
-
- Trooper
- Posts: 369
- Joined: Tue Jun 10, 2008 6:19 am
- Location: Australia
- Contact:
a video card does become a limiting factor when scale filters are used at higher resolutions. on an old 2000+ with an mx440, Hq2x was impossible at 1280x1024, but with a 6600GT suddenly it works fine.
[img]http://img.photobucket.com/albums/v253/squall_leonhart69r/Final_Fantasy_8/squall_sig1.gif[/img]
[url=http://vba-m.com/]VBA-M Forum[/url], [url=http://www.ngohq.com]NGOHQ[/url]
[url=http://vba-m.com/]VBA-M Forum[/url], [url=http://www.ngohq.com]NGOHQ[/url]
-
- ZSNES Shake Shake Prinny
- Posts: 5632
- Joined: Wed Jul 28, 2004 4:15 pm
- Location: PAL50, dood !
I could run zsnes in hq4x 1024x768@60FPS fine on Century, my previous comp; (p3 450 + mx440); same old w98se install i transferred over to this one.
皆黙って俺について来い!!
Pantheon: Gideon Zhi | CaitSith2 | Nach | kode54
Code: Select all
<jmr> bsnes has the most accurate wiki page but it takes forever to load (or something)
-
- Trooper
- Posts: 369
- Joined: Tue Jun 10, 2008 6:19 am
- Location: Australia
- Contact:
Yeah they were, I'm sure its a XP thing though.funkyass wrote:are both AGP cards?
i have an app which tests Dxdraw performance, and it was faster on windows 98, then it was on XP.
Yeah, like i said, it was probably the fact XP is generally slower with DirectDraw then windows 98 is.grinvader wrote:I could run zsnes in hq4x 1024x768@60FPS fine on Century, my previous comp; (p3 450 + mx440); same old w98se install i transferred over to this one.
[img]http://img.photobucket.com/albums/v253/squall_leonhart69r/Final_Fantasy_8/squall_sig1.gif[/img]
[url=http://vba-m.com/]VBA-M Forum[/url], [url=http://www.ngohq.com]NGOHQ[/url]
[url=http://vba-m.com/]VBA-M Forum[/url], [url=http://www.ngohq.com]NGOHQ[/url]
-
- Trooper
- Posts: 369
- Joined: Tue Jun 10, 2008 6:19 am
- Location: Australia
- Contact:
-
- Trooper
- Posts: 369
- Joined: Tue Jun 10, 2008 6:19 am
- Location: Australia
- Contact:
If you read what you posted (the link) you would have seen that the g80 and newer cards only render in 32bit.I.S.T. wrote:See this link to basically get the answer why that happens: http://forum.beyond3d.com/showthread.php?t=46378
Core i7 920 @ 2.66GHZ | ASUS P6T Motherboard | 8GB DDR3 1600 RAM | Gigabyte Geforce 760 4GB | Windows 10 Pro x64