Author Topic: ReGBA, GBA emulator version 1.45.5 (hardware scaling)  (Read 100053 times)

Nebuleon

  • *
  • Posts: 37
Re: ReGBA, GBA emulator version 1.45.5 (hardware scaling)
« Reply #360 on: May 29, 2016, 01:03:25 am »
Hi there Qubits.

The GCW Zero has a resolution of 320x240 and a 3.5-inch screen, measured diagonally. This means that the width is 71.12 mm, fitting 320 pixels, and the height is 53.34 mm, fitting 240 pixels.

A pixel on the GCW Zero is thus 0.222... mm by 0.222... mm. This is a real pixel, in all senses of the word: it displays one color across all of its surface area, using the red, green and blue subpixels to create the illusion of a certain color. It's not suddenly a fake pixel just because its dimensions are different.

The size of these pixels cannot be reconfigured, because the color filters that make up the red, green, and blue components cannot be physically moved. As such, it is impossible to resize one of the pixels on the GCW to be a different size (here, the GB/GBC's 0.2552 mm pixels).

It's also not possible to make a pixel display a gradient of colors from its top to its bottom, to emulate a larger pixel by lighting up one entire pixel of a certain color, plus 1/6 of the top, bottom, left or right of its neighbors, for example.

Your image states that the resolution of the GB/GBC screen on a GCW is 142 by 131. That is false. 160 by 144 pixels are being used to display the 160 by 144 pixels of the GB/GBC screen - the same happens with the 240 by 160 (not 213 by 146) pixels of the GBA.

What you want is for a 160 by 144 pixel screen to take up the same space as on a GB/GBC. Because the GCW's pixels are 0.222 mm and this cannot be changed, you need 184.7887 pixels by 153.8931 (but GIMP says 166 preserves the aspect ratio better) pixels on the GCW.

Here's the title screen as you'd see it on the GB/GBC.



There are two ways to go about changing the pixels to maintain the size as opposed to the indivisibility of the pixels.

a) Duplicate or delete pixels, which makes text look bad (especially if it duplicates or deletes a horizontal or vertical stem).



b) Use bilinear interpolation, which is closest to the idea of "use 1 whole pixel of a certain color, but have the top, bottom, left and right 1/6 of its neighbors use the same color" but blurs the output.



The scalers on GCW emulators assume that you either don't want the blur or that you want the image to be full-screen, which offsets the illegibility that the blur creates. Here, though, the high amount of blur created by resizing the image by exactly 14.86% would outweigh the increase in legibility inherent in enlarging the image. It's a trade-off.

There are images in this post. Note that, because I don't know the size of your monitor, obviously I can't make them display at the same size on your monitor as on your GB/GBC. Don't worry; those are still real pixels, they're just a different size. You may also display these on your GCW and see exactly what they'd look like and the size of the result, by uploading them to your GCW and using the image viewer application.
The Cloud is nice, but not if it decides to rain on your parade.

Qubits

  • *
  • Posts: 143
Re: ReGBA, GBA emulator version 1.45.5 (hardware scaling)
« Reply #361 on: May 29, 2016, 08:10:00 am »
I've taken a look at the third picture you've posted ( kid-dracula-gcw-interpolation.png ) on my gcw. Would it be possible to have it in addition to the other scales available ? I think it looks better than the ones offered in the upscaler video settings : not too big, not too small, closer than what you can see on an original game boy.
« Last Edit: May 29, 2016, 08:14:55 am by Qubits »

Haze

Re: ReGBA, GBA emulator version 1.45.5 (hardware scaling)
« Reply #362 on: September 08, 2016, 10:33:10 pm »
Hey Nebuleon would the implementation of a VBA style colour filter be feasible on GCW Zero? It works wonders with early GBA games. Aria of Sorrow looks so much better its mind blowing.

gameblabla

  • *
  • Posts: 454
Re: ReGBA, GBA emulator version 1.45.5 (hardware scaling)
« Reply #363 on: September 13, 2016, 10:33:06 pm »
Hey Nebuleon would the implementation of a VBA style colour filter be feasible on GCW Zero? It works wonders with early GBA games. Aria of Sorrow looks so much better its mind blowing.
You mean up-scalers algorithms like Hq2x or Scale2x ?
Well... it would look worse on the GCW's screen due to its lower resolution.
(remember, we're talking about 320x240 !)
Plus, Hq2x+ is super-taxing on the CPU so...

Screw Hqx, Seam carving is the King !


More seriously...
As far as Gameboy games go, the only way to get good image quality on the GCW Zero without using expensive
scalers like hqx might be this :
- Upscale 3x the gameboy screen (using a neighbor algo like the one found in Hover Missiles)
- This would result in a 480x432 screen.
Upscaling 4x times would give better downscaling result s but this isn't currently possible due to the OpenDingux's framebuffer.
(It can't be bigger than 640x480, upscaling it four times give 640x576)
- Then use the IPU to downscale it using a Linear algo.

It should result in this :


I can't see a better way other than that.
Everything else would either look worse, or be too cpu-intensive for the GCW0.

In comparaison, here's what the screen would look like if you skip the first two steps and just use the IPU for upscaling :


It looks way more blurry than the previous one !
« Last Edit: September 13, 2016, 11:03:06 pm by gameblabla »

Qubits

  • *
  • Posts: 143
Re: ReGBA, GBA emulator version 1.45.5 (hardware scaling)
« Reply #364 on: September 14, 2016, 07:56:41 am »
gameblabla, could you please fix the color problem on the pc engine emulator ? or ask for some help to other devs because it's a major issue that needs to be fixed and it shouldnt be too hard.

Atlantis_Risen

  • **
  • Posts: 556
Re: ReGBA, GBA emulator version 1.45.5 (hardware scaling)
« Reply #365 on: September 14, 2016, 10:13:14 pm »
gameblabla, could you please fix the color problem on the pc engine emulator ? or ask for some help to other devs because it's a major issue that needs to be fixed and it shouldnt be too hard.

What does that have to do with reGBA?

gameblabla

  • *
  • Posts: 454
Re: ReGBA, GBA emulator version 1.45.5 (hardware scaling)
« Reply #366 on: September 15, 2016, 12:37:23 am »
What does that have to do with reGBA?
Nothing, don't look too hard into it.
He was desesperate for me to fix that gamma issue in Temper.

Re: ReGBA, GBA emulator version 1.45.5 (hardware scaling)
« Reply #367 on: May 19, 2017, 03:14:35 am »
Any chance for a ps vita ReGBA port?
We need Nebuleon on psvita homebrew scene!

gameblabla

  • *
  • Posts: 454
Re: ReGBA, GBA emulator version 1.45.5 (hardware scaling)
« Reply #368 on: May 19, 2017, 09:11:38 am »
Any chance for a ps vita ReGBA port?
We need Nebuleon on psvita homebrew scene!
lol, the PS Vita already has mGBA since 3.5 and it now has Retroarch.
Why ask for ReGBA when you have superior alternatives ?

Re: ReGBA, GBA emulator version 1.45.5 (hardware scaling)
« Reply #369 on: May 19, 2017, 05:48:51 pm »
Any chance for a ps vita ReGBA port?
We need Nebuleon on psvita homebrew scene!
lol, the PS Vita already has mGBA since 3.5 and it now has Retroarch.
Why ask for ReGBA when you have superior alternatives ?

Lol, ReGBA is waaay faster than those "superior alternatives". The Lost Age runs like sh..
I don't care much for "accurate emulation". I need it to be fast, just like TEMPGBA2PSP. Maybe he can make a port for Vita, who knows...