CI will divide images into tiles to suit the capabilities of the machine.

I'm thinking it's more arbitrary/conservative -- the GMA950 is comfortable with images up to 2048x2048, but it subdivides them anyway (at unusual locations, no less). I'm sure it's trying to do the right thing, but it appears to be more limited than the capabilities alone.

If your kernel samples beyond the current pixel (samplerCoord()), you need to supply an ROI (region of interest) function to tell it the area you will sample from for any subdivision. The CI documentation goes into some detail on this, with examples. In your case, you need to return the region passed in to the ROI function expanded by 'scale' pixels each way.


I added this ROI function:
function myROIFunction(samplerIndex, dstRect, info)
{
        dstRect[0] -= info*1;
        dstRect[1] -= info*1;
        dstRect[2] += info*2;
        dstRect[3] += info*2;
        return dstRect;
}

(info is scale in the apply function call)

however, I still get occasional seams when the viewer is sized at various sizes.

If I expand it a bit more (by *4 / *8 in place of *1 / *2, for example) it seems ok. why does it need to be enlarged so much? (honestly curious)

(great note by Alessandro by the way -- completely forgot ROI since the texture sizes weren't in excess of hardware limits -- thanks for reminding us (or just me, at least :))

--
[ christopher wright ]
[email protected]
http://kineme.net/

Attachment: smime.p7s
Description: S/MIME cryptographic signature

 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Quartzcomposer-dev mailing list      ([email protected])
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/quartzcomposer-dev/archive%40mail-archive.com

This email sent to [email protected]

Reply via email to