Softening/Melting vs Antialiasing

Started by
6 comments, last by resle 13 years, 10 months ago
Hi. An unusual question, I think:

I happen to take movies of the 3d app I am writing, now and then, mostly for debugging purpose. Such movies are obviously shrunk in size, and compressed by xvid.

What I am finding... is that I happen to like the blotched image quality a lot more than the crisp, unaltered one of the original. Example: http://www.lalista.org/pay/happy_artifacts.avi

So I wonder what would you suggest to post-process the original frame and get the same effect. I am thinking about rendering the scene on a surface that's smaller than screen size and then presenting it onscreen with bilinear filtering, but I don't think it'll be enough. In any case, it doesn't feel like something that can be accomplished by full screen antialiasing.

Hints? Suggestions?
..so we ate rare animals, we spent the night eating rare animals..
Advertisement
If you render something twice the intended size and shrink it to the intended size, you have 4x anti aliasing, because you're taking 4 samples and combine the to 1 final pixel. Each pixel will contain more information afterwards.

If you render something half the intended size and blow it up to the intended size, you're just bluring it. Each pixel will contain less information afterwards.

Quote:Original post by Rattenhirn
If you render something twice the intended size and shrink it to the intended size, you have 4x anti aliasing, because you're taking 4 samples and combine the to 1 final pixel. Each pixel will contain more information afterwards.

If you render something half the intended size and blow it up to the intended size, you're just bluring it. Each pixel will contain less information afterwards.


Yes that's exactly the idea, I need to degrade the output to mimic the quality of a xvid encoded video...
..so we ate rare animals, we spent the night eating rare animals..
Quote:Original post by resle
Yes that's exactly the idea, I need to degrade the output to mimic the quality of a xvid encoded video...


Then go with the bluring. It will have the benefit of improving your rendering performance as well, because you have to render less pixels.
It's actually possible to run image-compression algorithms similar to JPEG/MPEG on your GPU these days -- so it would indeed be possible to make a post-process effect that compresses the frame-buffer using a lossy compression technique and then decompresses it again.

Some google results here
Awesome readings Hodgman! Looks like it would be quite a hefty performance hit, though. I was hoping to simulate it rather than actually compress/decompress.

Funny how trying to corrupt data willingly is harder than getting it corrupted "the right way" :|
..so we ate rare animals, we spent the night eating rare animals..
Also, if you're going to go for the blur method, there's some tricks you can do to change what that the up-scaling (bilinear filtering) looks like.
Quote:Original post by Hodgman
Also, if you're going to go for the blur method, there's some tricks you can do to change what that the up-scaling (bilinear filtering) looks like.


More great readings, thanks a lot.
I think indeed this is the way: going for a simple blur but fiddling with interpolation, perhaps adding some constant form of per-block (NxN texels) noise.
..so we ate rare animals, we spent the night eating rare animals..

This topic is closed to new replies.

Advertisement