aboutsummaryrefslogtreecommitdiff
path: root/client/map
diff options
context:
space:
mode:
authornokoe <nokoe@mailbox.org>2024-07-11 15:50:07 +0200
committernokoe <nokoe@mailbox.org>2024-07-11 15:52:43 +0200
commit51f3c580fcfac8d37e5e345031cadda141f0340f (patch)
treec591be9a59785844cb6ee302fcf88d7f397bf719 /client/map
parent9924f88d35e504dae8dee0e0ca55efd45b2323ad (diff)
downloadhurrycurry-51f3c580fcfac8d37e5e345031cadda141f0340f.tar
hurrycurry-51f3c580fcfac8d37e5e345031cadda141f0340f.tar.bz2
hurrycurry-51f3c580fcfac8d37e5e345031cadda141f0340f.tar.zst
correct extents, set camera target to map center when no players are connected
Diffstat (limited to 'client/map')
-rw-r--r--client/map/map.gd25
1 files changed, 15 insertions, 10 deletions
diff --git a/client/map/map.gd b/client/map/map.gd
index e0fc091e..112ddbcc 100644
--- a/client/map/map.gd
+++ b/client/map/map.gd
@@ -68,20 +68,25 @@ func gi_bake():
gi_bake_blocking()
func gi_bake_blocking():
- var extent_min = Vector2(0,0)
- var extent_max = Vector2(0,0)
- for e in tile_by_pos.values():
- extent_min.x = min(extent_min.x, e[0].x) - 0.5
- extent_min.y = min(extent_min.y, e[0].y) - 0.5
- extent_max.x = max(extent_max.x, e[0].x) + 0.5
- extent_max.y = max(extent_max.y, e[0].y) + 0.5
-
+ var map_extents = extents()
+ var extent_min = map_extents[0]
+ var extent_max = map_extents[1]
var center = (extent_max + extent_min) / 2
var size = extent_max - extent_min
- voxelgi.position = Vector3(center.x, 2, center.y)
- voxelgi.size = Vector3(size.x, 5., size.y)
+ voxelgi.position = Vector3(center.x, 3., center.y)
+ voxelgi.size = Vector3(size.x, 8., size.y)
print("Baking now!")
var start = Time.get_ticks_msec()
voxelgi.bake()
voxelgi.visible = true
print("Bake done. elapsed=", Time.get_ticks_msec() - start)
+
+func extents() -> Array:
+ var extent_min = Vector2(0,0)
+ var extent_max = Vector2(0,0)
+ for e in tile_by_pos.values():
+ extent_min.x = min(extent_min.x, e[0].x)
+ extent_min.y = min(extent_min.y, e[0].y)
+ extent_max.x = max(extent_max.x, e[0].x)
+ extent_max.y = max(extent_max.y, e[0].y)
+ return [extent_min, extent_max + Vector2(1., 1.)]