Thanks you both for all this.@Circular, you will include a blur demo in bgrabitmap or maybe somewhere in another repository?
@simin_sh: What I am suggesting is to use weight = 1/(2*range+1)That would give a box blur as a result.Otherwise you can try to create the framebuffers only once, or recreate them only if the size has changed. And free them when the form is closed.About the time begin 0 or 15 ms, that's normal because the grain of time is equal to 15 ms. To have more precision, you could use EpikTimer, or do the same thing 10 times and then divide the time by 10.
I've added BGLCanvas.GetImage. It returns a TBGRABitmap object that you can save.
Maybe the parameter with the projection matrix does not work. If the width and height are equal, do you still have the problem?