Bilinear Hardware filtering?

Found a bug? Please report it, but remember to follow the bug reporting guidelines.
Missing a sane feature? Let us know!
But please do NOT request ports to other systems.

Moderator: ZSNES Mods

amano
Rookie
Posts: 11
Joined: Thu Apr 27, 2006 12:04 am

Bilinear Hardware filtering?

Post by amano »

It seems that ZSNES is still lacking plain bilinear filtering done by the hardware. I know, that there are much more advanced filters implemented, but they are very CPU intensive.

Any chance that this could be implemented, maybe by pagefault's rewrite of the filtering code for the NTSC filter?

Fast bilinear filtering was always my primary reason to use snes9x on slow PCs, especially the filtering of mode7 which seems to not be filtered at all by ZSNES is a strong point for snes9x.

BTW, thanks for this great emu which has been accompanying me for so many years already.

EDIT: After reviewing my post, this should have gone into the bugs/feature requests section of this board. Sorry for that, but this is my first post in here.
pagefault
ZSNES Developer
ZSNES Developer
Posts: 812
Joined: Tue Aug 17, 2004 5:24 am
Location: In your garden

Post by pagefault »

This will be possible when I finish the Direct3D code.
Clements
Randomness
Posts: 1172
Joined: Wed Jul 28, 2004 4:01 pm
Location: UK
Contact:

Post by Clements »

ZSNES can use hardware bilinear filtering in any non-D mode.
pagefault
ZSNES Developer
ZSNES Developer
Posts: 812
Joined: Tue Aug 17, 2004 5:24 am
Location: In your garden

Post by pagefault »

Actually you get it in D modes after 640x480 :)
Clements
Randomness
Posts: 1172
Joined: Wed Jul 28, 2004 4:01 pm
Location: UK
Contact:

Post by Clements »

For me, all hardware bilinear filtering is disabled in D modes, regardless of resolution:

Image
Image
blackmyst
Zealot
Posts: 1161
Joined: Sun Sep 26, 2004 8:36 pm
Location: Place.

Re: Bilinear Hardware filtering?

Post by blackmyst »

amano wrote:Fast bilinear filtering was always my primary reason to use snes9x on slow PCs, especially the filtering of mode7 which seems to not be filtered at all by ZSNES is a strong point for snes9x.
Depending on how you look at it, it's a non-point. We've had discussions before on how silly it is to want to have Super Xtreme 3D rendering with your Gefore 349000 GTXDXTSLM implemented in SNES games (anybody remember that guy who wanted SNES Doom to make use of his 3D card?). If you really consider this a serious strong point, then maybe you shouldn't be playing SNES games at all. They weren't made for it, and there are plenty of games on other systems out there that are made for it to suit your tastes.

For that reason, personally, not only do I think it's silly and unneccesary, I think mode 7 biliniar filtering is fugly. But that's just me.
[size=75][b]Procrastination.[/b]
Hard Work Often Pays Off After Time, but Laziness Always Pays Off Now.[/size]
Deathlike2
ZSNES Developer
ZSNES Developer
Posts: 6747
Joined: Tue Dec 28, 2004 6:47 am

Post by Deathlike2 »

If hardware accelerated bilinear filtering is very important (when it is really nothing special), then you obviously have no idea what emulation is about.

So Snes9x has bilinear filtering in Mode 7.. wow..

Yet there isn't much else to talk about for Snes9x... you're missing out on more important things... the sound on Snes9x is generally just inferior for one..

