Dolphin, the GameCube and Wii emulator - Forums

Full Version: Custom D3D Version with massive performance boost and a lot of rendering fixes
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
(06-17-2014, 05:36 AM)JMC47 Wrote: [ -> ]I was slightly wrong, D3D has always had the bug in EFB2RAM. 1x IR is correct on both backends, 4x IR on OGL with EFB2Ram set is also correct. 4x IR in D3D and 4x IR in OGL in EFB2Texture are glitched. D3D has no differences between EFB2Ram and EFB2Texture.

D3D 4x IR - https://dl.dropboxusercontent.com/u/484730/D3D4xIR.png
D3D 1x IR - https://dl.dropboxusercontent.com/u/484730/D3D1xIR.png
OGL 4x IR EFB2RAM - https://dl.dropboxusercontent.com/u/484730/OGL4xIR%20EFB2Ram.png
OGL 4x IR EFB2TEX - https://dl.dropboxusercontent.com/u/484730/OGL4xIR%20EFB2Tex.png

GL bug spotted Smile

I think you took it the wrong way. To start with, the game is doing a bloom pass running on a dozen of steps ( render blooming elements in white on black, efb copy scaled by half, quarter res quad with several blend/blur in place, efb copy scaled by half means 1/8 target, 1/8 quad blit then in place blend and blur, efbcopy, merge the 1/8 and 1/4 version into an 1/4 res, efbcopy and finaly restore the frame blended to the bloom ).

It is possible that some passes suffers more from a scaled IR with the offsets use in the texture fetches and it may even be possible that we have issues with rasterisation/texels centers, but if you look closely, the supposed good efb2ram GL version have a bloom resolution similar to the 1xIR. That means that the EFB2RAM GL build have a bug that prevent it to use the 4xIR efbcopy texture and upload it instead from ram, dropping the extra resolution at the same time. That effect is clearly GPU only and there is a 0% chance that the cpu is touching the memory here.

GL bug spotted Smile
There are a lot of games that have trouble with upscaling when using efb to RAM. Despicable me, De blob 1 and 2, etc.
Ah, I should have figured it was an OpenGL bug. I really hate bloom errors, but this one is nowhere near as annoying as bloom offset, and turning off scaled EFB works well enough for avoiding it. Thanks for the explanation!
By turning off scaled efb copy you lose the hires picture that's not a good solution.

Technicaly speaking, that's not bloom bugs but undersampling artifacts. imagine you wants a horizontal blur that spread over 1% of the width. at 640px, it means you need to average 6.4px, it is honest to do 4 texture tap as a good aproximation. But at 2560px, the same range cover 25px and 4 tap are not a good approximation anymore Sad

On pc, a game will adjust the tap count and location in regards to the resolution to have the effect resolution independent, but on a fixed res wii, the effect is only tweaked to look good on it.
That's unfortunate. Thanks for the good explanation.
Was he just explaining Dolphin's old issue with bloom and did he say something like "it cannot be fixed"? :/

http://www.directupload.net/file/d/3607/ee8w75wx_png.htm
I think he was talking about the non-bloom bug that I was showing.
Oh, dang it... all this mumbo jumbo wizard talk ^^
Looks interesting. But whatr about DX10 support?
(06-17-2014, 10:56 PM)CyberMan Wrote: [ -> ]Looks interesting. But whatr about DX10 support?

The DX10 support will be back when the texture cache will be cleaned up to toggle different texture decoder properly. D3D10 is more limited on the compute things, but the decoder is still possible, may be a less efficiently ( it would bit easy the cpu decoder anyway ) and a little trickier to write.
Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39