Dolphin, the GameCube and Wii emulator - Forums

Full Version: question regarding EFB scale settings
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2
does anyone know what the difference is between the efb scale auto(fractional) & auto(integral)?
Which is better quality or is there a difference?
It seems as though I'm getting better performance with integral.

Thanks Wink
Anyone have any info on these 2 settings?
i would also like to know this
(07-29-2010, 02:09 PM)naoan Wrote: [ -> ]http://code.google.com/p/dolphin-emu/source/detail?r=5639



thanks Wink

"auto fractional: the original scaling way, will grant a 1:1 pixel mapping
between efb and screen giving the best image quality even in non standard
resolutions
at the cost of glitches in some games.
auto integral: automatic but only int values for the scale, no glitches but only
the correct pixel scaling when using some resolutions."

It says that 1920x1080 is one of the supported resolutions for integral.
So does that mean that it will give the same quality as fractional if you use the correct resolutions, but without glitches?

I think integral runs better for me but maybe fractional has slightly richer colour reproduction?? Don't know if the colour difference is all in my head though? Big Grin
i really do not understand the difference between fractional and integral at my native resolution 1920by1080 i mean i play 99% of the time in full windowed mode not full screen but my settings in dolphin are for full screen 1920by1080 and windowed 1280by720 and when i hit alt+enter sometimes i can`t see the difference between windowed minimal/maximal or full screen but at least i understand now that fractional means 1:1 full screen i guess and integral no idea at what resolution it refers ??? windowed or full screen....
ugh.....

I'm only going to explain this once since I have already explained it so many times on this forum, so PAY ATTENTION. The efb (embedded frame buffer) is where the GC/Wii GPU stores the images that it draws (the graphics processor draws images many times per second to send to your display). The native resolution is 640 x 528. In other words on the GC/Wii that is the resolution that it draws these images at. If you turn off efb scaling this is the resolution that dolphin will render the efb at. It will then take that 640 x 528 image and stretch it to fill your screen resolution (so if you selected 1920 x 1080 as your screen resolution is stretches it to 1920 x 1080 then sends a 1920 x 1080 image to your display). A 2x scale means it's rendered at double width and double height, or 1280 x 1056, 3x scale is triple width triple height so it;s rendered at 1920 x 1584. Integral selects 1x, 2x, or 3x automatically based on your resolution. If your resolution is 800 x 600 or lower it will select 1x. If your resolution is 800 x 600 or higher but lower than 1680 x 1050 it will select 2x. If your resolution is 1680 x 1050 or higher it will select 3x. Fractional scaling allows it to scale it using fractions instead of integers. So instead of scaling it 1x, 2x, 3x each way it can use a very precise scale like 2.374678657836. This allows it to scale it your exact screen resolution giving it a 1:1 ratio with your screen resolution. However because of this it no longer has an exact ratio with the native fb resolution (1x, 2x, 3x) so certain efb effects won't work properly.

The efb scale is the internal resolution. Meaning the resolution that the scene is actually rendered at.

I should also point out that the numbers I just used are for 4:3 aspect ratio games. The native efb resolution is different for 16:9 games (720 x 528 I believe? not completely sure). Dolphin maintains the native aspect ratio by scaling equally both vertically and horizontally and placing black bars on the sides or top/bottom. Unless you use force 16:9 or stretch to window which stretches the image to get rid of the black bars. Why am I telling you this? Because you have to realize that at a 1920 x 1080 resolution for example dolphin maintains the 4:3 aspect ratio with a 4:3 game, so the usable screen area without stretching is actually only 1440 x 1080 (4:3). In other words 2x scale (1280 x 1056) is slightly lower and it will be stretched slightly and 3x scale (1920 x 1584) is much much larger and it will be scaled down to your resolution. At that resolution fractional would render it at 1440 x 1080 which would be just barely higher than 2x while integral would use a 3x scale. This means fractional should perform better at that resolution.

Fractional yields the best balance between image quality and performance but may break some fb effects while integral will likely have a larger performance hit with no noticeable improvement in visual quality in exchange for proper fb effects.
(12-12-2010, 11:08 AM)NaturalViolence Wrote: [ -> ]I should also point out that the numbers I just used are for 4:3 aspect ratio games. The native efb resolution is different for 16:9 games (720 x 528 I believe? not completely sure). Dolphin maintains the native aspect ratio by scaling equally both vertically and horizontally and placing black bars on the sides or top/bottom.

fwiw, the native efb resolution is the same for NTSC and PAL; there are multiple ways for a game to handle the differences between NTSC and PAL, they all are done at the EFB->XFB copy stage though: One way is to just add borders at the top and bottom of the copied XFB, the other way is to apply scaling when copying the EFB to the XFB.
Another note: The max XFB dimensions are 640x574, i.e. the height when using PAL (720x574, NTSC uses 720x480) and the width of the EFB. The GX supports stretching on the y-scale when copying the EFB to an XFB, x-scaling (i.e. to 720) can only be performed when sending an XFB to the TV.
(just btw, not that it had anything to do with the original question)
thank you for making a sense i was frustraded since i have seen none improvement in performance by using integral or fractional display resolution i always maintain aspect ratio when i play gamecube i know it is old and it is 99% 4:3 aspect ration and wii has 16:9 in most cases the option keep default aspect ratio is perfect no need to stretch to fit not when original aspect ratio is 4:3 in most resident evil evil games even when encoding movies oar is the best choice os thank you for your time.
(12-12-2010, 11:08 AM)NaturalViolence Wrote: [ -> ]ugh.....

I'm only going to explain this once since I have already explained it so many times on this forum, so PAY ATTENTION. The efb (embedded frame buffer) is where the GC/Wii GPU stores the images that it draws (the graphics processor draws images many times per second to send to your display). The native resolution is 640 x 528. In other words on the GC/Wii that is the resolution that it draws these images at. If you turn off efb scaling this is the resolution that dolphin will render the efb at. It will then take that 640 x 528 image and stretch it to fill your screen resolution (so if you selected 1920 x 1080 as your screen resolution is stretches it to 1920 x 1080 then sends a 1920 x 1080 image to your display). A 2x scale means it's rendered at double width and double height, or 1280 x 1056, 3x scale is triple width triple height so it;s rendered at 1920 x 1584. Integral selects 1x, 2x, or 3x automatically based on your resolution. If your resolution is 800 x 600 or lower it will select 1x. If your resolution is 800 x 600 or higher but lower than 1680 x 1050 it will select 2x. If your resolution is 1680 x 1050 or higher it will select 3x. Fractional scaling allows it to scale it using fractions instead of integers. So instead of scaling it 1x, 2x, 3x each way it can use a very precise scale like 2.374678657836. This allows it to scale it your exact screen resolution giving it a 1:1 ratio with your screen resolution. However because of this it no longer has an exact ratio with the native fb resolution (1x, 2x, 3x) so certain efb effects won't work properly.

The efb scale is the internal resolution. Meaning the resolution that the scene is actually rendered at.

I should also point out that the numbers I just used are for 4:3 aspect ratio games. The native efb resolution is different for 16:9 games (720 x 528 I believe? not completely sure). Dolphin maintains the native aspect ratio by scaling equally both vertically and horizontally and placing black bars on the sides or top/bottom. Unless you use force 16:9 or stretch to window which stretches the image to get rid of the black bars. Why am I telling you this? Because you have to realize that at a 1920 x 1080 resolution for example dolphin maintains the 4:3 aspect ratio with a 4:3 game, so the usable screen area without stretching is actually only 1440 x 1080 (4:3). In other words 2x scale (1280 x 1056) is slightly lower and it will be stretched slightly and 3x scale (1920 x 1584) is much much larger and it will be scaled down to your resolution. At that resolution fractional would render it at 1440 x 1080 which would be just barely higher than 2x while integral would use a 3x scale. This means fractional should perform better at that resolution.

Fractional yields the best balance between image quality and performance but may break some fb effects while integral will likely have a larger performance hit with no noticeable improvement in visual quality in exchange for proper fb effects.

This should get sticky'd, I haven't seen it explained anywhere else.
Pages: 1 2