Giter VIP home page Giter VIP logo

Comments (10)

hunterk avatar hunterk commented on July 17, 2024

Hey, sorry for the delay getting back with you. I looked into it a bit and it indeed looks bad on SMS, as well as Gameboy games, so I'm guessing it's related to low resolution. I'm not sure what can be done about that.

Does yours look like this? http://i.imgur.com/F0PPMjo.png

You can also try using this one I made awhile back:
http://www.mediafire.com/download/5vbfp2bajs0hunb/halation.zip

Just replace the 'stock.cg' shader in the folder with the CRT shader of your choice (I tested it and it seemed to work with crt-geom-flat.cg, so assume the other crt shaders should be fine, too)

from common-shaders.

SixWingedFreak avatar SixWingedFreak commented on July 17, 2024

No worries on the delay! Let me say I freakin' love your blog. I've been referencing it constantly for the perfect NTSC and CRT emulation. :3

Yes, the halation shader you linked me to works, and crt-geom-flat.cg works with or without the halation... but I wasn't expecting anything wrong there because it seems to mostly affect the curved shaders.

As for the screenshot, no, I don't get anything like that. Whenever a shader doesn't work for me, it gives me either a blank screen or a crash to the desktop.

It's all getting a little confusing to say the least, so I made a video and I'll also reiterate a little better. Plus it seems like my other issue (#9) might be related to this one. I read on my other issue that you have an AMD/ATI card as well as integrated graphics. I'm starting to think this might only be affecting Nvidia cards. I have tested both this issue and issue #9 on three separate computers now with the exact same results on each!

My desktop:
i7 950
12GB
GTX 580

Upstairs friend's laptop:
i7 740QM
6GB
460M

Upstairs friend's desktop:
i7 4770
16GB
GTX 770

None of the drivers are forcing AA/AF on retroarch.exe. Drivers are also newest on all but his desktop. Fresh RetroArch installs on all for testing.

Results:

motionblur-simple.cg does not work in ANY core nor on Android -- blank screen. I want to use it with GameBoy, GameBoy Advance, and Game Gear. This alternative by eadmaster works fine.

braid-rewind.cg does not work in ANY core nor on Android -- blank screen.

lcd-cgwg.cgp does not work in ANY core nor on Android, because it uses motionblur-simple.cg in its passes -- blank screen.

crt-geom-flat-sharpness.cg does not work with Master System -- blank screen. I did not previously know about this one until I recorded the video. I did some minimal testing just now and this shader works fine in SNES (and probably others). I don't typically use this one.

crt-interlaced-halation.cgp does not work in Master System, Game Gear, GameBoy, and GameBoy Advance -- blank screen. This shader works fine in SNES, NES, and Genesis. I would like to use it with Master System, but it just doesn't work with it. I don't mind that it doesn't work with the handhelds.

crt-geom-halation-interlaced-curved.shader located from here on your blog does not work with Master System, Game Gear, GameBoy, and GameBoy Advance. This shader works fine in SNES, NES, and Genesis. I mention this shader because it is also a curved shader with halation, so I feel the problem with crt-interlaced-halation.cgp must be closely related. This is my number one preferred shader for the consoles that would normally be seen on a CRT.

I'm not sure what other input I can provide

Just for reference, what I've been using since I played around with every shader:

SNES - bsnes Balanced
NTSC-Composite.filter
crt-geom-halation-interlaced-curved.shader

NES - Nestopia
built-in Blargg Composite
crt-geom-halation-interlaced-curved.shader

Genesis - Genesis Plus GX
ntsc-320px-svideo-gauss-scanline.cgp (I would use crt-geom-halation-interlaced-curved.shader, however I like consistency across the board, so since SMS can't use it or crt-interlaced-halation.cgp, I resorted to these.)

SMS - Genesis Plus GX
ntsc-256px-svideo-gauss-scanline.cgp

GB/GBC/GBA/GG - gambatte/VBA-M/Genesis Plus GX
motionblur-eadmaster.cg
dot3x.cg

from common-shaders.

SixWingedFreak avatar SixWingedFreak commented on July 17, 2024

I compiled a new retroarch build a few moments ago.. this one lets you change the video driver from RGUI easily.

With the default gl driver, I get the same results.

If I change the video driver to d3d9:
motionblur-simple.cg works across all cores.
lcd-cgwg.cgp works across all cores.
braid-rewind.cg results in a picture now, but the effect does not appear to be applied during rewinding. Tested in SMS/GG/SNES
crt-interlaced-halation.cgp and crt-geom-flat-sharpness.cg are still broken in SMS.

Here is a picture of crt-interlaced-halation.cgp with d3d9 in SMS. Kinda closer to yours...

from common-shaders.

hunterk avatar hunterk commented on July 17, 2024

Glad you enjoy the blog :D

Hmm. Judging by the video (thanks for that, btw; very descriptive!), a lot of shaders are totally broken for you. That's good that the d3d driver fixes some of it, but having to use a specific (nondefault) driver is suboptimal, to say the least. I'll have to try to get my hands on an nvidia machine to see if I can get any more info.

One other thing: if you launch from a command line with the -v switch added, does it give you any errors when you load the offending shaders, or does it just silently pass a broken result?

from common-shaders.

SixWingedFreak avatar SixWingedFreak commented on July 17, 2024

Never tried that switch before. Extracted a fresh copy and looks like it loads no problem; I hear sound and whatnot

untitled

from common-shaders.

Tatsuya79 avatar Tatsuya79 commented on July 17, 2024

Not sure if you identified the cause, perhaps you noticed what I'll say here, but it's caused by the interlacing detection.

In crt-geom-flat.cg you just have to comment:
//#define INTERLACED
and the shader will work on all those systems (SMS, GBA... perhaps not bsnes as there is a particular issue with shaders if I remember correctly).

For shaders which don't have this define switch, you have to change:
float2 ratio_scale = (xy * IN.texture_size - float2(0.5) + ilvec)/ilfac;
into
float2 ratio_scale = xy * IN.texture_size - float2(0.5);

Of course interlation detection will be off.

Edit= Sorry it's not the same code as crt-geom-flat, I thought I did test that for crt-interlaced-halation too but I was wrong.

from common-shaders.

Stu1983 avatar Stu1983 commented on July 17, 2024

SixWingedFreak did you ever get a solution to this?
I am having the same issue trying to use crt-interlaced-halation on SMS via Genesis Plus GX
I really want to use this shader as it looks perfect on all the other cores but SMS gives a black screen with sound.
I'm also running nVidia

from common-shaders.

Tatsuya79 avatar Tatsuya79 commented on July 17, 2024

CGWG gave us the fix for that.
Replace:
OUT.ilfac = float2(1.0,floor(IN.video_size.y/200.0));
by
OUT.ilfac = float2(1.0,clamp(floor(IN.video_size.y/200.0),1.0,2.0));

You can read the thread here:
http://www.libretro.com/forums/viewtopic.php?f=6&t=1436#p11768

from common-shaders.

Stu1983 avatar Stu1983 commented on July 17, 2024

many thanks works great now

from common-shaders.

SixWingedFreak avatar SixWingedFreak commented on July 17, 2024

I'm going to close this one as crt-interlaced-halation.cgp works fine w/ Genesis Plus GX (Genesis, 32X, and SMS) since Retroarch v1.0.0.2 and still does as of the current nightly on Nvidia Geforce 770 GTX

from common-shaders.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.