[ 3 / biz / cgl / ck / diy / fa / ic / jp / lit / sci / vr / vt ] [ index / top / reports ] [ become a patron ] [ status ]
2023-11: Warosu is now out of extended maintenance.

/vr/ - Retro Games


View post   

File: 143 KB, 450x650, ...jpg [View same] [iqdb] [saucenao] [google]
[ERROR] No.8167786 [Reply] [Original]

...

>> No.8167794

>>8167786
Use a fucking shader. It's the year fucking 2021, holy shit.

>> No.8167809

Use an integer multiple resolution, you tard.

>> No.8167834

>>8167794
>>8167809
What if i'm using a mobile emulator, wise guys?

>> No.8167875

install retroarch

>> No.8167890

>>8167809
So nearest filtering, then.

>> No.8167950
File: 3.27 MB, 3057x2093, am2r.jpg [View same] [iqdb] [saucenao] [google]
[ERROR]

not my problem

>> No.8167992

>>8167794
Shaders still have to pick between the two.

>> No.8168060
File: 1 KB, 512x448, kirby.png [View same] [iqdb] [saucenao] [google]
[ERROR]

>>8167809
Most retro games didn't use square pixels, so to display them correctly on a modern display requires non-integer scaling.

>> No.8168079

>>8168060
Don't be stupid. Didn't learn fractions in middle school? To convert one ratio to another, all you need are more integers.

>> No.8168082

What is your question, anon?

>> No.8168106

>>8168079
Can't tell if retarded or snarky.

>> No.8168124
File: 13 KB, 1792x1344, 7_over_6.png [View same] [iqdb] [saucenao] [google]
[ERROR]

>>8168106
Not even a joke. We have the pixels for it now.

>> No.8168162

>>8168060
you're a fucking retard

>> No.8168201
File: 6 KB, 640x350, aqua_000.png [View same] [iqdb] [saucenao] [google]
[ERROR]

>>8168079
>>8168124
So if you have an expensive 4k monitor, you can now play NES/SNES games.
How about Genesis? Most games used the 320x224 mode with 32:35 pixel aspect ratio. Minimum correct integer-scaled resolution is 10240x7840.

Or say I want to play a DOS game that uses hi-res EGA mode (pic rel): 640x350 resolution, 35:48 pixel aspect ratio.
Minimum correct res is 22400x16800.

>>8168162
I'm not the one here who doesn't know what a circle looks like

>> No.8168234

Is near the one that makes it look like shit? Because if so then not that one.

I was playing FFIV on PPSSPP and for some reason it kept randomly forcing me that filter after playing it for hours and it was unplayable until I figured out it was the near filter and turned it off.

>> No.8168235

You need integer scaling so that all pixels are the same size and shape. It doesn't matter that they aren't square, just that they're all equal.

>> No.8168239

>>8167786
or you could just use signal processing to properly resample the image, but normies can't math

>> No.8170287
File: 994 KB, 1440x2304, rthunder.jpg [View same] [iqdb] [saucenao] [google]
[ERROR]

>>8167794
Which shader?

>> No.8170343
File: 85 KB, 488x472, yikes.jpg [View same] [iqdb] [saucenao] [google]
[ERROR]

>using shaders

>> No.8170730

>>8168201
Just stretch it a bit towards square to fit a more consonant ratio :^)
Many games use cheap math that assumes square pixels anyway. It's a good compromise.

>> No.8171078

>>8168239
>Gibbs ringing
Fuck off.

>> No.8173232
File: 78 KB, 1792x1344, snes 4 to 3 with uncompressed pixels.png [View same] [iqdb] [saucenao] [google]
8173232

>>8168124
that is one method.

>> No.8173479
File: 11 KB, 720x405, mystery scaler.png [View same] [iqdb] [saucenao] [google]
8173479

is there a scaling algorithm which does pic related? it works like nearest neighbor except colors are blended instead of choosing one. unlike the bilinear example shown, it only blends colors when it has to. the blending in pic related was done by taking the rgb average of the four pertinent colors, but a better method would take into account the fact that colors' visual midpoints aren't the rgb average.

>> No.8174578

I love cock

>> No.8174876

>>8173479
Some naive approach when target pixel is sampled from at most two pixels, I suppose? This should be similar to nearest neighbor zoom to nearest integer scale, then bilinear stretch to exact size.

