mirror of
https://github.com/jcreek/CosmicClash.git
synced 2026-09-11 17:03:43 +00:00
e62d844c1d
SDFGI ran with default cascades in a volume that was almost entirely transparent, so its low-resolution probes had little solid geometry to capture and contributed blotching across large flat surfaces. With the boundary now an opaque deck plus an unshaded additive field, it earns nothing, and the existing ReflectionProbe and ambient carry the lighting. Each arena also gains a shadowless fill light opposite its key light so the deck is not lit from a single direction, and passes its own tint through to the boundary's containment field so the three arenas read differently. use_debanding was absent. Glow runs at hdr_scale 2.0 with adjustment_contrast above 1.0, which amplifies 8-bit quantisation on exactly the kind of smooth gradients the new shell is made of. The remaining project.godot churn is Godot's own key reordering on save.
101 lines
3.3 KiB
Plaintext
101 lines
3.3 KiB
Plaintext
[gd_scene load_steps=8 format=3]
|
|
|
|
[ext_resource type="Script" path="res://scripts/arena.gd" id="1_iywne"]
|
|
[ext_resource type="PackedScene" path="res://objects/arena_boundary.tscn" id="2_bndry"]
|
|
[ext_resource type="PackedScene" uid="uid://cofdcxo5170rs" path="res://objects/goal.tscn" id="6_p57ef"]
|
|
|
|
[sub_resource type="Shader" id="Shader_stars"]
|
|
code = "shader_type sky;
|
|
|
|
// Procedural starfield: sparse hash-based stars over near-black space, with a
|
|
// faint blue nebula glow toward the horizon.
|
|
void sky() {
|
|
vec3 dir = EYEDIR;
|
|
vec3 col = vec3(0.01, 0.012, 0.02);
|
|
col += vec3(0.02, 0.03, 0.08) * pow(1.0 - abs(dir.y), 3.0);
|
|
vec3 cell = floor(dir * 300.0);
|
|
float h = fract(sin(dot(cell, vec3(12.9898, 78.233, 45.164))) * 43758.5453);
|
|
if (h > 0.998) {
|
|
vec3 in_cell = fract(dir * 300.0) - 0.5;
|
|
float star = smoothstep(0.4, 0.0, length(in_cell));
|
|
col += vec3(star * (0.5 + fract(h * 999.0)));
|
|
}
|
|
COLOR = col;
|
|
}
|
|
"
|
|
|
|
[sub_resource type="ShaderMaterial" id="ShaderMaterial_stars"]
|
|
shader = SubResource("Shader_stars")
|
|
|
|
[sub_resource type="Sky" id="Sky_space"]
|
|
sky_material = SubResource("ShaderMaterial_stars")
|
|
|
|
[sub_resource type="Environment" id="Environment_space"]
|
|
background_mode = 2
|
|
sky = SubResource("Sky_space")
|
|
ambient_light_source = 2
|
|
ambient_light_color = Color(0.55, 0.6, 0.75, 1)
|
|
ambient_light_energy = 0.4
|
|
glow_enabled = true
|
|
glow_levels/1 = 0.0
|
|
glow_levels/2 = 0.4
|
|
glow_levels/3 = 0.8
|
|
glow_levels/4 = 0.6
|
|
glow_levels/5 = 0.2
|
|
glow_intensity = 0.9
|
|
glow_strength = 1.2
|
|
glow_bloom = 0.05
|
|
glow_blend_mode = 1
|
|
glow_hdr_threshold = 1.0
|
|
glow_hdr_scale = 2.0
|
|
adjustment_enabled = true
|
|
adjustment_brightness = 1.0
|
|
adjustment_contrast = 1.05
|
|
adjustment_saturation = 1.08
|
|
|
|
[node name="Arena" type="Node3D"]
|
|
script = ExtResource("1_iywne")
|
|
|
|
[node name="Boundary" parent="." instance=ExtResource("2_bndry")]
|
|
field_tint = Color(0.5, 0.7, 1, 1)
|
|
field_intensity = 0.09
|
|
|
|
[node name="DirectionalLight3D" type="DirectionalLight3D" parent="."]
|
|
transform = Transform3D(0.866025, -0.383022, 0.321394, 0, 0.642788, 0.766044, -0.5, -0.663414, 0.55667, 0, 11, 0)
|
|
shadow_enabled = true
|
|
|
|
[node name="FillLight" type="DirectionalLight3D" parent="."]
|
|
transform = Transform3D(-0.866025, -0.383022, -0.321394, 0, 0.642788, 0.766044, 0.5, -0.663414, 0.55667, 0, 11, 0)
|
|
light_color = Color(0.55, 0.65, 0.85, 1)
|
|
light_energy = 0.4
|
|
shadow_enabled = false
|
|
|
|
[node name="WorldEnvironment" type="WorldEnvironment" parent="."]
|
|
environment = SubResource("Environment_space")
|
|
|
|
[node name="ReflectionProbe" type="ReflectionProbe" parent="."]
|
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 6, 0)
|
|
size = Vector3(26, 14, 40)
|
|
box_projection = true
|
|
update_mode = 0
|
|
|
|
[node name="GoalTeam0" parent="." instance=ExtResource("6_p57ef")]
|
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.79, 18)
|
|
|
|
[node name="GoalTeam1" parent="." instance=ExtResource("6_p57ef")]
|
|
transform = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 0, 0.79, -18)
|
|
team = 1
|
|
|
|
[node name="BallSpawn" type="Marker3D" parent="."]
|
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 2, 0)
|
|
|
|
[node name="SpawnsTeam0" type="Node3D" parent="."]
|
|
|
|
[node name="Spawn1" type="Marker3D" parent="SpawnsTeam0"]
|
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 2.8, 13.5)
|
|
|
|
[node name="SpawnsTeam1" type="Node3D" parent="."]
|
|
|
|
[node name="Spawn1" type="Marker3D" parent="SpawnsTeam1"]
|
|
transform = Transform3D(-1, 0, 0, 0, 1, 0, 0, 0, -1, 0, 2.8, -13.5)
|