Lighthouse has a new layout. Prefer the old one? Return to the old layout, and switch back any time from the link at the top of each page.

Picking error 1281 for readPixels with MacOSX Chromium 6.0.452.0 (51117

#133

OS: MacOSX Chromium 6.0.452.0 (51117) when testing picking with http://scenejs.org/previews/scenejs-0.7.7.0/examples/basic-picking/...

Debug log:

LOG START << s0: Creating shader: 'theCanvas;;;dirsddirsddirsd;;ttf'

Picking at (464, 67)

s0: Binding pick buffer

s0: Mapping pick index to color/node: 0 => {r:0.00390625, g:0, b:1}
spheres

s0: Registering node as "picked" event listener: SID path = {spheres}

s0: Mapping pick index to color/node: 1 => {r:0.0078125, g:0, b:1}
spheres/blue-group

s0: Mapping pick index to color/node: 2 => {r:0.01171875, g:0, b:1}
spheres/blue-group/right-blue-sphere

s0: Creating shader: 'theCanvas;picking'

s0: Mapping pick index to color/node: 3 => {r:0.015625, g:0, b:1} left-
blue-sphere

s0: Mapping pick index to color/node: 4 => {r:0.01953125, g:0, b:1}
green-group

s0: Registering node as "picked" event listener: SID path = {green-
group}

s0: Mapping pick index to color/node: 5 => {r:0.0234375, g:0, b:1}
green-group/right-green-sphere

s0: Registering node as "picked" event listener: SID path = {green-
group/right-green-sphere}

s0: Mapping pick index to color/node: 6 => {r:0.02734375, g:0, b:1}
left-green-sphere

s0: Registering node as "picked" event listener: SID path = {left-
green-sphere}

s0: Mapping pick index to color/node: 7 => {r:0.03125, g:0, b:1} red-
group

s0: Mapping pick index to color/node: 8 => {r:0.03515625, g:0, b:1}
red-group/red-group-sphere

WebGL error calling readPixels on WebGL canvas context - see console
log for details

Reading pick buffer - picked pixel(464, 67) = {r:0, g:0, b:0}

Unbinding pick buffer

Finished rendering..

No nodes picked

LOG ENDS <<

uses :

function readPickBuffer() {

   var context = boundPickBuf.canvas.context;
   /// >>> THIS WILL BLOW UP with magic error 1281 for readPixels
   var pix = context.readPixels(pickX,

boundPickBuf.canvas.canvas.height - pickY, 1, 1, context.RGBA,
context.UNSIGNED_BYTE);

   if (!pix) {  //  http://asalga.wordpress.com/2010/07/14/compensating-for-webgl-readpixels-spec-changes/
       pix = new WebGLUnsignedByteArray(4);
       context.readPixels(pickX, boundPickBuf.canvas.height -

pickY, 1, 1, context.RGBA, context.UNSIGNED_BYTE, pix);

   }
   if (debugCfg.logTrace) {
       SceneJS._loggingModule.info("Reading pick buffer - picked

pixel(" + pickX + ", " + pickY + ") = {r:" + pix[0] + ", g:" + pix[1]
+ ", b:" + pix[2] + "}");

   }
   pickedNodeIndex = (pix[0] + pix[1] * 256) - 1;

}

Reported by lindsay.kay (at xeolabs) · August 4th, 2010 @ 06:01 AM

State: resolved
Milestone: V0.7.7

Activity

  1. rcoenen
    rcoenen

    I am getting:

    Chromium 7.0.509.0 (57813) (MaxOSX)
    Log
    s0: Creating shader: 'theCanvas;;;dirsddirsddirsd;;ttf'
    s0: Creating shader: 'theCanvas;picking'

    javascript:
    SceneJS V0.7.8 initialised
    /previews/scenejs-0.7.7.0/lib/scenejs.js:4644 SceneJS.Scene binding to canvas 'theCanvas' /previews/scenejs-0.7.7.0/lib/scenejs.js:4644 SceneJS.Scene logging to element with ID 'theLoggingDiv' - logging to browser console also /previews/scenejs-0.7.7.0/lib/scenejs.js:4644 Scene defined: s0 /previews/scenejs-0.7.7.0/lib/scenejs.js:4644 s0: Creating shader: 'theCanvas;;;dirsddirsddirsd;;ttf' /previews/scenejs-0.7.7.0/lib/scenejs.js:4644 s0: Creating shader: 'theCanvas;picking' /previews/scenejs-0.7.7.0/lib/scenejs.js:21146 Uncaught ReferenceError: WebGLUnsignedByteArray is not defined

    September 2nd, 2010 @ 12:33 PM

  2. rcoenen
    rcoenen

    and
    Safari (WebKit nightly, MacOSX) Version 5.0.1 (6533.17.8, r66574)

    Log
    s0: Creating shader: 'theCanvas;;;dirsddirsddirsd;;ttf'
    s0: Creating shader: 'theCanvas;picking'

    Javascript:
    scenejs.js:4644SceneJS V0.7.8 initialised
    scenejs.js:4644SceneJS.Scene binding to canvas 'theCanvas'
    scenejs.js:4644SceneJS.Scene logging to element with ID 'theLoggingDiv' - logging to browser console also
    scenejs.js:4644Scene defined: s0
    scenejs.js:4644s0: Creating shader: 'theCanvas;;;dirsddirsddirsd;;ttf'
    scenejs.js:4644s0: Creating shader: 'theCanvas;picking'
    scenejs.js:21146ReferenceError: Can't find variable: WebGLUnsignedByteArray

    September 2nd, 2010 @ 12:36 PM

  3. lindsay.kay (at xeolabs)
  4. rcoenen
    rcoenen

    Hi Linday- thanks for the reply. I have just tested your last fix (becf8ff3e94f9e0c196e) and it worked.
    The 2 picking demo's in /examples/ now run correctly.

    September 5th, 2010 @ 11:25 AM

  5. lindsay.kay (at xeolabs)
    lindsay.kay (at xeolabs)
    • State changed from open to resolved

    September 5th, 2010 @ 11:36 AM

  6. lindsay.kay (at xeolabs)

Please Sign in or create a free account to add a new ticket.

With your very own profile, you can contribute to projects, track your activity, watch tickets, receive and update tickets through your email and much more.