Build validated industrial submarine cockpit

This commit is contained in:
chindit committed 2026-10-04 10:39:56 +02:00
1 parent dffe790926
commit fdebbafeae
19 files changed
+906 -277

No files matched your search

@@ -26,6 +26,7 @@ func _ready() -> void:
_build_curved_panels()
_build_outer_rib()
_build_fasteners()
_build_clamp_plates()
func panel_count() -> int:
@@ -53,7 +54,7 @@ func _style_existing_frame() -> void:
frame.material_override = _materials.brushed_steel
for child: Node in get_parent().get_children():
if child is MeshInstance3D and child.name.begins_with("Bolt"):
(child as MeshInstance3D).material_override = _materials.dark_steel
(child as MeshInstance3D).material_override = _materials.brass
func _build_curved_panels() -> void:
@@ -155,12 +156,37 @@ func _build_outer_rib() -> void:
func _build_fasteners() -> void:
for fastener_index in FASTENER_COUNT:
var angle := (fastener_index + 0.5) * TAU / float(FASTENER_COUNT)
var fastener_position := Vector3(
cos(angle) * 0.96,
sin(angle) * 0.96,
0.12
)
CockpitMeshFactory.add_cylinder(
"OuterFastener",
self,
Vector3(cos(angle) * 0.96, sin(angle) * 0.96, 0.105),
0.014,
fastener_position,
0.020,
0.018,
_materials.brass,
Vector3(90.0, 0.0, 0.0)
)
CockpitMeshFactory.add_sphere(
"FastenerCap",
self,
fastener_position + Vector3(0.0, 0.0, 0.012),
0.017,
_materials.brushed_steel
)
func _build_clamp_plates() -> void:
for plate_index in 12:
var angle := (plate_index + 0.5) * TAU / 12.0
var plate := CockpitMeshFactory.add_box(
"PressureClamp",
self,
Vector3(cos(angle) * 0.88, sin(angle) * 0.88, 0.105),
Vector3(0.11, 0.055, 0.028),
_materials.brushed_steel
)
plate.rotation_degrees.z = rad_to_deg(angle) + 90.0