Tune the flashlight beam and refresh affected captures
Full build / Import + headless tests (push) Successful in 37s
Full build / Full desktop build + optional release (push) Skipped

Widen and lengthen the additive beam cone and raise its near-end opacity so the
night flashlight reads on screen. Regenerate the staged captures; compare stays
11 good / 0 bad, headless 227/227.
This commit is contained in:
zwitschi committed 2026-11-01 17:04:09 +01:00
1 parent d7e523f63c
commit 6acbc2b3a4
8 files changed
+6 -6

No files matched your search

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 MiB

After

Width:  |  Height:  |  Size: 1.3 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 MiB

After

Width:  |  Height:  |  Size: 1.3 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 MiB

After

Width:  |  Height:  |  Size: 1.2 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 MiB

After

Width:  |  Height:  |  Size: 1.3 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 MiB

After

Width:  |  Height:  |  Size: 1.1 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 855 KiB

After

Width:  |  Height:  |  Size: 856 KiB

+4 -4
View File
@@ -201,9 +201,9 @@ func _build_guard() -> GuardController:
var beam := MeshInstance3D.new()
beam.name = "Beam"
var cone := CylinderMesh.new()
cone.top_radius = 1.0
cone.bottom_radius = 0.05
cone.height = 5.5
cone.top_radius = 1.35
cone.bottom_radius = 0.04
cone.height = 7.0
cone.radial_segments = 16
cone.rings = 1
cone.cap_top = false
@@ -211,7 +211,7 @@ func _build_guard() -> GuardController:
beam.mesh = cone
# Cylinder axis is +Y; -90° about X aims the wide end along -Z (forward).
beam.rotation_degrees = Vector3(-90, 0, 0)
beam.position = Vector3(0, 0, -3.65)
beam.position = Vector3(0, 0, -3.9)
beam.material_override = Materials.light_beam()
beam.cast_shadow = GeometryInstance3D.SHADOW_CASTING_SETTING_OFF
flashlight.add_child(beam)
+2 -2
View File
@@ -140,8 +140,8 @@ static func light_beam() -> StandardMaterial3D:
mat.depth_draw_mode = BaseMaterial3D.DEPTH_DRAW_DISABLED
mat.albedo_color = Color(1.0, 0.95, 0.82, 1.0)
var fade := Gradient.new()
fade.set_color(0, Color(1.0, 0.95, 0.82, 0.0))
fade.add_point(0.18, Color(1.0, 0.95, 0.82, 0.22))
fade.set_color(0, Color(1.0, 0.95, 0.82, 0.08))
fade.add_point(0.15, Color(1.0, 0.95, 0.82, 0.5))
fade.set_color(fade.get_point_count() - 1, Color(1.0, 0.95, 0.82, 0.0))
var ramp := GradientTexture1D.new()
ramp.gradient = fade