But whatever I guess...
Continuing [url=http://slickproductions.org/forum/index.php?board=13.0]FF4[/url] Research...
Nightcrawler
Romhacking God
Posts: 922
Joined: Wed Jul 28, 2004 11:27 pm
Contact:

Post by Nightcrawler »

Listen to yourselves people.. raving ZSNES fanboys, SNES9x bashing, attacking for no good reason people..

The guy asked to utilize a hardware feature that's been in most video cards for the past 5-7 years.. and you attack him for it. Why? You're reasoning is weak. Why use ANY filter if it's not the 'way it was supposed to be'? Why bother to do anything the SNES doesn't actually do?

You're also the same people who motioned against using Direct3D for rendering over DirectDraw was such a terrible idea. It can't be that terrible if Pagefault has decided to do one.
[url=http://transcorp.romhacking.net]TransCorp[/url] - Home of the Dual Orb 2, Cho Mahou Tairyku Wozz, and Emerald Dragon SFC/SNES translations.
[url=http://www.romhacking.net]ROMhacking.net[/url] - The central hub of the ROM hacking community.
kieran_
Mugwump
Posts: 824
Joined: Fri Jul 30, 2004 9:05 pm

Post by kieran_ »

Nightcrawler wrote:Where the love, y'all
blackmyst
Zealot
Posts: 1161
Joined: Sun Sep 26, 2004 8:36 pm
Location: Place.

Post by blackmyst »

Nightcrawler wrote:Listen to yourselves people.. raving ZSNES fanboys, SNES9x bashing, attacking for no good reason people..

The guy asked to utilize a hardware feature that's been in most video cards for the past 5-7 years.. and you attack him for it. Why? You're reasoning is weak. Why use ANY filter if it's not the 'way it was supposed to be'? Why bother to do anything the SNES doesn't actually do?

You're also the same people who motioned against using Direct3D for rendering over DirectDraw was such a terrible idea. It can't be that terrible if Pagefault has decided to do one.
Well, I didn't mention Snes9x in my post, and I don't remember ever talking about Direct3D either. Just argueing against the whole attitude of "hai guyz rewrite your emu so starfox can run at 1600x1200 native with 4xAA and 85 fps because SNES graphics suck. Never mind the emulation core, this is more important." Like I said, buy an Xbox360, you'll be much happier.

Also, you're right, I don't like HQxX and that sort of stuff. :P And not just because it's "not the way it used to be" (don't make it into the strawman argument of "hey next you'll want to simulate blowing on the cart" or something like that), but I'll save that for some other time.
[size=75][b]Procrastination.[/b]
Hard Work Often Pays Off After Time, but Laziness Always Pays Off Now.[/size]
pagefault
ZSNES Developer
ZSNES Developer
Posts: 812
Joined: Tue Aug 17, 2004 5:24 am
Location: In your garden

Post by pagefault »

It *should* be just as fast as the DirectDraw code but if people have problems with it I will put in the DirectDraw code in as an option. Unless you are using some really ancient hardware and have up to date drivers you shouldn't have any problems. It will look the same as before but it will be much nicer internally. I'm still wondering wether to use D3D9, it has some advantages but I don't want to shove DX9 down people's throats if it's not required.
Agozer
16-bit Corpse | Nyoron~
Posts: 3534
Joined: Sun Aug 01, 2004 7:14 pm
Location: Nokia Land

Post by Agozer »

pagefault wrote:D3D9, it has some advantages but I don't want to shove DX9 down people's throats if it's not required.
What are these advantages?
whicker: franpa is grammatically correct, and he still gets ripped on?
sweener2001: Grammatically correct this one time? sure. every other time? no. does that give him a right? not really.
Image
Jipcy
Veteran
Posts: 768
Joined: Thu Feb 03, 2005 8:18 pm
Contact:

Post by Jipcy »

Agozer wrote:
pagefault wrote:D3D9, it has some advantages but I don't want to shove DX9 down people's throats if it's not required.
What are these advantages?
http://board.zsnes.com/phpBB2/viewtopic ... 458#109458
[url=http://zsnes-docs.sf.net]Official ZSNES Docs[/url] | [url=http://zsnes-docs.sf.net/nsrt]NSRT Guide[/url] | [url=http://endoftransmission.net/phpBB3/viewtopic.php?t=394]Using a Wiimote w/ emulators[/url]
Agozer
16-bit Corpse | Nyoron~
Posts: 3534
Joined: Sun Aug 01, 2004 7:14 pm
Location: Nokia Land

Post by Agozer »

Jipcy wrote:
Agozer wrote:
pagefault wrote:D3D9, it has some advantages but I don't want to shove DX9 down people's throats if it's not required.
What are these advantages?
http://board.zsnes.com/phpBB2/viewtopic ... 458#109458
Thanks.

I have no objections if ZSNES starts to use DirectX9, but I certainly won't start bitching either if pagefault decides to stick with DX8. Do as you see fit basically.
whicker: franpa is grammatically correct, and he still gets ripped on?
sweener2001: Grammatically correct this one time? sure. every other time? no. does that give him a right? not really.
Image
sweener2001
Inmate
Posts: 1751
Joined: Mon Dec 06, 2004 7:47 am
Location: WA

Post by sweener2001 »

I support hardware bilinear filtering.
[img]http://i26.photobucket.com/albums/c128/sweener2001/StewieSIGPIC.png[/img]
amano
Rookie
Posts: 11
Joined: Thu Apr 27, 2006 12:04 am

Post by amano »

blackmyst wrote: Just argueing against the whole attitude of "hai guyz rewrite your emu so starfox can run at 1600x1200 native with 4xAA and 85 fps because SNES graphics suck. Never mind the emulation core, this is more important." Like I said, buy an Xbox360, you'll be much happier.
Since your comments are obviously directed towards me:
a) no, I don't like the xbox and co. If you had read my post, before stupidly bashing someone who might (!) have another point of view, you would have realized that I have been using zsnes for many years as my emulator of choice (and the snes was my console of choice before that and it still is!).
b) I really like a filtered image more than the unfiltered one. As with all kinds of filtes it is (and should be) up to your personal taste if you like filters at all and what filter to use. The problem is that an unfiltered image doesn't look like the "authentic" image either. Otherwise nobody would bother to write this great NTSC filter.
c) The point of having the filtering done by the gpu is to help those people with rather weak CPUs. Since you obviously seem to already obtain your xbox3000 thingie, CPU usage certainly isn't a problem for you, but for some PCs still it is. And I didn't ask for things that ANY graphics card couldn't do for up to ten years.
d) I don't get your point in bashing people AFTER some developers already replied in a nice and constructive way. Considering their replies it even seems that zsnes is already capable of bilinear filtering the image. Thanks to clements and pagefault for your really kind replies. I will give it a try (if clements is right, I wouldn't have found it ever).
Deathlike2
ZSNES Developer
ZSNES Developer
Posts: 6747
Joined: Tue Dec 28, 2004 6:47 am

