extends Spatial ## NOTE: LightLevel Detector is on Layer 20. Keep this layer hidden from main camera var lightLevel : float func _process(_delta): var o = global_transform.origin $Viewport/Camera.global_transform.origin = Vector3(o.x, o.y + 0.5, o.z) var image : Image = $Viewport.get_texture().get_data() var floats : Array = [] image.lock() for y in range(0, image.get_height()): for x in range(0, image.get_width()): var pixel = image.get_pixel(x,y) var lightVal = (pixel.r + pixel.g + pixel.b) / 3 floats.append(lightVal) lightLevel = average(floats) image.unlock() func average(numbers : Array) -> float: var sum = 0.0 for n in numbers: sum += n return sum / numbers.size()