On Tue, Jun 12, 2012 at 8:52 PM, Gregg Tavares (社用)
<gman@google.com> wrote:
that won't work. Like I said, drawingBufferWidth and drawingBufferHeight are for the actual size. If you ask for canvas.width = 9000 and your GL can only handle 2048 you'll get 2048. At that point
canvas.width = 9000
canvas.drawingBufferWidth = 2048
If you still set gl.viewport to canvas.width you'll get the wrong results when you render.
I don't follow. You're *supposed* to call gl.viewport(0, 0, canvas.width, canvas.height); it shows that in an example right in the spec (2.3) and it's what everyone's doing. If the drawing buffer is larger (high-res displays) or smaller (limited texture sizes) than the canvas, that should only affect the backing store (drawingBufferWidth), not what you pass to gl.viewport (the size of the canvas in CSS pixels).