Post by Deathlike2 »

amano wrote:
blackmyst wrote: Just argueing against the whole attitude of "hai guyz rewrite your emu so starfox can run at 1600x1200 native with 4xAA and 85 fps because SNES graphics suck. Never mind the emulation core, this is more important." Like I said, buy an Xbox360, you'll be much happier.
Since your comments are obviously directed towards me:
a) no, I don't like the xbox and co. If you had read my post, before stupidly bashing someone who might (!) have another point of view, you would have realized that I have been using zsnes for many years as my emulator of choice (and the snes was my console of choice before that and it still is!).
b) I really like a filtered image more than the unfiltered one. As with all kinds of filtes it is (and should be) up to your personal taste if you like filters at all and what filter to use. The problem is that an unfiltered image doesn't look like the "authentic" image either. Otherwise nobody would bother to write this great NTSC filter.
c) The point of having the filtering done by the gpu is to help those people with rather weak CPUs. Since you obviously seem to already obtain your xbox3000 thingie, CPU usage certainly isn't a problem for you, but for some PCs still it is. And I didn't ask for things that ANY graphics card couldn't do for up to ten years.
d) I don't get your point in bashing people AFTER some developers already replied in a nice and constructive way. Considering their replies it even seems that zsnes is already capable of bilinear filtering the image. Thanks to clements and pagefault for your really kind replies. I will give it a try (if clements is right, I wouldn't have found it ever).
I will agree with some control over bilinear filtering.. hardware filtering is a nice thing though. However, note that ALL of the filters currently used are software based.. and there's probably a good explanation for it.
Continuing [url=http://slickproductions.org/forum/index.php?board=13.0]FF4[/url] Research...
byuu

Post by byuu »

amano wrote:c) The point of having the filtering done by the gpu is to help those people with rather weak CPUs. Since you obviously seem to already obtain your xbox3000 thingie, CPU usage certainly isn't a problem for you, but for some PCs still it is. And I didn't ask for things that ANY graphics card couldn't do for up to ten years.
This isn't directly related to your filtering request, but a pet peeve of mine is that I keep hearing about these banger 50mhz PCs people seem hellbent to use until the end of time.

Microcenter sells a 3ghz Celeron + MicroATX motherboard combo for $79 and 512mb of DDR400 RAM for $19. You already have a compatible case, PSU, hard drive, CDROM drive, keyboard, mouse and monitor. The board has onboard video, audio, and LAN, or you can use your existing cards.
Why should us emulation authors continue to sacrifice accuracy for people too damned cheap to shell out $99 once every five years?
d) I don't get your point in bashing people AFTER some developers already replied in a nice and constructive way. Considering their replies it even seems that zsnes is already capable of bilinear filtering the image. Thanks to clements and pagefault for your really kind replies. I will give it a try (if clements is right, I wouldn't have found it ever).
Because the developers have a reputation to maintain, whereas Nightcrawler has no direct affiliation to ZSNES.
amano
Rookie
Posts: 11
Joined: Thu Apr 27, 2006 12:04 am

Post by amano »

Great, clements. Thanks for your help. I wouldn't have thought that this video mode (S F) would offer any filtering. But it does what you promised. thanks.



@byuu: Yes. I know that bsnes is aiming at being as accurate as possible. Increase the compatibility and I might consider switching.
blackmyst
Zealot
Posts: 1161
Joined: Sun Sep 26, 2004 8:36 pm
Location: Place.

