Point Cloud Tile Issue

1. A concise explanation of the problem you're experiencing.

Failure to render point cloud data within "some" tiles.

2. A minimal code example. If you've found a bug, this helps us reproduce and repair it.

Two example tiles and related PNTS files: http://pc.cd/DAe

3. Context. Why do you need to do this? We might know a better way to accomplish your goal.

To render a point cloud from our server within Cesium

4. The Cesium version you're using, your operating system and browser.

1.43, Windows 10, Chrome 64 bit.

I'll try to clarify our issue as best I can. We've started to implement 3D Tiles support in our point cloud server so that people can view the data within Cesium. However some tiles do not get rendered at all. The data is successfully sent to Cesium but for some reason it doesn't get "selected" and rendered.

The odd bit is that the sample data provided in the link above is the same, expect one tile has 2975 points the other has 99 points. The 99 points example renders fine.. the 2975 points does not render anything. If we increase from 99 points to 100 it stops rendering. However it varies from tile to tile whether it will render or not and the 100 limit is not a constant barrier.

We've checked and double checked all the numbers and really are drawing a blank. I'm sure it's something obvious but it all appears to verify correctly and Cesium throws no errors so I'm not sure what to try next!

Any advice would be greatly appreciated.

Many Thanks


Hi Mark,

You’re running into a byte alignment issue. When loading the second tileset the console prints:

A 3D tile failed to load: http://localhost:8080/Apps/SampleData/test/tileset/tile_data_2975?v=0.0

Error: start offset of Float32Array should be a multiple of 4

Basically the feature table itself and each property in it needs to be byte aligned to its data type.

There is an implementation note that is slightly hard to discover, but it describes the rules in more detail: https://github.com/AnalyticalGraphicsInc/3d-tiles/tree/master/TileFormats/FeatureTable#implementation-notes.

We plan on making byte alignment rules more prominent before finishing up the 1.0 spec: https://github.com/AnalyticalGraphicsInc/3d-tiles/issues/225


Naturally you were spot on!

I had a hunch it would be something like that but I hadn’t seen that footnote! Yes I think it does need to be more prominent in the final spec!

Either way we’re up and running now… will show what we’ve got once I’ve got a public URL to share.

Many Thanks


Cool, I’m looking forward to it.