Hi fellows 3D renderer!
I love the change to glTF/glb files. We could even support animations like rotating Dutch wind mills.
The glb files should not have external references. All textures etc. must be in the GLB-Zip.
I did not think about the “size” yet. Our hardware gets better and can show a lot. But there are still old devices we also should support. Better a low res model but nothing, isn’t it?
I just got an idea:
- We should add the “size” of the file in the file data api, so an app can decide not to show high res models.
- And we could enable multiple “sizes” for the same location. May be according to the concept of LoD 0 to 5.
My OSMgo.org uses 3dmr.eu already and I am happy with the API, as it is now. But reconsidering, I should it.
The documentation for uploading may not be that good. I should take a look.
I use the API for downloading the models. And the UI for upload. And API for upload will hardly be needed.
Guidelines, my spontaneous thoughts:
- The size should be im metric meters. But we should add the option to set a parameter “scale" factor while uploading.
- It would be nice, if the orientation is as in the real world. That’s rater not the case, so we need a parameter to set a direction offset while uploading.
- A glb fiel has a virtual zero point (3D) It should be at ground level and at that geographical position, the node in OSM is placed to. We could consider to support north/east offset parameters in meters.
- Models should only include the building, NOT some area around, usually. There may be exceptions like the Apple Park? (See: 3dmr=31)
- Models should not render the walls from inside do reduce the load of the rendering, except they contain indoor structures.
The UI should show all parameters. And an app needs to get all of them by the API to place the model correctly.
But this parameter set is only valide vor single instance models, like the Eiffel Tower. Well, even it will exist at other places like theme parks or exhibitions. The same is given for models like a wind mill or a street light. In this case, all this parameters need to be in the OSM tagging value of the “3dmr” tag. We need a detailed tag definition in our help and the OSM Wiki.
Just by downloading the models of an area and show them in the rendered OSM world will not be enough. Some tagged buildings need to get replaced by the model, means, not be rendered. To do this just by the extend of the model will be questionable. I propose to have tags like “3dmr=" and “3dmr=yes” or “replaced”. This should work on a relation to of course. With the we do not need to scan the 3dmr server but directly download the data and the model. For model instances, the tag may also contain the parameters. I.e.:
“3dmr”=“2;lat=-12.34;lon=45.67;dir=180;scale=1.0;north=0;east=0”
If lat/lon is not not given, the position of the node is used. May be we need a doc vor upload and a doc for app implementation.
The API:
It is not for glb files yet. “filelist" will be obsolete. It would be nice, to have a proposal online. May be together with an Beta test version of the server, like at “beta.3dmr.eu”
Tags and categories are good for the UI. The renderer may have an option to show all data in a pop up.
What is aint:pageid ? From a defined zoom level?
More thoughts:
The map page shows markers. They, and the model page may offer to open a 3D renderer, using 3dmr.eu at the position of the model.
I see 3dmr=31 using non Engish categories and tags. I would not support this.
-karlos-