This commit is contained in:
team3
2026-09-16 17:00:41 +02:00
parent f1c78f66f4
commit 9800c614bb
21 changed files with 497 additions and 191 deletions

View File

@@ -31,6 +31,7 @@ const PIPS := {
# Körper und Augen stecken in einem gemeinsamen Mesh mit Vertexfarben,
# damit ein Würfel nur ein einziges Renderobjekt ist.
const Stoffe = preload("res://scripts/stoffe.gd")
static var _mesh: ArrayMesh
static var _mat: StandardMaterial3D
static var _gold: StandardMaterial3D ## fürs Zählen beim Aufdecken
@@ -121,14 +122,11 @@ static func _add_pips(st: SurfaceTool, n: Vector3, t: Array, value: int) -> void
func _build_visuals() -> void:
if _mesh == null:
_mesh = _build_mesh()
_mat = StandardMaterial3D.new()
_mat.vertex_color_use_as_albedo = true
# Kamera und Deckenlicht stehen beide senkrecht: bei glatter Oberfläche
# liegt der Glanzpunkt genau auf der Fläche und hellt die Augen auf.
_mat.roughness = 0.9
_mat.metallic_specular = 0.0
# Knochen statt Plastik: Vertexfarben bleiben (Körper hell, Augen
# dunkel), der Shader legt Maserung und einen warmen Kantenschein darüber.
_mat = Stoffe.knochen()
if _gold == null:
# Vertexfarben bleiben, werden nur gold getönt - die Augen bleiben dunkel.
# Fürs Zählen: dieselbe Fläche, gold getönt - die Augen bleiben dunkel.
_gold = _mat.duplicate()
_gold.albedo_color = Color(1.0, 0.82, 0.35)
_gold.emission_enabled = true