Tune the flashlight beam and refresh affected captures
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.
No files matched your search
|
Before Width: | Height: | Size: 1.3 MiB After Width: | Height: | Size: 1.3 MiB |
|
Before Width: | Height: | Size: 1.3 MiB After Width: | Height: | Size: 1.3 MiB |
|
Before Width: | Height: | Size: 1.2 MiB After Width: | Height: | Size: 1.2 MiB |
|
Before Width: | Height: | Size: 1.3 MiB After Width: | Height: | Size: 1.3 MiB |
|
Before Width: | Height: | Size: 1.1 MiB After Width: | Height: | Size: 1.1 MiB |
|
Before Width: | Height: | Size: 855 KiB After Width: | Height: | Size: 856 KiB |
@@ -201,9 +201,9 @@ func _build_guard() -> GuardController:
|
|||||||
var beam := MeshInstance3D.new()
|
var beam := MeshInstance3D.new()
|
||||||
beam.name = "Beam"
|
beam.name = "Beam"
|
||||||
var cone := CylinderMesh.new()
|
var cone := CylinderMesh.new()
|
||||||
cone.top_radius = 1.0
|
cone.top_radius = 1.35
|
||||||
cone.bottom_radius = 0.05
|
cone.bottom_radius = 0.04
|
||||||
cone.height = 5.5
|
cone.height = 7.0
|
||||||
cone.radial_segments = 16
|
cone.radial_segments = 16
|
||||||
cone.rings = 1
|
cone.rings = 1
|
||||||
cone.cap_top = false
|
cone.cap_top = false
|
||||||
@@ -211,7 +211,7 @@ func _build_guard() -> GuardController:
|
|||||||
beam.mesh = cone
|
beam.mesh = cone
|
||||||
# Cylinder axis is +Y; -90° about X aims the wide end along -Z (forward).
|
# Cylinder axis is +Y; -90° about X aims the wide end along -Z (forward).
|
||||||
beam.rotation_degrees = Vector3(-90, 0, 0)
|
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.material_override = Materials.light_beam()
|
||||||
beam.cast_shadow = GeometryInstance3D.SHADOW_CASTING_SETTING_OFF
|
beam.cast_shadow = GeometryInstance3D.SHADOW_CASTING_SETTING_OFF
|
||||||
flashlight.add_child(beam)
|
flashlight.add_child(beam)
|
||||||
|
|||||||
@@ -140,8 +140,8 @@ static func light_beam() -> StandardMaterial3D:
|
|||||||
mat.depth_draw_mode = BaseMaterial3D.DEPTH_DRAW_DISABLED
|
mat.depth_draw_mode = BaseMaterial3D.DEPTH_DRAW_DISABLED
|
||||||
mat.albedo_color = Color(1.0, 0.95, 0.82, 1.0)
|
mat.albedo_color = Color(1.0, 0.95, 0.82, 1.0)
|
||||||
var fade := Gradient.new()
|
var fade := Gradient.new()
|
||||||
fade.set_color(0, Color(1.0, 0.95, 0.82, 0.0))
|
fade.set_color(0, Color(1.0, 0.95, 0.82, 0.08))
|
||||||
fade.add_point(0.18, Color(1.0, 0.95, 0.82, 0.22))
|
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))
|
fade.set_color(fade.get_point_count() - 1, Color(1.0, 0.95, 0.82, 0.0))
|
||||||
var ramp := GradientTexture1D.new()
|
var ramp := GradientTexture1D.new()
|
||||||
ramp.gradient = fade
|
ramp.gradient = fade
|
||||||
|
|||||||