-
Notifications
You must be signed in to change notification settings - Fork 105
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Requests for additional 3D Tiles samples #64
Comments
I would be keen to see the simple triangle hello world mentioned in the other issue. It would be good to see this triangle on the earth's surface through a transform property on its mesh. |
Some further details may be helpful here. Putting a single glTF asset (being the triangle or something else) into a I could imagine that such a tileset could be used to convey some 3D-Tiles-specific ideas, though. Namely: How to position a certain model at a certain (longitude/latitude/height) position, taking all the GIS-specific coordinate transforms into account. Much of this would probably be described in the corresponding README.md (simliar to how the BoundingBoxTests show the connection between glTF and 3D Tiles bounding volumes). |
I ask as I've been struggling for about a week to place a gltf asset at a specific lat long position. I've calculated the ECEF coordinates using: I use this as the translation of the root node of the gltf (which contains a single mesh). I then use this, + the min/max bounds in the gltf to set a bounding volume (box). I am currently using the following sandcastle setup to debug. This will zoom to the right location, spam the console with messages telling me that the tile is visible, and the asset won't show up. A example walking through how to do something like this would be helpful. Both my gltf and tileset pass their respective validators. P.S: I haven't done any y-up to z-up transforms. The spec suggests cesium does this automatically after gltf defined transformations, which would break everything for me. P.P.S: changing the translation to account for the transformation gave me results similar to this. |
There are different options for where and how that "placement transform" could be applied. For example: When applying your sandcastle to the When applying the same sandcasttle to the You can fix the placement at runtime in this case. For example, you could insert this in the sandcastle, after loading the tileset:
This will move the model (i.e. tileset and contents) to the specified position on the globe. Another option would be to put the proper transform into the glTF asset itself. So instead of setting the transform of the root node of the tileset (as in the first example), you could put this transform matrix into the root node of the glTF (taking the different up-axes into account). But this approach could have a drawback: Imagine you had a glTF asset of a building. You could set the transform of the root node inside the glTF, so that the building appears at the right place on the globe. But if you then wanted to move this building to a different place on the globe, you would have to "cancel" the transform that it already has, and apply a new transform (inside the tileset JSON). So I'd usually consider it to be more flexible to have the glTF asset in a "neutral" state (at the origin, y-up), and do any placement either with the tileset JSON tile transforms, or manually at runtime by setting the |
This issue is intended for collecting high-level ideas about 3D Tiles samples that may be added here. Details about specific examples can be discussed in dedicated issues or the corresponding PRs.
(This issue is a replacement of CesiumGS/3d-tiles#562 , and the following list is based on this issue)
3DTILES_bounding_volume_S2
EXT_structural_metadata
version of the currentTilesetWithFullMetadata
The text was updated successfully, but these errors were encountered: