Next Generation Emulation banner
41 - 60 of 66 Posts
I think 5xBR shaders are competative with xBRZ scalers because you've got some adiditonal options, like smoothing and colors.
Looks like the in-game comparison is rather unfair and in 5xBR's favor. The main bottleneck for 3xBRZ is being limited to the software plugin; it just can't do as much as the OpenGL/XGL plugins to make things look better. I think the algorithm itself is fine, and should probably get a more balanced comparison.

Here is the software plugin with xBRZ:

And the settings I used:

Windows-only is another disadvantage for the xBRZ plugin, but the code is open-source so that could change in the future.
I had to test this by running ePSXe in WINE.

Then there's the OpenGL (WINE) and XGL (Linux Native) plugins with 5xBR:

This compares the windows (left) and linux (right) plugins. As you can see, they handle the shaders somewhat differently (not really any xBR happening for XGL). Getting shaders to work with the linux plugin is tricky; but it has other advantages (just look at that anisotropic filtering and anti-aliasing). I only tested the (a) shader so far. What's different about (a) and (b)?
Here are the settings I used:

Errata: I forgot to enable the pixel shader for the OpenGL plugin (it doesn't make much difference) and the two do not have equivalent aspect ratio settings (only the linux plugin has "PSX Ratio") so I should have used "pixel ratio" for both, but the ratio is fixed by the window size so it doesn't really matter.

By the way, OrbitalCow, take a look at my "Windowed Mode" size settings for a solution to your resolution problem. 1440x1080 happens to be 4.5 times 320x240 and 2.25 times 640x480. The OpenGL plugin allows this to be used to set the video size in full-screen mode so you don't have to see your desktop. ::EDIT:: The soft plugin's fullscreen mode has no keep aspect ratio option after all, but just use windowed mode at 1440x1080.

Also, if anyone would like to invest in bringing these technologies to an open-source project with ongoing development, cross-platform, and 64bit compatibility, like pcsxr you'd make my whole year!
 
I only tested the (a) shader so far. What's different about (a) and (b)?
The b shader was a bit tricky to port to GLSL, at least for Ati AMD cards, since their OGL drivers don't handle certian logical statements. I think there are no other AMD compatible b-ports out there atm. It works a bit diferently, mainly it leaves isolated pixels square and handles the fonts differently. The a algorithm just rounds everything.
Therefore the b-shader is my fauvorite for sprite games, the c shader is a bit "extreme" with fonts, can mess up overall consistency a bit.
 
The b shader was a bit tricky to port to GLSL, at least for Ati AMD cards, since their OGL drivers don't handle certian logical statements. I think there are no other AMD compatible b-ports out there atm. It works a bit diferently, mainly it leaves isolated pixels square and handles the fonts differently. The a algorithm just rounds everything.
Therefore the b-shader is my fauvorite for sprite games, the c shader is a bit "extreme" with fonts, can mess up overall consistency a bit.
I know it's not really for 3d games, but I wish it could be applied to textures in 3d games, leaving geometry to the GPU.
 
OKAY, well the F1/F3 thing was solved while I was testing the window mode. I have no idea why it was not working. But now when I use 1600x1200 for full 4:3 it seems to be doing the job. I did some toggling on and off and tested a few things and now it seems to be working perfectly. It could have been that I accidentally deleted the save state without knowing for some reason. Possibly it was overwritten with a blank or my keyboard was running oddly with the DS4 gamepad.

I did actually try windowed mode. It's just not for me. I prefer no borders and black on the sides for immersion. Thanks for the tip though. And hey now that F1 is working all my problems are solved. Finally! ePSXe is finally about perfect.

Lunar 1 is now ready for play.

That b-shader is really damn nice. It also has a slight color warmth tonal change to it that I guess is good for some games no doubt, Even with my display calibrated to D65, some games are a little cold at times, like Suikoden II and some of the 2D RPGs. It still seems like it is less accurate than xBRZ though. But it is surely smooth. I also wonder if 3x is somehow the largest option they have in the soft plugin? Why did Zenju not implement his 4xBRZ?
 
Yes i ported the b shader. I got the .fx code from the SNES emulator, which isn't usable for the Pete's plugin.
Anyway, you can try the "new" 2xBRabc shaders from the "shaders" thread and post a few pics too...:)
 
New shader looks great man. You can see the subtle improvements on the tiny piece of square white robe on the left side and then the squarish hand that was prevalent in your older 3.7b shader. I might just switch to this one now.
 
I rebuild this mod with VS2013 Concurrency Runtime loosing dependency for tbb.dll.
File is here: http://dev.tapek.shst.pl/ePSXe/gpuPeopsSoft.7z
PS: It seems to be even little faster.

Changed code:
Code:
#ifdef USE_TBB
#include <tbb/task_scheduler_init.h>
#include <tbb/parallel_for.h>
#else
#include <ppl.h>
#endif

