> Does this mean that when color correction is on, one is running the image > through colorsync? So, one could run through needless stages of color sync > (?).
It just tags the image with a colorspace so that down-stream things can correct if necessary. It doesn't convert anything, just adds metadata. > If Pixel Aligned is _NOT_ enabled, you'll also add GL filtering (unless > Native Core Image rendering is enabled) if your position is not pixel aligned > > This is what I was driving at about filtering; what happens when something > isn't aligned.... > > GL filtering? Is this literally "GL Filtering"? Yes. As in, you read pixel 0.5, 0.5. That's 0.25 * pixel(0,0) + 0.25 * pixel(0,1) + 0.25 * pixel(1,0) + 0.25 * pixel(1,1). or (pixel(0,0) + pixel(0,1) + pixel(1,0) + pixel(1,1)) / 4, if you please. So let's say pixels (0,0) and (1,1) were white(1.0), and pixels (0,1) and (1,0) were black(0.0). That's a 2x2 black and white checkerboard. The above GL filtering will proudly do the most complicated memory fetch in history (texel fetches + filtering = holy cow that's a bunch of work), and then return 0.5 (half white, half black). Unfortunately, that's assuming linear space ((1.0 + 0.0) / 2 = 0.5). Pixels in 8bit images are stored in gamma space, so you _want_ a result 178ish (~0.7 in normalized space), if I recall correctly. to do that you have to do a bunch of de-gamma+math+re-gamma steps that few people do because it's slower and more complicated. (Note: there's an sRGB gl texture format extension that might deal with this for you -- I haven't played with it enough to know if it helps). deeper textures are _supposed_ to be in linear space, but it's hit or miss as to whether or not they really are. > -- GL doesn't properly blend with respect to gamma, so you'll get brightness > shifts (not color shifts that are characteristic with color mis-correction). > The amount of this filtering is a function of how mis-aligned your billboard > is. > > Does this gamma blend problem happen when rendering to Sprite or GLSL and > grid as well (or, especially)? If you're rendering using OpenGL and gamma textures, it happens. that encompasses every possible render path in QC except for Native Core Image rendering, which does the right thing (since it works in linear space, and properly de-gamma/re-gammas its input/output).
_______________________________________________ Do not post admin requests to the list. They will be ignored. Quartzcomposer-dev mailing list (Quartzcomposer-dev@lists.apple.com) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/quartzcomposer-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com