Post by blackmyst »

Byuu, that was me he was replying to. :P

amano wrote:Since your comments are obviously directed towards me:
a) no, I don't like the xbox and co. If you had read my post, before stupidly bashing someone who might (!) have another point of view, you would have realized that I have been using zsnes for many years as my emulator of choice (and the snes was my console of choice before that and it still is!).
b) I really like a filtered image more than the unfiltered one. As with all kinds of filtes it is (and should be) up to your personal taste if you like filters at all and what filter to use. The problem is that an unfiltered image doesn't look like the "authentic" image either. Otherwise nobody would bother to write this great NTSC filter.
There we go again. Where did I say I liked it unfiltered? I could go into detail, but let's just say I'm rather opposed to the idea of trying to force technical aspects of the SNES "up to spec" while actually making it look worse aesthetically.
c) The point of having the filtering done by the gpu is to help those people with rather weak CPUs. Since you obviously seem to already obtain your xbox3000 thingie, CPU usage certainly isn't a problem for you, but for some PCs still it is. And I didn't ask for things that ANY graphics card couldn't do for up to ten years.
Not quite sure what you're saying here, the Xbox360 is a video game console. And no, I probably will never own one. And no, my PC isn't very top-of-the-line.
d) I don't get your point in bashing people AFTER some developers already replied in a nice and constructive way. Considering their replies it even seems that zsnes is already capable of bilinear filtering the image. Thanks to clements and pagefault for your really kind replies. I will give it a try (if clements is right, I wouldn't have found it ever).
You were talking about bilinear filtering mode 7, which ZSNES does not do, which is really a silly thing, and which you considered a reason to not use ZSNES apparently. This was what my post was about in the first place.

Bilinear filtering the SNES output, however, is just interpolating the entire screen, which is similar to the effect of a TV, and which is really a good thing for SNES graphics.


Also, you'd consider switching to bsnes? If you have trouble running zsnes full speed as is, bsnes is not going to be an option for you.
[size=75][b]Procrastination.[/b]
Hard Work Often Pays Off After Time, but Laziness Always Pays Off Now.[/size]
darkfalz
Rookie
Posts: 15
Joined: Wed Jul 28, 2004 5:38 pm

Post by darkfalz »

pagefault wrote:This will be possible when I finish the Direct3D code.
Woo!
amano
Rookie
Posts: 11
Joined: Thu Apr 27, 2006 12:04 am

Post by amano »

blackmyst wrote:Byuu, that was me he was replying to. :P
You were talking about bilinear filtering mode 7, which ZSNES does not do, which is really a silly thing, and which you considered a reason to not use ZSNES apparently. This was what my post was about in the first place.

Bilinear filtering the SNES output, however, is just interpolating the entire screen, which is similar to the effect of a TV, and which is really a good thing for SNES graphics.


Also, you'd consider switching to bsnes? If you have trouble running zsnes full speed as is, bsnes is not going to be an option for you.
No. I stated that I used ZSNES myself and just installed snes9x on some older machines. My own machine is powerful enough to even run the NTSC filter (which is a great thing).

I was just requesting a simple bilinear filter (I didn't know that it was already there in zsnes) and just mentioned that snes9x even can filter the mode 7 which was considered a strong point by some (at least in the snes9x forums). Personally I do not need it and I wasn't even requesting it. I just mentioned it in the context of bilinear filtering.
paulguy
Zealot
Posts: 1076
Joined: Sat Jul 02, 2005 2:01 am
Contact:

Post by paulguy »

Isn't there a box in the video options box that says "bilinear filter"?
Clements
Randomness
Posts: 1172
Joined: Wed Jul 28, 2004 4:01 pm
Location: UK
Contact:

Post by Clements »

Yep, but that's a software filter.
Deathlike2
ZSNES Developer
ZSNES Developer
Posts: 6747
Joined: Tue Dec 28, 2004 6:47 am

Post by Deathlike2 »

paulguy wrote:Isn't there a box in the video options box that says "bilinear filter"?
Let me repeat: ALL of the filters are software based. What Clements was showing was the method of inducing hardware based bilinear filtering.

There are screenshots around showing bilinear filtering on Mode 7 in Snes9x if you search the forums well enough. It is clearly a significant improvement (if you care for any filtering) over straight bilinear in Mode 7 only. There's actual work done in the background on the Mode 7 surface to make it look better. This is virtually the ONLY thing Snes9x has over ZSNES.
Continuing [url=http://slickproductions.org/forum/index.php?board=13.0]FF4[/url] Research...
Post Reply