namespace
{
const size_t TASK_GRANULARITY = 8; //granularity 1 has noticeable overhead for xBRZ

void parallelScaleXBRZ(size_t factor, const uint32_t* src, uint32_t* trg, int srcWidth, int srcHeight, const xbrz::ScalerCfg& cfg)
{

#ifdef USE_TBB
  tbb::parallel_for(tbb::blocked_range<int>(0, srcHeight, TASK_GRANULARITY),
  [=, &cfg](const tbb::blocked_range<int>& r)
  {
  xbrz::scale(factor, src, trg, srcWidth, srcHeight, xbrz::ColorFormat::RGB, cfg, r.begin(), r.end());
  });
#else
  concurrency::parallel_for(0, srcHeight, (int)TASK_GRANULARITY, [&](const int& i)
  {
  xbrz::scale(factor, src, trg, srcWidth, srcHeight, xbrz::ColorFormat::RGB, cfg, i, i + TASK_GRANULARITY);
  });
#endif
}
EDIT: It's much faster, tested on Crash 3 Naughty Dog intro (box).
I get ~45FPS using original build, and ~65FPS using my rebuild.

EDIT2: Adding "Keep aspect ratio" for fullscreen it's not so easy...
EDIT3: YaY, almost fixed the aspect ratio :p
EDIT4: Updated file, now all stretched modes in fullscreen always keep aspect ratio.
 
Only x4 ? Maybe x5 :rolleyes: File updated...

PS: Scale 3x is broken, unstretched modes not tested
PS2: This plug-in was not designed for such big surfaces, line pitch, buffer sizes ect, are hardcoded for small resolutions.
PS3: 5x is slooow, this plugin requires proper dynamic resource management. I used 640*scale for surface x/y.
 
PS2: I don't know what that means. Only PS1 games are used in here. I use 1080p stretched and like you said it now works with xBRZ. But I have not played much yet.

3xBRZ runs fine for me in what I saw of it. I use a very high-end computer. Is 4xBRZ not possible?

I don't think anyone uses this for Scale. Scale is kind of garbage so no big deal if it is broken.

But is it possible to get 4xBRZ in here?
 
But this plugin is ... old as hell an written in old C with 'magic numbers' everywhere ...
It is already done, redownload the file, added 4xBRZ and 5xBRZ modes but broke Scale 3x :p

PS: It uses DirectDraw ... 6 ...
PS2: I need to use big surfaces to hold so big internal resolution (640px*5=3200px), and this plugin always locks and blit full surface, and this is slow. DirectDraw7 can redraw only part of surface...
PS3: It should work fine for 2D games.

EDIT:
xBRZ Texture Scaler for gpuPeteOpenGL2!:
http://ngemu.com/threads/peteopengl2tweak-tweaker-for-peteopengl2-plugin-w-gte-accuracy-hack.160319/
 
I think 5xBR shaders are competative with xBRZ scalers because you've got some adiditonal options, like smoothing and colors.
Folks just need to have a good intuition in terms what they would like to have implemented.
A very fast gpu is needed though, since the technique used here uses multiple instances of the algorithm.
There is a way to solve this and it's about to play in windowed mode, if you have a modest gpu.
I'm popping two shaders i've made because i'm curious how they go agains xBRZ.:p
Hi guest.r, Please, can you made this working with stretched option? http://ngemu.com/attachments/5xbrab-smoothing-colors-rar.172049/
When I change to 5xbrz in your P.E.Op.S soft driver 1.18 MOD, the second plugin (Internal graphics) -> Stretching, goes blank. And I can´t play games with 16:9 in fullscreen. It looks and awesome MOD and I want to use for playing 2D games.
A million of thanks, and sorry for my bad english.
 
I was written about, some modes will not work - even old Scale 2/3/ect. modes, only xBRZ stretched modes will work.

Also xBRZ -Texture- Scaler in gpuPeteOpenGL2Tweak produces better effect.

PS: Shaders and gpuPeopsSoft scalers scale screen output, not textures.
 
I was written about, some modes will not work - even old Scale 2/3/ect. modes, only xBRZ stretched modes will work.

Also xBRZ -Texture- Scaler in gpuPeteOpenGL2Tweak produces better effect.

PS: Shaders and gpuPeopsSoft scalers scale screen output, not textures.
Yes, Thanks a lot : )
The only problem is that the 5xbrz setting in ".ini" file causes severe slowdown in most games (For example in metal gear) and I got a GTX 970, and a i7 4790k.
I know xbrz is most for the 2D texture games, but in 3D games, it can make the textures looks smoother and less sharp (Texts, and other 2D textures)
 
I have a little faster version already, but problem is that plugin uses old (and slow) OpenGL techniques. Slowdowns will be on so called "Frame Buffer Effects".

PS: I have already nearest neighbor interpolation (ie. pixel doubling) ready, and it's not very faster than xBRZ...

EDIT: Updated the file, it should be little faster.
 
I have a little faster version already, but problem is that plugin uses old (and slow) OpenGL techniques. Slowdowns will be on so called "Frame Buffer Effects".

PS: I have already nearest neighbor interpolation (ie. pixel doubling) ready, and it's not very faster than xBRZ...

EDIT: Updated the file, it should be little faster.
Wonderful :)
 
41 - 60 of 66 Posts