Rendering crash

384 views
Skip to first unread message

Scott Haynes

unread,
May 30, 2017, 11:56:56 AM5/30/17
to cesium-dev
We're getting the following when loading some imagery after cesium is intialized.  We have a couple of different sets of imagery, so we load the imagery once the user selects which map to view.  If you zoom in and out just after loading the map then the following will occur on occasion.  We're also getting alot of the following errors, but we've been getting these for the length of the project.

GET http://<ip>:8081/default/smerc/2/2/3.jop 404 (Not Found)
Cesium.js:428 An error occurred in "_": Failed to obtain image tile X: 3 Y: 2 Level: 2.


Cesium.js:477 An error occurred while rendering. Rendering has stopped. undefined TypeError: Cannot read property '_target' of undefined TypeError: Cannot read property '_target' of undefined at f.set (http://localhost:8080/dbst/js/cesium/Cesium.js:439:17853) at c._setUniforms (http://localhost:8080/dbst/js/cesium/Cesium.js:439:25512) at k (http://localhost:8080/dbst/js/cesium/Cesium.js:460:25142) at L.draw (http://localhost:8080/dbst/js/cesium/Cesium.js:460:28452) at n.execute (http://localhost:8080/dbst/js/cesium/Cesium.js:438:27270) at xe (http://localhost:8080/dbst/js/cesium/Cesium.js:471:27129) at Ie (http://localhost:8080/dbst/js/cesium/Cesium.js:471:30195) at Ve (http://localhost:8080/dbst/js/cesium/Cesium.js:472:3011) at Be (http://localhost:8080/dbst/js/cesium/Cesium.js:472:930) at qe (http://localhost:8080/dbst/js/cesium/Cesium.js:472:7008)

Is there place to debug to see why this is occurring?
Scott

Scott Haynes

unread,
May 31, 2017, 9:10:16 PM5/31/17
to cesium-dev
First of all, this issue is a real show stopper.  I don't think we're doing anything outside of the norm, and it's pretty easy to get Cesium to stop rendering.  Unfortunately, I can't really share our imagery, but I'm trying to find a way to build a sandcastle app to show the problem.

Cesium v28 on windows with multiple configurations.

Here is what I have done so far:   

I changed:

    UniformSampler.prototype.set = function() {
        var v = this.value; 
        if ( v !== undefined ) {
            var gl = this._gl;
            gl.activeTexture(gl.TEXTURE0 + this.textureUnitIndex);
              
            gl.bindTexture(v._target, v._texture);
        } else {
            console.info( "ERROR: UniformSampler value is undefined" )
        }
    };
 
And I got this(so I'm thinking that I'm on to something):


Cesium.js:176314 An error occurred while rendering. Rendering has stopped. undefined DeveloperError: readyImagery is not actually ready! Error at new DeveloperError (http://localhost:8080/dbst/js/cesium/Cesium.js:1327:19) at addDrawCommandsForTile (http://localhost:8080/dbst/js/cesium/Cesium.js:152610:27) at GlobeSurfaceTileProvider.endUpdate (http://localhost:8080/dbst/js/cesium/Cesium.js:151910:17) at QuadtreePrimitive.update (http://localhost:8080/dbst/js/cesium/Cesium.js:154180:32) at Globe.update (http://localhost:8080/dbst/js/cesium/Cesium.js:155229:21) at updatePrimitives (http://localhost:8080/dbst/js/cesium/Cesium.js:167300:26) at executeCommandsInViewport (http://localhost:8080/dbst/js/cesium/Cesium.js:167205:9) at updateAndExecuteCommands (http://localhost:8080/dbst/js/cesium/Cesium.js:167073:17) at render (http://localhost:8080/dbst/js/cesium/Cesium.js:167503:9) at Scene.render (http://localhost:8080/dbst/js/cesium/Cesium.js:167541:13)

Any help would be greatly appreciated.  

Thanks,
Scott 

Scott Haynes

unread,
May 31, 2017, 9:43:48 PM5/31/17
to cesium-dev
Another edit:
    UniformSampler.prototype.set = function() {
        var gl = this._gl;
        gl.activeTexture(gl.TEXTURE0 + this.textureUnitIndex);

        var v = this.value;
        v && gl.bindTexture(v._target, v._texture);
    };


Results:

Cesium.js:25661 Uncaught DeveloperError {name: "DeveloperError", message: "This object was destroyed, i.e., destroy() was called.", stack: "Error↵    at new DeveloperError (http://localhost:…localhost:8080/dbst/js/cesium/Cesium.js:167680:9)"}
throwOnDestroyed @ Cesium.js:25661
continueDraw @ Cesium.js:135862
Context.draw @ Cesium.js:135899
DrawCommand.execute @ Cesium.js:70463
executeCommand @ Cesium.js:166601
executeCommands @ Cesium.js:166842
executeCommandsInViewport @ Cesium.js:167210
updateAndExecuteCommands @ Cesium.js:167069
Scene.pick @ Cesium.js:167680
Scene.drillPick @ Cesium.js:167793
pick @ cesiumearth.js:4565
(anonymous) @ cesiumearth.js:4915
handleMouseMove @ Cesium.js:59017
handlePointerMove @ Cesium.js:59413
listener @ Cesium.js:58832
Cesium.js:25661 Uncaught DeveloperError {name: "DeveloperError", message: "This object was destroyed, i.e., destroy() was called.", stack: "Error↵    at new DeveloperError (http://localhost:…localhost:8080/dbst/js/cesium/Cesium.js:167680:9)"}
throwOnDestroyed @ Cesium.js:25661
continueDraw @ Cesium.js:135862
Context.draw @ Cesium.js:135899
DrawCommand.execute @ Cesium.js:70463
executeCommand @ Cesium.js:166601
executeCommands @ Cesium.js:166842
executeCommandsInViewport @ Cesium.js:167210
updateAndExecuteCommands @ Cesium.js:167069
Scene.pick @ Cesium.js:167680
Scene.drillPick @ Cesium.js:167793
pick @ cesiumearth.js:4565
(anonymous) @ cesiumearth.js:4915
handleMouseMove @ Cesium.js:59017
handlePointerMove @ Cesium.js:59413
listener @ Cesium.js:58832
Cesium.js:25661 Uncaught DeveloperError {name: "DeveloperError", message: "This object was destroyed, i.e., destroy() was called.", stack: "Error↵    at new DeveloperError (http://localhost:…localhost:8080/dbst/js/cesium/Cesium.js:167680:9)"}
throwOnDestroyed @ Cesium.js:25661
continueDraw @ Cesium.js:135862
Context.draw @ Cesium.js:135899
DrawCommand.execute @ Cesium.js:70463
executeCommand @ Cesium.js:166601
executeCommands @ Cesium.js:166842
executeCommandsInViewport @ Cesium.js:167210
updateAndExecuteCommands @ Cesium.js:167069
Scene.pick @ Cesium.js:167680
Scene.drillPick @ Cesium.js:167793
pick @ cesiumearth.js:4565
(anonymous) @ cesiumearth.js:4915
handleMouseMove @ Cesium.js:59017
handlePointerMove @ Cesium.js:59413
listener @ Cesium.js:58832
Cesium.js:25661 Uncaught DeveloperError {name: "DeveloperError", message: "This object was destroyed, i.e., destroy() was called.", stack: "Error↵    at new DeveloperError (http://localhost:…localhost:8080/dbst/js/cesium/Cesium.js:167680:9)"}

Scott Haynes

unread,
May 31, 2017, 9:49:33 PM5/31/17
to cesium-dev


On Wednesday, May 31, 2017 at 9:43:48 PM UTC-4, Scott Haynes wrote:
Another edit:
    UniformSampler.prototype.set = function() {
        var gl = this._gl;
        gl.activeTexture(gl.TEXTURE0 + this.textureUnitIndex);

        var v = this.value;
        v && gl.bindTexture(v._target, v._texture);
    };

Opps!  Left out this part, same error as above though.

Cesium.js:176310 An error occurred while rendering. Rendering has stopped. undefined DeveloperError: readyImagery is not actually ready! Error at new DeveloperError (http://localhost:8080/dbst/js/cesium/Cesium.js:1327:19) at addDrawCommandsForTile (http://localhost:8080/dbst/js/cesium/Cesium.js:152606:27) at GlobeSurfaceTileProvider.endUpdate (http://localhost:8080/dbst/js/cesium/Cesium.js:151906:17) at QuadtreePrimitive.update (http://localhost:8080/dbst/js/cesium/Cesium.js:154176:32) at Globe.update (http://localhost:8080/dbst/js/cesium/Cesium.js:155225:21) at updatePrimitives (http://localhost:8080/dbst/js/cesium/Cesium.js:167296:26) at executeCommandsInViewport (http://localhost:8080/dbst/js/cesium/Cesium.js:167201:9) at updateAndExecuteCommands (http://localhost:8080/dbst/js/cesium/Cesium.js:167069:17) at render (http://localhost:8080/dbst/js/cesium/Cesium.js:167499:9) at Scene.render (http://localhost:8080/dbst/js/cesium/Cesium.js:167537:13)

Scott Haynes

unread,
Jun 1, 2017, 2:21:10 PM6/1/17
to cesium-dev

Matthew Amato

unread,
Jun 1, 2017, 4:24:11 PM6/1/17
to cesiu...@googlegroups.com
By "v28" Do you mean b28 or 1.28.0?  (I assume the latter).  We fixed an issue that could be the source of this just a couple of months ago: https://github.com/AnalyticalGraphicsInc/cesium/issues/4777 (and the PR https://github.com/AnalyticalGraphicsInc/cesium/pull/4811 ) .  

I would recommend upgrading out 1.34 (which we just released today) to see if the issue still presents itself.

Sorry I don't have a better answer for you, but it's hard to provide more guidance here without being able to reproduce it on our end.  I'm actually kind of optimistic that upgrading Cesium will fix the issue though.





--
You received this message because you are subscribed to the Google Groups "cesium-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cesium-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Scott Haynes

unread,
Jun 1, 2017, 6:19:10 PM6/1/17
to cesium-dev
1.34 does in fact appear to fix the problem!  Thanks, Scott 
To unsubscribe from this group and stop receiving emails from it, send an email to cesium-dev+...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages