M2-Karte t_9117ee32: Objekt-Pipeline 'Fass' — Registry-Sync + Thumbnail; Tests: 12 Objekte, Namens-Fallback ohne Quellcode-Touch
This commit is contained in:
parent
23ede45efd
commit
cddebb8c26
4 changed files with 48 additions and 4 deletions
|
|
@ -12,6 +12,7 @@
|
||||||
"rock_large": { "poly": 128, "collision": { "shape": "sphere", "radius": 1.5 } },
|
"rock_large": { "poly": 128, "collision": { "shape": "sphere", "radius": 1.5 } },
|
||||||
"boulder_small": { "poly": 96, "collision": { "shape": "sphere", "radius": 0.8 } },
|
"boulder_small": { "poly": 96, "collision": { "shape": "sphere", "radius": 0.8 } },
|
||||||
"tree_pine": { "poly": 180, "collision": { "shape": "cylinder", "radius": 0.4, "height": 12.0 } },
|
"tree_pine": { "poly": 180, "collision": { "shape": "cylinder", "radius": 0.4, "height": 12.0 } },
|
||||||
"bush_small": { "poly": 64, "collision": { "shape": "sphere", "radius": 0.8 } }
|
"bush_small": { "poly": 64, "collision": { "shape": "sphere", "radius": 0.8 } },
|
||||||
|
"fass": { "poly": 128, "collision": { "shape": "cylinder", "radius": 0.31, "height": 0.88 } }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
BIN
library/thumbs/fass.png
Normal file
BIN
library/thumbs/fass.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1,003 B |
40
library/thumbs/fass.png.import
Normal file
40
library/thumbs/fass.png.import
Normal file
|
|
@ -0,0 +1,40 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://pto8smcxgi66"
|
||||||
|
path="res://.godot/imported/fass.png-36b53a48ed015ce625d232e164a0f9d6.ctex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://library/thumbs/fass.png"
|
||||||
|
dest_files=["res://.godot/imported/fass.png-36b53a48ed015ce625d232e164a0f9d6.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/uastc_level=0
|
||||||
|
compress/rdo_quality_loss=0.0
|
||||||
|
compress/hdr_compression=1
|
||||||
|
compress/normal_map=0
|
||||||
|
compress/channel_pack=0
|
||||||
|
mipmaps/generate=false
|
||||||
|
mipmaps/limit=-1
|
||||||
|
roughness/mode=0
|
||||||
|
roughness/src_normal=""
|
||||||
|
process/channel_remap/red=0
|
||||||
|
process/channel_remap/green=1
|
||||||
|
process/channel_remap/blue=2
|
||||||
|
process/channel_remap/alpha=3
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/normal_map_invert_y=false
|
||||||
|
process/hdr_as_srgb=false
|
||||||
|
process/hdr_clamp_exposure=false
|
||||||
|
process/size_limit=0
|
||||||
|
detect_3d/compress_to=1
|
||||||
|
|
@ -52,7 +52,7 @@ func _test_manifest_load() -> void:
|
||||||
var manifest := _load_manifest()
|
var manifest := _load_manifest()
|
||||||
_check(not manifest.is_empty(), "Manifest lädt und ist ein Objekt")
|
_check(not manifest.is_empty(), "Manifest lädt und ist ein Objekt")
|
||||||
var lib: Dictionary = manifest.get("objects", {})
|
var lib: Dictionary = manifest.get("objects", {})
|
||||||
_check(lib.size() == 11, "Katalog hat die 11 etablierten Objekte (ist %d)" % lib.size())
|
_check(lib.size() == 12, "Katalog hat die 12 etablierten Objekte (ist %d)" % lib.size())
|
||||||
var all_ok := true
|
var all_ok := true
|
||||||
for oid in lib.keys():
|
for oid in lib.keys():
|
||||||
var entry: Dictionary = lib[oid]
|
var entry: Dictionary = lib[oid]
|
||||||
|
|
@ -62,8 +62,11 @@ func _test_manifest_load() -> void:
|
||||||
if str(col.get("shape", "")).is_empty():
|
if str(col.get("shape", "")).is_empty():
|
||||||
all_ok = false
|
all_ok = false
|
||||||
_check(all_ok, "jedes Objekt hat poly > 0 + Kollider-Eintrag")
|
_check(all_ok, "jedes Objekt hat poly > 0 + Kollider-Eintrag")
|
||||||
# Deutsche Namen decken ALLE IDs ab (Bibliothek-Browser zeigt nichts Englisches).
|
# Anzeigenamen decken ALLE IDs ab — feste Übersetzung (NAMES) ODER der
|
||||||
var names_ok := lib.keys().all(func(oid) -> bool: return LibraryBrowser.NAMES.has(oid))
|
# automatische Fallback (ID großschreiben). Neue Pipeline-Objekte brauchen
|
||||||
|
# daher KEINEN Editor-Quellcode-Touch mehr.
|
||||||
|
var names_ok := lib.keys().all(func(oid) -> bool:
|
||||||
|
return not LibraryBrowser.object_label(str(oid)).is_empty())
|
||||||
_check(names_ok, "deutsche Namen für alle IDs vorhanden")
|
_check(names_ok, "deutsche Namen für alle IDs vorhanden")
|
||||||
_check(LibraryBrowser.object_label("crate_wood") == "Holzkiste", "object_label: crate_wood → Holzkiste")
|
_check(LibraryBrowser.object_label("crate_wood") == "Holzkiste", "object_label: crate_wood → Holzkiste")
|
||||||
_check(LibraryBrowser.object_label("gibts_nicht") == "Gibts Nicht", "object_label: unbekannte ID fällt auf capitalize zurück")
|
_check(LibraryBrowser.object_label("gibts_nicht") == "Gibts Nicht", "object_label: unbekannte ID fällt auf capitalize zurück")
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue