feat(studio): Add Quick Start Guide, Viewport HUD, 3D raycast picking, quick add toolbar, and starter Baseplate
checkpoint / checkpoint (push) Successful in 6m20s

This commit is contained in:
2026-09-22 20:11:02 +00:00
parent 721dbe5ae7
commit 3f0ba543e1
7 changed files with 633 additions and 47 deletions
+3 -1
View File
@@ -90,7 +90,8 @@ func place_object(catalog_id: String, position: Vector3,
func place_object_stacked(catalog_id: String, target_object_id: String = "",
hit_point: Vector3 = Vector3.ZERO, surface_normal: Vector3 = Vector3(0, 0, 1),
elevation_offset: float = 0.0, align_to_normal: bool = false) -> String:
elevation_offset: float = 0.0, align_to_normal: bool = false,
extra_properties: Dictionary = {}) -> String:
var target_obj: ChunkDataDecoder.WorldObjectData = null
if target_object_id != "":
target_obj = model.find_object(target_object_id)
@@ -103,6 +104,7 @@ func place_object_stacked(catalog_id: String, target_object_id: String = "",
props["stacked_on"] = stack_info["parent_id"]
if elevation_offset != 0.0:
props["elevation_offset"] = elevation_offset
props.merge(extra_properties)
return place_object(catalog_id, stack_info["position"], stack_info["rotation"], Vector3.ONE, props)
+10
View File
@@ -52,6 +52,16 @@ func resolve(id: String) -> Dictionary:
return _catalog[id]
if (id.contains("bizon") or id.contains("bison")) and _catalog.has("bison"):
return _catalog["bison"]
if (id == "tree_pine" or id.begins_with("tree")) and _catalog.has("tree_pine_01"):
return _catalog["tree_pine_01"]
if (id == "lamp_post" or id.begins_with("lamp")) and _catalog.has("lamp_post_01"):
return _catalog["lamp_post_01"]
if (id == "chest" or id.begins_with("chest")) and _catalog.has("chest_01"):
return _catalog["chest_01"]
if (id == "rock" or id.begins_with("rock")) and _catalog.has("rock_01"):
return _catalog["rock_01"]
if (id == "spawn_pad" or id.begins_with("spawn")) and _catalog.has("spawn_point"):
return _catalog["spawn_point"]
return {}