Skip to content

Crash during rendering of point cloud with batch table #11166

@runaas

Description

@runaas

Cesium crashes in rendering of a point cloud file with batch table. If I use a .pnts file generated from the same data without point attributes (and no batch_table) it works without problems. The tileset has been testet with the 3d-tiles-validator without problems, and there are no issues during loading.

Cesium 1.96 didn't crash, but I was unable to extract point attributes, so something was not fully corrct. All versions from v 1.98 crashes (I've not tested 1.97...)

In the Unminified build of v 1.103 the crash happens here because of an undefined feature table:

BatchTexturePipelineStage.process@http://norgei3d.no/Cesium/Current/Build/CesiumUnminified/index.js:88762:26
ModelSceneGraph.prototype.buildDrawCommands@http://norgei3d.no/Cesium/Current/Build/CesiumUnminified/index.js:93454:32
buildDrawCommands@http://norgei3d.no/Cesium/Current/Build/CesiumUnminified/index.js:96083:23
Model.prototype.update@http://norgei3d.no/Cesium/Current/Build/CesiumUnminified/index.js:95960:20
Model3DTileContent.prototype.update@http://norgei3d.no/Cesium/Current/Build/CesiumUnminified/index.js:96812:9
Cesium3DTile.prototype.process@http://norgei3d.no/Cesium/Current/Build/CesiumUnminified/index.js:114825:17
processTiles@http://norgei3d.no/Cesium/Current/Build/CesiumUnminified/index.js:117608:14
Cesium3DTileset.prototype.prePassesUpdate@http://norgei3d.no/Cesium/Current/Build/CesiumUnminified/index.js:117498:15
PrimitiveCollection.prototype.prePassesUpdate@http://norgei3d.no/Cesium/Current/Build/CesiumUnminified/index.js:134434:17
prePassesUpdate@http://norgei3d.no/Cesium/Current/Build/CesiumUnminified/index.js:209512:14
tryAndCatchError@http://norgei3d.no/Cesium/Current/Build/CesiumUnminified/index.js:209585:22
Scene4.prototype.render@http://norgei3d.no/Cesium/Current/Build/CesiumUnminified/index.js:209624:19
CesiumWidget.prototype.render@http://norgei3d.no/Cesium/Current/Build/CesiumUnminified/index.js:210969:17
render2@http://norgei3d.no/Cesium/Current/Build/CesiumUnminified/index.js:210412:18
FrameRequestCallbackrender2@http://norgei3d.no/Cesium/Current/Build/CesiumUnminified/index.js:210413:32
FrameRequestCallback
render2@http://norgei3d.no/Cesium/Current/Build/CesiumUnminified/index.js:210413:32
FrameRequestCallbackrender2@http://norgei3d.no/Cesium/Current/Build/CesiumUnminified/index.js:210413:32
FrameRequestCallback
render2@http://norgei3d.no/Cesium/Current/Build/CesiumUnminified/index.js:210413:32
FrameRequestCallbackrender2@http://norgei3d.no/Cesium/Current/Build/CesiumUnminified/index.js:210413:32
FrameRequestCallback
render2@http://norgei3d.no/Cesium/Current/Build/CesiumUnminified/index.js:210413:32
FrameRequestCallbackrender2@http://norgei3d.no/Cesium/Current/Build/CesiumUnminified/index.js:210413:32
FrameRequestCallback
startRenderLoop@http://norgei3d.no/Cesium/Current/Build/CesiumUnminified/index.js:210436:24
set@http://norgei3d.no/Cesium/Current/Build/CesiumUnminified/index.js:210808:26
CesiumWidget@http://norgei3d.no/Cesium/Current/Build/CesiumUnminified/index.js:210616:33
Viewer@http://norgei3d.no/Cesium/Current/Build/CesiumUnminified/index.js:244618:24

Example that should crash almost immediately:
http://norgei3d.no/Cesium/Current/Apps/HelloBug.html

Browser:
Tested on Firefox, Chrome and Edge

Operating System:
Only tested on Windows

I'm really not sure if there is something wrong with my .pnts implementation or with Cesium, but if the error is mine it should still give an error message in the validator, and the Cesium crash should rather happen in the file loading process than in rendering.

I have tried to track down the bug, but debugging in the 200k+ line unminified js is not easy and the data path from loading to rendering is rather convoluted...

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions