After the recently added I3DM support in Cesium for Unreal that works great, I tried it out in Cesium for Unity as well. It seems to be half way there but in the example below it has some different flaws compared to the problems that were recently solved in Cesium for Unreal (see I3dm transformation and textures).
Here is the 3D Tiles dataset:
There seems to be much fewer trees (perhaps one per type) and they are incorrectly transformed. Maybe this is a known issue? Anyway, I hope this small example will help you find and fix the problem.
Hi @AndreasRemograph,
Thanks for the test data! Cesium for Unity doesn’t support i3dm / instancing yet, though we’re planning to add it soon. Keep an eye on this issue:
Oh, I misunderstood and thought it was supposed to work when I saw the single trees in there. Still strange that they are visible at all actually, maybe some attempt to read i3dm is made after all?
Anyway, it would be great to see i3dm support in Unity soon, in the same way as in Unreal and now that it’s available in native. Keeping an eye on the issue linked, thank you.
When we added instancing support in Cesium for Unreal, we modified cesium-native to convert i3dm-format tiles to a glTF with the EXT_mesh_gpu_instancing extension. Cesium for Unity won’t understand the instancing extension, so it will just render the glTF itself, which will likely be a single tree. So you’re right that the trees you’re seeing are a sign of progress, but it’s not working just yet.