"Politicians have actually solved some problems they created themselves. There is some hope."
- Assar Lindbeck, national-economist
More pages: 1 ... 11 ... 21 ... 31 ... 41 ... 51 ... 61 ... 71 ... 81 ... 91 ... 101 ... 111 112 113 114 115 116 117 118 119 120 121 ... 131 ... 141 ... 151 ... 161 ... 171 ... 181 ... 191 ... 201 ... 211 ... 221 ... 231 ... 241 ... 251 ... 261 ... 271 ... 281 ... 291 ... 301 ... 311 ... 321 ... 331 ... 341 ... 351 ... 361 ... 371 ... 381 ... 391 ... 401 ... 411 ... 421 ... 431 ... 438
Query FailedTomF
Sunday, March 13, 2011

Interesting! The choice of where to AA is similar to "Discontinuity Edge Overdraw" by Sander et al: http://research.microsoft.com/en-us/um/people/hoppe/ But the way you deal with it is very different.

I'm sure I remember a paper somewhere that generated a screen-space buffer of the specific places where the "smudging" needed to be done, rather than doing each line separately. So much like the "future work" you suggested of a single render of the scene, rendering pixels to one buffer, edges to another, then the smudging pass is a single pass over the whole screen. Of course I can't remember where I saw it now - my brain is old.

Why do you say you're "copying" the first pass to a texture? It's not AA, so you should just be able to render directly to the texture, no?

Tom
Sunday, March 13, 2011

Looks great! Got a higher res image to look at?

Are you using a depth-buffer for this effect?

Jarhad
Thursday, March 3, 2011

I don't know why, but I've bunched your site together with Maddox's (maddox.xmission.com). Every few months I'll be reminded of one and immediately think of the other. That's basically how I've been able to keep up with your posts over the years.

Now that you're on Twitter, I'll be able to check up on you more often. I hope you'll be making posts more frequently.

Well that's all I have to say. Have a good one,
Jarhad

Humus
Monday, February 28, 2011

sqrt[-1]: Cool stuff. I definitively have to get my hands dirty in WebGL soon.

Seven: I tried poking around a little with that, but didn't note any gains.

Seven
Sunday, February 27, 2011

And those smilies should be double-quote and close bracket... " ), not "

Seven
Sunday, February 27, 2011

Right, I should have seen that was a power of two.

One other trick that I think you haven't used yet: splitting up your initialised data segment. Using #pragma data_seg directives, put every initialised global variable in its own datasegment, like this:

#pragma data_seg(".pfd"
static PIXELFORMATDESCRIPTOR pfd=...

#pragma data_seg(".coords"
static const float g_Coords[] = ...

Then, use Crinkler /ORDERTRIES command to let it try a few thousands(*) ways to order the data segments, and pick the most compressible one.

*May be overkill, depending in how much datasegments you create.

sqrt[-1]
Saturday, February 26, 2011

It took longer than expected, but I did manage to squeeze a port of this to WebGL in 1K (using some nasty hacks that may break in future browsers)

http://dtrebilco.googlecode.com/files/WebGLMandelbrot.zip

Tested in the Chrome build 10.

Humus
Thursday, February 24, 2011

Yeah, I'm aware of those. I didn't use that flag, but did the equivalent work manually instead. All those numbers are chosen specifically because they are very compressible with most of the low bits as zero. I wrote a small piece of code to generate compressible coordinates with "interesting" visuals. Then I manually went through the whole list of a couple of hundred candidates and kept good ones and threw away not so interesting ones, and then kept going until I had a few favorites left and got under 1024 bytes.

As for 1.0f/8192.0f, that's actually a very compressible number (0x39000000).

More pages: 1 ... 11 ... 21 ... 31 ... 41 ... 51 ... 61 ... 71 ... 81 ... 91 ... 101 ... 111 112 113 114 115 116 117 118 119 120 121 ... 131 ... 141 ... 151 ... 161 ... 171 ... 181 ... 191 ... 201 ... 211 ... 221 ... 231 ... 241 ... 251 ... 261 ... 271 ... 281 ... 291 ... 301 ... 311 ... 321 ... 331 ... 341 ... 351 ... 361 ... 371 ... 381 ... 391 ... 401 ... 411 ... 421 ... 431 ... 438