cityjson / specs

Specifications for CityJSON, a JSON-based encoding for 3D city models
https://cityjson.org
Creative Commons Zero v1.0 Universal
109 stars 25 forks source link

Where to put semantics/materials/textures for Geometry Templates? #153

Closed hugoledoux closed 1 year ago

hugoledoux commented 1 year ago

(this is a question I got by email, copying here to continue the discussion).

I cannot see in the cityJSON documentation how material, texture and semantic are assigned to geometry template surfaces. Having these attributes on geometry instance level requires to know internal structure of geometry template and this sounds problematic. Having them on geometry template will link from template to cityJSON.appearance. Maybe "geometry-templates" object should have own appearances like "vertices-templates"? Or other solution?

hugoledoux commented 1 year ago

All 3 should be stored in the template.

  1. the semantics of a GT should be the same for all instances, if not then I suggest resolving the template and having several different geometries
  2. the material will be like any other ones, accessing the global "appearance"
  3. the texture will be like any other ones, accessing the global "appearance"

This should be made clear in a new version of the specs, I totally agree.