Canvas rendering changes between Safari and Nightlies
I am using a canvas to render images at a perspective on my site by rendering each line of pixels at a different scale. The canvas object is all the icons that appear at the top of the page in the grey bar. In Safari (3.1 and below), everything renders quickly and looks normal, but in recent Nightly builds, rendering time is significantly increased and rendering looks very bizarre. I think it has something to do with drawing and scaling images using transforming methods, but I'm not sure, and was wondering If someone could take a look at it so I can locate the issue and either file a bug of fix my own code. Site: http://appkainime.bouniol.homeip.net/ Javascript: http://appkainime.bouniol.homeip.net/js/master.js Methods of interest: - drawAppFlow() Calls drawInContextWithPerspectiveAndArg several times at different positions with each image to be drawn at a perspective. - drawInContextWithPerspectiveAndArg(drawFunction, ctx, x, y, z, width, height, arg) Draws the drawFunction(ctx, arg) in the context ctx using the one- point perspective at (x, y, z), by calling drawFunction(ctx, arg) for every vertical pixel line, then clip, scale, and apply shading to the result accordingly so a perspective is acheived. drawFunction is always drawImage(ctx, image) arg is an Image object to be passed to drawImage - drawImage(ctx, image) Draws the image in the context ctx with a shadow, or if the image is not yet loaded, draws a grey box instead. Hope someone could help me find the issue for this. -- 定魅刀利 Dimitri Bouniol dimitri008@mac.com http://web.mac.com/dimitri008/
Without the full source, or a reduced test case it's we can't see what the bug is, so merely looking at code won't help. Rather than using this list to report the bug though, I'd encourage you to file a bug at http://bugs.webkit.org as that means the report won't be lost, and many people will be able to look at it and work out what is happening. --Oliver On Mar 29, 2008, at 12:47 PM, Dimitri Bouniol wrote:
I am using a canvas to render images at a perspective on my site by rendering each line of pixels at a different scale. The canvas object is all the icons that appear at the top of the page in the grey bar. In Safari (3.1 and below), everything renders quickly and looks normal, but in recent Nightly builds, rendering time is significantly increased and rendering looks very bizarre. I think it has something to do with drawing and scaling images using transforming methods, but I'm not sure, and was wondering If someone could take a look at it so I can locate the issue and either file a bug of fix my own code.
Site: http://appkainime.bouniol.homeip.net/ Javascript: http://appkainime.bouniol.homeip.net/js/master.js
Methods of interest:
- drawAppFlow() Calls drawInContextWithPerspectiveAndArg several times at different positions with each image to be drawn at a perspective.
- drawInContextWithPerspectiveAndArg(drawFunction, ctx, x, y, z, width, height, arg) Draws the drawFunction(ctx, arg) in the context ctx using the one- point perspective at (x, y, z), by calling drawFunction(ctx, arg) for every vertical pixel line, then clip, scale, and apply shading to the result accordingly so a perspective is acheived. drawFunction is always drawImage(ctx, image) arg is an Image object to be passed to drawImage
- drawImage(ctx, image) Draws the image in the context ctx with a shadow, or if the image is not yet loaded, draws a grey box instead.
Hope someone could help me find the issue for this. -- 定魅刀利 Dimitri Bouniol dimitri008@mac.com http://web.mac.com/dimitri008/
_______________________________________________ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-dev
Will do so - just wasn't sure if I had enough information pertaining to what might be causing it. Bug posted at http://bugs.webkit.org/show_bug.cgi?id=6745 Test case will be posted there as well once I make one. On Mar 29, 2008, at 3:58 PM, Oliver Hunt wrote:
Without the full source, or a reduced test case it's we can't see what the bug is, so merely looking at code won't help.
Rather than using this list to report the bug though, I'd encourage you to file a bug at http://bugs.webkit.org as that means the report won't be lost, and many people will be able to look at it and work out what is happening.
--Oliver
On Mar 29, 2008, at 12:47 PM, Dimitri Bouniol wrote:
I am using a canvas to render images at a perspective on my site by rendering each line of pixels at a different scale. The canvas object is all the icons that appear at the top of the page in the grey bar. In Safari (3.1 and below), everything renders quickly and looks normal, but in recent Nightly builds, rendering time is significantly increased and rendering looks very bizarre. I think it has something to do with drawing and scaling images using transforming methods, but I'm not sure, and was wondering If someone could take a look at it so I can locate the issue and either file a bug of fix my own code.
Site: http://appkainime.bouniol.homeip.net/ Javascript: http://appkainime.bouniol.homeip.net/js/master.js
Methods of interest:
- drawAppFlow() Calls drawInContextWithPerspectiveAndArg several times at different positions with each image to be drawn at a perspective.
- drawInContextWithPerspectiveAndArg(drawFunction, ctx, x, y, z, width, height, arg) Draws the drawFunction(ctx, arg) in the context ctx using the one- point perspective at (x, y, z), by calling drawFunction(ctx, arg) for every vertical pixel line, then clip, scale, and apply shading to the result accordingly so a perspective is acheived. drawFunction is always drawImage(ctx, image) arg is an Image object to be passed to drawImage
- drawImage(ctx, image) Draws the image in the context ctx with a shadow, or if the image is not yet loaded, draws a grey box instead.
Hope someone could help me find the issue for this.
-- 定魅刀利 Dimitri Bouniol dimitri008@mac.com http://web.mac.com/dimitri008/
http://bugs.webkit.org/show_bug.cgi?id=18212 copy pasted too quickly without looking at the link - sorry On Mar 29, 2008, at 6:07 PM, Dimitri Bouniol wrote:
Will do so - just wasn't sure if I had enough information pertaining to what might be causing it. Bug posted at http://bugs.webkit.org/show_bug.cgi?id=6745 Test case will be posted there as well once I make one.
-- 定魅刀利 Dimitri Bouniol dimitri008@mac.com http://web.mac.com/dimitri008/
participants (2)
-
Dimitri Bouniol
-
Oliver Hunt