It looks like LCD monitors implement something like that. To eliminate delays, monitor can receive pixel data, write each one n times into frame buffer, and repeat each line n times, all without pause. Then the LCD controller can sample 4 pixels to get the color of 1 physical element, and they generally do some area sampling to deal with color resolution, ghosting compensation, and whatnot anyway.

>> No.8175658

>>8174876
interesting. then surely the algorithm exists and could be implemented virtually into an emulator. i don't know how good it would look, but considering the range of people's tastes it would be nice to have the option.

>> No.8176124

>>8175658
It's not even an “algorithm”, and it has been available since the dawn of times as simple 2x, 3x, 4x zoom of the frame which is then stretched to output with graphical toolkit or hardware default method (that makes less of a difference than when you use it to stretch small 1x frame).

There is nothing magical about it. The problem is the same as it ever was: if your frame dimensions and output dimensions correspond as some random proportions, you get uneven pixel size and/or uneven blending lines and/or excessive smoothing. Your example looks nice because of the very even zoom value that only makes every 9th line blended. Try resizing some pixel art to 113% or something with various methods, and try to tell which one sucks less.

> Filters
that everyone hate were invented to pre-process the frame before such random and/or uncontrollable resize to outline some of its features, and save them. They were never intended to be looked at directly.

>> No.8176150

>>8173479
You could achieve that in the vertex shader with a little bit of math and tweaking until it looks right.

Normally a vertex mapper will define the location of the texture as was given to them by the geometry pipeline in a linear way. So that in the 9 screen textures corresponding to 2 pixels, the vertex shader would be say the screen pixels correspond to texture pixesls (0, 0.222, 0.444, 0.666, 0.888, 1.111, 1.333, 1.555, 1.777, 2) and then the TexParam NEAREST or LINEAR will do either a nearest or linear blend on any of the decimal ones.

If instead you clipped them in such a way that it says the screen pixels correspond to (0, 0, 0, 0, 0.3, 0.7, 1, 1, 1, 1), you could get something like this effect.

>> No.8176153
File: 25 KB, 1920x1440, Kirby's Adventure (USA)-210925-231504.png [View same] [iqdb] [saucenao] [google]
8176153

If you don't want to use CRT shaders, then personally I'm fond of the the 'pixellate' interpolation shader in retroarch - nearly looks raw but results in zero scrolling shimmer

>> No.8176181

>>8167786
How is this hard?
>integer scaling
Nearest
>Scaling to resolution not an integer of 240p
Linear

>> No.8176204

>>8167794
>It's current year!
Unironically neck yourself you fucking reddit nigger.

>> No.8176630

>>8173479
>>8176153
well there it is. thanks anons.

>> No.8176745
File: 77 KB, 1344x1004, 113.png [View same] [iqdb] [saucenao] [google]
8176745

>>8176124
tried the pixellate shader at 113% and this was the result (enlarged to show texture). not incredible, but at high resolutions it doesn't really matter.

>> No.8176784

>>8176153
i went and tried it out and actually thought it wasn't working in fullscreen because it's just that unnoticeable.

>> No.8177248

>>8176181
>>Scaling to resolution not an integer of 240p
Bicubic :)

>> No.8177353

>>8167786
Simple.
Was the game made with Nearest in mind? (i.e. Quake)
Nearest.
Was the game made with Linear in mind? (i.e. Half-Life)
Linear.
Second test in case first test somehow results inconclusive.
Does the game LOOK better in Nearest even if it was made with Linear in mind?
Nearest.
Does the game LOOK better in Linear even if it was made with Nearest in mind?
Linear.
This defeats the filterfag.

>> No.8178816
File: 48 KB, 400x600, big_problems.jpg [View same] [iqdb] [saucenao] [google]
8178816

>>8168060
I have arrived in this thread to inform you that many developers, even Nintendo themselves, developed their assets in 1:1 pixel ratio and then just sort of gave up when it came to outputting.

>> No.8179461
File: 8 KB, 186x270, chronomoon.jpg [View same] [iqdb] [saucenao] [google]
8179461

>>8178816
but not all

>> No.8179464

>>8179461
Oval moon foreshadows the Chrono Trigger thus its the superior output.