Pushing AA / Supersampling

Eorzea Time
 
 
 
言語: JP EN FR DE
日本語版のFFXIVPRO利用したい場合は、上記の"JP"を設定して、又はjp.ffxivpro.comを直接に利用してもいいです
users online
フォーラム » Windower » Support » Pushing AA / Supersampling
Pushing AA / Supersampling
Offline
Posts: 801
By Crevox 2014-11-13 09:21:01  
So, I was messing around with this stuff.

Supersampling in Windower does a 2x supersample. From what I've seen, there doesn't seem to be any way to increase this. Modifying the file itself seems to make it ignore it/default it, and trying to change the registry doesn't work because Windower (or FFXI?) puts it back to how it was. Any way to do this?

Beyond that...

People were running the game on 32xS through nvidia inspector, 0x00411245 compatibility bit, 8x SGSSAA. This lagged a bit for me on my 970, and also introduced artifacts on the text, so I decided to just abuse this compatibility bit to run the game at 4x4 OGSSAA. However, I can't be sure this is working optimally on this compatibility bit (or better than if Windower could push further), and if a -2.0 LOD bias is sufficient.

Does anyone have any experience with this for FFXI? Is there a way to push FFXI's supersampling further so I don't have to bother with this? Is this better than that? What works and doesn't work? Any personal experiences/information would be helpful.
 Leviathan.Comeatmebro
Offline
サーバ: Leviathan
Game: FFXI
user: Rairin
Posts: 6052
By Leviathan.Comeatmebro 2014-11-13 10:18:55  
the registry is overwritten when you open POL, it's read when you fullscreen, unless anything's changed you can modify the registry after windower launches POL but before you click play to fullscreen

it caps at 2048x2048 though, as far as i know
VIP
Offline
Posts: 111
By Iryoku 2014-11-13 12:10:40  
Windower is capped at 4x supersampling for a very good reason. (Just to be clear, the multiplier you see in the settings.xml file is applied in both the X and Y direction, so 2x is really 2 * 2 = 4x; I'm planning to fix this discrepancy eventually.) We don't use any kind of driver trickery to do it; we just modify the game's settings and let the game's built-in bilinear texture sampling do the rest. The problem is, bilinear sampling will only interpolate between the four texels nearest the sample point.

With 4x the sample points lie exactly on the corners of four texels, and every texel contributes to exactly one quarter of every pixel in the final image. Now consider 9x (3 * 3), each sample will lie exactly in the middle of a 3x3 grid of texels, only the center texel will be used in the final image and the other eight won't contribute at all, so 9x looks exactly the same as 1x, but costs nine times as much to render. In addition, all of the values between 4x and 9x will cause moiré artifacts as each texel contributes different amounts to each pixel in the final image.

If you move up to 16x (4 * 4), things will improve slightly. Now, the sample point is in the center of a 4x4 grid, and the center 4 texels will all be blended together in equal amounts. You will get some anti-aliasing, but because you've thrown out twelve texels and only used four, it will look quite a bit worse than 4x did.

Things only get worse as you move up from here, at the odd intervals you will get no AA at all, and at even intervals the AA gets progressively worse as you throw more and more of the image away.

Also, I would like to point out that this kind of anti-aliasing is very sub-optimal. For better visual quality, the sampling grid really shouldn't be aligned with the pixel grid, but we can't change that in Windower. Also, supersampling is a very expensive way to do anti-aliasing; other techniques such as MSAA, FXAA, MLAA, or SMAA can produce results as good, or better, for a fraction of the performance cost, but Windower can't use these.

TL;DR: 4x (labeled 2x in the Windower launcher's settings.xml file) is the best you can get by modifying the game's settings. To get anything better is going to require driver configuration, which is outside the scope of Windower.