iTowns / itowns

A Three.js-based framework written in Javascript/WebGL for visualizing 3D geospatial data
http://www.itowns-project.org
Other
1.11k stars 302 forks source link

Problem displaying 3D tiles from Obj2Tiles. #2239

Open vladimir-rybalko opened 11 months ago

vladimir-rybalko commented 11 months ago

Your Environment

Context

Hello! Thank you for your great work! I have a display problem 3D tiles. I'm creating 3D tiles using Obj2Tiles. When trying to display them in iTowns, an error occurs. If I load these 3D tiles into Cesium, they display normally. Here is an example display.

Here's an example of my problem.

What could be the problem with preparing my data?

mgermerie commented 11 months ago

Hi ! Thanks for your feedback.

There is an network error (ERR_TUNNEL_CONNECTION_FAILED) when fetching your 3d tiles from the url you set in your iTowns example. You can check this by trying to access https://storage.yandexcloud.net/geotiff/model/tileset.json. The model loaded on Cesium does not come from the same server (it appears to use Cesium Ion), so this could explain why it is visible on Cesium and not in iTowns.

You could try to use a C3DTilesIonSource to visualize the data stored on Cesium Ion within iTowns (see this example).

vladimir-rybalko commented 11 months ago

Hi ! Thanks for your feedback.

There is an network error (ERR_TUNNEL_CONNECTION_FAILED) when fetching your 3d tiles from the url you set in your iTowns example. You can check this by trying to access https://storage.yandexcloud.net/geotiff/model/tileset.json. The model loaded on Cesium does not come from the same server (it appears to use Cesium Ion), so this could explain why it is visible on Cesium and not in iTowns.

You could try to use a C3DTilesIonSource to visualize the data stored on Cesium Ion within iTowns (see this example).

Thanks for the quick response!

The network error (ERR_TUNNEL_CONNECTION_FAILED) is related to the CORS on the bucket, I corrected this problem. You can check it. I also rewrote the example to use a Сesium ion source in your example. I receive a JSON file from ION, but iTowns does not load the 3D tiles.

mgermerie commented 11 months ago

Thanks for the example update.

I took a look at it, and added the following line at its end (to get debug menu on C3DTilesLayer) :

debug.create3dTilesDebugUI(debugMenu.gui, view, threeDTilesIonLayer);   

When setting the sseThreshold parameter to 0 within debug menu, the dataset becomes visible.

Capture d’écran du 2023-12-13 15-03-19

We might have an issue with sse computing (perhaps also related to #1987 ?) that should be fixed. We'll take a look at it.