fix(assets): publish controllable traffic signal runtime

This commit is contained in:
2026-08-12 10:17:34 +08:00
parent 41a0e81a6f
commit f13d890ffb
16 changed files with 88 additions and 31 deletions

View File

@@ -675,6 +675,13 @@ def export(args):
else:
center_lon = center_lat = 0.0
area_id = os.path.splitext(os.path.basename(args["glb"]))[0]
runtime_assets = []
if args.get("dynamic_glb"):
runtime_assets.append({"id": "traffic-signals-dynamic", "type": "traffic-signal-lenses", "uri": "runtime/traffic-signals-dynamic.glb"})
if args.get("countdown_0_glb"):
runtime_assets.append({"id": "traffic-signals-countdown-0", "type": "traffic-signal-countdown", "phaseGroup": 0, "uri": "runtime/traffic-signals-countdown-0.glb"})
if args.get("countdown_1_glb"):
runtime_assets.append({"id": "traffic-signals-countdown-1", "type": "traffic-signal-countdown", "phaseGroup": 1, "uri": "runtime/traffic-signals-countdown-1.glb"})
metadata = {
"schema": "osm-asset-package/v1",
"packageVersion": "1.0.0",
@@ -686,6 +693,7 @@ def export(args):
"id": asset["id"], "role": "layer", "category": asset["id"],
"uri": "models/" + os.path.basename(asset["path"]), "defaultLoad": False,
} for asset in semantic_assets],
"runtime": runtime_assets,
"sceneStats": {
"buildings": scene.get("building_count", 0),
"industrial_buildings": scene.get("industrial_building_count", 0),