Pilot für eine generierte Figur: der Kohlenbeißer g01 kommt als Meshy-Ergebnis in den Port und ersetzt dort das Phase-4-Modell. Eine Figur genügt, um Pipeline, Bild und Leistung zu bewerten; Anatomie, Gesichter und Haare bleiben Künstler-Sculpts oder lizenzierte Packs (Vorgabe vom 1. Oktober). - Meshy-Pipeline unter tools/meshy/: API-Client (meshy.py, Ledger, Schlüssel nie geloggt) und Blender-Generator (build_figure.py) aus den unveränderten Downloads in assets-source/meshy/g01/. Export über den Manifest-Eintrag kohlenbeisser mit "replaces": "g01"; LuneUnitLibraryBuilder hängt die Figur zusätzlich unter der Godot-ID ein. - UV-Material AI_Kohlenbeisser (Familie authored): die Karten der Figur selbst, Lava-Glut aus der Albedo-Alpha (Meshy 7.1 ohne Emission-Map) mit _Glow 1,25. - Schatten ohne Normalen-Versatz (LuneShadowBias, _ShadowNormalScale 0): die UV-Naht-Kopien tragen geknickte Normalen; URP ApplyShadowBias zog helle Nähte durch den Schatten. Die Figur wirft nur mit Tiefen-Bias. - GPU-Batched-Skinning (PlayerSettings.meshDeformation, LuneProjectSetup): 35 Meshy-Kohlenbeißer kosteten mit CPU-Skinning rund 1 ms Haupt- und 1,7 ms Render-Thread je Bild. - LuneBenchmark: -luneBenchmarkRound und -luneBenchmarkArmy (Figuren-Stress). LuneAssetPreview: LUNE_ONLY für Vorher/Nachher, Trefferframe aus der Kontaktzeit des Manifests. FigureViewsTests (Explicit) für die vier Spielmomente der Figur. - Tests: EditMode 29/29, PlayMode 14/14 (6 Explicit), Verify 718/0, Player-Selbsttest 30/30, Kerntests 457/457, Fingerabdrücke unverändert (DCE95C96556F3A1A, 7B8E43AEFC0D60C5). - Leistung (A/B im selben Fenster, 35x g01): Meshy -21 % Mid (109,7 zu 138,8) und -13 % Karte (91,7 zu 105,6) gegenüber Phase-4. GPU-Skinning hebt Mid um 7-27 % und entlastet Haupt- und Render-Thread. Standard-Partie ab Runde 21 ohne g01 im Bild: drei Varianten bis 6 %. - Doku: U5-VISUAL (U5.5), PORT-QA, PORT-STATUS, KNOWN-BEHAVIOR-DIFFERENCES; Bilder screenshots/u5.5/ und u5.5-gpu/, Rohdaten logs/u5.5/. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
117 lines
2.6 KiB
Text
117 lines
2.6 KiB
Text
fileFormatVersion: 2
|
|
guid: 19b3b72c3b25e434a94571624c7d5fc6
|
|
TextureImporter:
|
|
internalIDToNameTable: []
|
|
externalObjects: {}
|
|
serializedVersion: 13
|
|
mipmaps:
|
|
mipMapMode: 0
|
|
enableMipMap: 1
|
|
sRGBTexture: 0
|
|
linearTexture: 0
|
|
fadeOut: 0
|
|
borderMipMap: 0
|
|
mipMapsPreserveCoverage: 0
|
|
alphaTestReferenceValue: 0.5
|
|
mipMapFadeDistanceStart: 1
|
|
mipMapFadeDistanceEnd: 3
|
|
bumpmap:
|
|
convertToNormalMap: 0
|
|
externalNormalMap: 0
|
|
heightScale: 0.25
|
|
normalMapFilter: 0
|
|
flipGreenChannel: 0
|
|
isReadable: 0
|
|
streamingMipmaps: 0
|
|
streamingMipmapsPriority: 0
|
|
vTOnly: 0
|
|
ignoreMipmapLimit: 0
|
|
grayScaleToAlpha: 0
|
|
generateCubemap: 6
|
|
cubemapConvolution: 0
|
|
seamlessCubemap: 0
|
|
textureFormat: 1
|
|
maxTextureSize: 2048
|
|
textureSettings:
|
|
serializedVersion: 2
|
|
filterMode: 1
|
|
aniso: 1
|
|
mipBias: 0
|
|
wrapU: 0
|
|
wrapV: 0
|
|
wrapW: 0
|
|
nPOTScale: 1
|
|
lightmap: 0
|
|
compressionQuality: 50
|
|
spriteMode: 0
|
|
spriteExtrude: 1
|
|
spriteMeshType: 1
|
|
alignment: 0
|
|
spritePivot: {x: 0.5, y: 0.5}
|
|
spritePixelsToUnits: 100
|
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
|
spriteGenerateFallbackPhysicsShape: 1
|
|
alphaUsage: 1
|
|
alphaIsTransparency: 0
|
|
spriteTessellationDetail: -1
|
|
textureType: 0
|
|
textureShape: 1
|
|
singleChannelComponent: 0
|
|
flipbookRows: 1
|
|
flipbookColumns: 1
|
|
maxTextureSizeSet: 0
|
|
compressionQualitySet: 0
|
|
textureFormatSet: 0
|
|
ignorePngGamma: 0
|
|
applyGammaDecoding: 0
|
|
swizzle: 50462976
|
|
cookieLightType: 0
|
|
platformSettings:
|
|
- serializedVersion: 4
|
|
buildTarget: DefaultTexturePlatform
|
|
maxTextureSize: 2048
|
|
resizeAlgorithm: 0
|
|
textureFormat: -1
|
|
textureCompression: 1
|
|
compressionQuality: 50
|
|
crunchedCompression: 0
|
|
allowsAlphaSplitting: 0
|
|
overridden: 0
|
|
ignorePlatformSupport: 0
|
|
androidETC2FallbackOverride: 0
|
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
|
- serializedVersion: 4
|
|
buildTarget: Standalone
|
|
maxTextureSize: 2048
|
|
resizeAlgorithm: 0
|
|
textureFormat: -1
|
|
textureCompression: 1
|
|
compressionQuality: 50
|
|
crunchedCompression: 0
|
|
allowsAlphaSplitting: 0
|
|
overridden: 0
|
|
ignorePlatformSupport: 0
|
|
androidETC2FallbackOverride: 0
|
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
|
spriteSheet:
|
|
serializedVersion: 2
|
|
sprites: []
|
|
outline: []
|
|
customData:
|
|
physicsShape: []
|
|
bones: []
|
|
spriteID:
|
|
internalID: 0
|
|
vertices: []
|
|
indices:
|
|
edges: []
|
|
weights: []
|
|
secondaryTextures: []
|
|
spriteCustomMetadata:
|
|
entries: []
|
|
nameFileIdTable: {}
|
|
mipmapLimitGroupName:
|
|
pSDRemoveMatte: 0
|
|
userData:
|
|
assetBundleName:
|
|
assetBundleVariant:
|