![]() |
GLTF-Packer - Druckversion +- GridTalk.de (https://www.gridtalk.de) +-- Forum: Werkstatt (https://www.gridtalk.de/forumdisplay.php?fid=4) +--- Forum: Externe Tools (https://www.gridtalk.de/forumdisplay.php?fid=29) +--- Thema: GLTF-Packer (/showthread.php?tid=5168) |
GLTF-Packer - Manfred Aabye - 04.10.2025 PBR Material Maker Dotnet 10 mit Texturgenerator. # DOTNET 10.0 Version von GLTF Packer (Fork von Captain Ai) Visual Studio 2026 – Windows 11 – .NET 10.0 Diese Version erstellt automatisch nicht vorhandene PBR-Bestandteile (BaseColor, Normal, Occlusion, Roughness, Metallic, Emission, Alpha) und speichert sie im Zielverzeichnis. Diese werden aus der Albedo berechnet. ## Features - Automatische Erzeugung fehlender PBR-Texturen (weiß/schwarz oder generiert) - Normalmap-Generierung aus Albedo mit Prägung - Unterstützung für Drag & Drop von Texturen - Anpassbare Auflösung für alle Maps - GLTF-Export mit allen relevanten Textur-Referenzen - Kompatibel mit Windows 11 und Visual Studio 2026 (.NET 10.0) ## Installation 1. Projekt mit Visual Studio 2026 öffnen. 2. Abhängigkeiten installieren (NuGet: Newtonsoft.Json). 3. Anwendung kompilieren und starten. ## Verwendung 1. Ziehe die gewünschte Albedo-Textur per Drag & Drop in das Fenster. 2. Weitere Maps werden automatisch erkannt oder generiert. 3. Wähle die gewünschte Auflösung. 4. Klicke auf „Save“, um die GLTF-Datei und alle Texturen zu exportieren. ## Disclaimer GLTF Packer steht in keiner Verbindung zu KhronosGroup, glTF, Linden Lab, SecondLife oder OpenSim. Es handelt sich um Drittanbieter-Software. ## Lizenz Siehe LICENSE-Datei im Repository. ## Fertige Windows Version Download RE: GLTF-Packer - Manfred Aabye - 04.10.2025 GLTF Packer **Version:** 2.2.64 **Target:** .NET 10 (Windows Forms & WPF) **Plattform:** Windows 7.0 und neuer ## Beschreibung GLTF Packer ist ein Tool zum Packen von Texturen und Erstellen von GLTF-Dateien für PBR-Materialien für Second Life und OpenSim. Es unterstützt das Laden, Bearbeiten und Exportieren von Texturen wie Base Color, Occlusion, Roughness, Metallic, Normal, Emission und Alpha. ## Features - Unterstützung für alle gängigen PBR-Texturtypen - Automatisches Erkennen und Zuordnen von Texturdateien - Bildgrößenanpassung (Resize) mit verschiedenen Auflösungen - Export als GLTF 2.0 mit korrekten Texturpfaden - Emission, Alpha und weitere Spezialmaps werden unterstützt - Kompatibel mit SecondLife und OpenSim ## Systemvoraussetzungen - Windows 7 oder neuer - .NET 10 Desktop Runtime - Keine Installation erforderlich, einfach ausführbar ## Installation 1. Repository herunterladen oder Release aus den GitHub-Releases beziehen. 2. Die Datei `GLTF Packer.exe` ausführen. ## Nutzung 1. Texturen per Drag & Drop in die jeweiligen Felder ziehen. 2. Materialnamen vergeben. 3. Auflösung wählen (optional). 4. Mit **Save** die GLTF-Datei und Texturen exportieren. ## Konfiguration - Die Datei `material.json` wird beim ersten Start automatisch mit Standardwerten angelegt. - Anpassungen können direkt in der Datei vorgenommen werden. ### Einstellmöglichkeiten - Öffne die Datei `material.json` mit einem Texteditor. - Ändere die Werte nach Bedarf, z.B.: - **NormalStrength** `"NormalStrength": 0.5` Erhöht die Prägung der Normalmap (Kanten werden stärker hervorgehoben). - **RoughnessStrength** `"RoughnessStrength": 0.8` Material wirkt rauer, weniger glänzend. - **OcclusionStrength** `"OcclusionStrength": 0.5` Weniger starke Schatten, Material wirkt heller. - **MetallicThreshold** `"MetallicThreshold": 100` Bereits hellere Bereiche werden als Metall interpretiert. - **EmissionStrength** `"EmissionStrength": 2.0` Material leuchtet stärker. - **AlphaStrength** `"AlphaStrength": 0.5` Material wird halbtransparent. - **BaseColorTint** `"BaseColorTint": [1.0, 0.7, 0.7]` Material erhält einen rötlichen Farbton. - **NormalMapType** `"NormalMapType": "flat"` Erzeugt eine flache Normalmap ohne Kantenerkennung. - **RoughnessInvert** `"RoughnessInvert": true` Invertiert die Rauheit, helle Bereiche werden rau, dunkle glatt. - **MetallicIntensity** `"MetallicIntensity": 0.5` Metall-Effekt wird abgeschwächt. - **EmissionColor** `"EmissionColor": [1.0, 1.0, 0.0]` Material leuchtet gelb. - **AlphaMode** `"AlphaMode": "blend"` Material wird transparent dargestellt. `"AlphaMode": "mask"` für Maskierung. `"AlphaMode": "opaque"` für undurchsichtiges Material. **Hinweis:** Nach dem Speichern der Änderungen die Anwendung neu starten, damit die neuen Einstellungen übernommen werden. ## Lizenz Dieses Projekt steht unter der MIT-Lizenz. ## Fertige Windows Version Download RE: GLTF-Packer - Manfred Aabye - 04.10.2025 PBR Texturen für Dummy´s Ladet euch den GLTF Packer herunter und startet diesen. Schiebt eure Second Life oder OpenSim Textur in den Base Color Bereich. Drückt unten auf Save… und fertig ist euer PBR Material. Natürlich könnt ihr auch eure Normalmap und andere zusätzliche Texturen/Maps einfügen. Fazit alles, was ihr nicht an Texturen angebt, wird für euch generiert/erstellt. Inworld ladet ihr einfach euer Material hoch, und fertig. RE: GLTF-Packer - Manfred Aabye - 04.10.2025 Die besten material.json Einstellungen/Beispiele: Github Wiki RE: GLTF-Packer - Manfred Aabye - 05.10.2025 GLTF Packer Version: 2.3.96 Target: .NET 10 (Windows Forms & WPF) Plattform: Windows 7.0 und neuer Material lässt sich jetzt einfach auswählen. Inklusive 42 Voreinstellungen. Tooltips überarbeitet. Download Github RE: GLTF-Packer - Manfred Aabye - 06.10.2025 GLTF Packer Version: 2.5.156 DOTNET 10 Windows Material lässt sich jetzt einfach auswählen, inklusive 42 Voreinstellungen. Tooltips wurden überarbeitet. Fehlendes Material hinzugefügt in der gltf Materialdatei. Fehlendes und erweitertes Material von gängigen Game Engines hinzugefügt. Github Sourcecode und Download PBR Material Maker - GLTF-Packer Der PBR Material Maker ist ein einfach zu bedienendes Tool, um aus Texturen automatisch GLTF-Dateien für PBR-Materialien zu erstellen. Die Anwendung ist für Einsteiger geeignet und bietet eine intuitive Oberfläche mit Drag & Drop Unterstützung. Was ist PBR? PBR steht für Physically Based Rendering. Dabei werden Materialien so beschrieben, dass sie möglichst realistisch im 3D-Rendering aussehen. Typische Texturarten sind: Base Color (Grundfarbe) Normal (Oberflächenstruktur) Occlusion (Schatten) Roughness (Rauheit) Metallic (Metallanteil) Emission (Selbstleuchten) Alpha (Transparenz) Funktionen im Überblick 1. Drag & Drop von Texturen Ziehe JPG- oder PNG-Dateien direkt auf die jeweiligen Felder (z.B. Base Color, Normal, etc.). Die Anwendung erkennt viele gängige Namensmuster aus Engines wie Unreal, Unity, Godot, O3DE, CryEngine, Stride, Flax, Snowdrop und mehr. 2. Automatisches Ausfüllen Wird eine Base Color Textur eingefügt, werden passende Texturen für Normal, Occlusion, Roughness, Metallic, Emission und Alpha automatisch gesucht und zugeordnet. Fehlen einzelne Maps, werden sie aus der Base Color generiert. 3. Auflösung wählen Wähle eine Zielauflösung für die Texturen (z.B. 2048x2048, 1024x1024, ... oder eigene Werte). Die Texturen werden beim Speichern auf die gewählte Größe skaliert. 4. GLTF-Datei erzeugen Mit einem Klick auf Save werden alle Texturen und die GLTF-Datei im Unterordner gltf_textures gespeichert. Die GLTF-Datei enthält Verweise auf alle erzeugten Texturen. 5. Material Presets Über die Materialauswahl können vordefinierte Einstellungen für verschiedene Materialien geladen werden. Die Werte für Normal, Roughness, Occlusion, Metallic, Emission und Alpha werden automatisch angepasst. 6. Konfiguration über material.json Die Datei material.json erlaubt die Anpassung der Effektstärken und Presets. Beispiel für die wichtigsten Parameter: Parameter Typ Bereich Beschreibung NormalStrength float 0.0 - 1.0 Stärke der Prägung/Normalmap RoughnessStrength float 0.0 - 1.0 Stärke der Rauheit OcclusionStrength float 0.0 - 1.0 Stärke der Schatten/Occlusion MetallicThreshold int 0 - 255 Schwellenwert für Metallisch EmissionStrength float 0.0 - 1.0 Stärke der Emission AlphaStrength float 0.0 - 1.0 Stärke der Transparenz/Alpha BaseColorTint float[3] 0.0 - 1.0 Farb-Tint für die Grundfarbe NormalMapType string "sobel"/... Typ der Normalmap-Generierung RoughnessInvert bool true/false Rauheit invertieren MetallicIntensity float 0.0 - 1.0 Intensität des Metall-Effekts EmissionColor float[3] 0.0 - 1.0 Farbe für Emission AlphaMode string "opaque"/... Modus für Transparenz Schritt-für-Schritt Anleitung Textur einfügen: Ziehe eine Textur (z.B. Base Color) auf das entsprechende Feld. Materialname: Der Name wird automatisch aus dem Dateinamen vorgeschlagen, kann aber angepasst werden. Material Preset wählen: Optional ein Preset auswählen, um die Einstellungen zu übernehmen. Auflösung wählen: Die gewünschte Zielgröße für die Texturen auswählen. Speichern: Klicke auf Save, um alle Maps und die GLTF-Datei zu generieren. Unterstützte Textur-Endungen Das Tool erkennt automatisch viele gängige Endungen, z.B.: Normal: _normal, _nrm, _normal-ogl, _Normals, _normalmap, ... Metallic: _metallic, _metal, _metalTex, ... Height/Displacement: _height, _disp, _bump, ... Occlusion/AO: _occlusion, _ao, _ambientocclusion, ... Roughness: _roughness, _rough, ... Emission: _emission, _emissive, _glow, ... Alpha/Mask: _alpha, _opacity, _mask, ... Hinweise für Einsteiger Mindestens eine Base Color Textur ist erforderlich. Fehlende Maps werden automatisch aus der Base Color berechnet. Die generierten Dateien findest du im Unterordner gltf_textures. Die Anwendung ist für Windows (.NET 10, C# 14.0, WPF) entwickelt. Lizenz Siehe LICENSE für weitere Informationen. Hilfe & Support Bei Fragen oder Problemen kannst du ein Issue auf GitHub eröffnen oder die Dokumentation im Repository lesen. Github Sourcecode und Download RE: GLTF-Packer - Manfred Aabye - 10.10.2025 Vorschau auf die neue Version. Aus GLTF Packer wird ein waschechter PBR Material Maker. Github Sourcecode und Binary's RE: GLTF-Packer - Manfred Aabye - 12.10.2025 Zusammenfassung der heutigen Änderungen am PBR Material Maker Hauptziele erreicht: Fallback-Textur Support Regeneration gelöschter Maps Build-Konfiguration Fixes Automatisches Laden von fallback.jpg wenn keine Base Color vorhanden Regeneration bereits gelöschter Maps (nicht nur fehlende) Verwendung aktueller UI-Parameter bei Map-Generierung Robuste Fehlerbehandlung mit aussagekräftigen Meldungen 2. Neue Hilfsmethoden: 3. Projektkonfiguration (.csproj) Ergebnis: fallback.jpg wird automatisch in Debug/Release-Verzeichnisse kopiert Keine "Base Color Required" Fehler mehr beim Speichern Anwendung findet Fallback-Textur in Build-Umgebung Verbesserte Benutzerfreundlichkeit: Vorher Nachher Fehler ohne Base Color - Automatischer Fallback Gelöschte Maps nicht regenerierbar - Jederzeit regenerierbar Hardcoded Parameter - Echtzeitparameter aus UI Fehlende Resources in Build - Automatisches Kopieren Hinzugefügter fallback.jpg Eintrag mit Copy-Konfiguration Build-Verzeichnisse Resources/fallback.jpg in Debug & Release kopiert Workflow-Verbesserung: Testergebnisse: Anwendung startet erfolgreich Build-Prozess ohne Fehler fallback.jpg in allen Build-Verzeichnissen verfügbar Kein "Base Color Required" Fehler mehr Maps werden mit aktuellen Parametern generiert Fazit: Die Anwendung ist jetzt robuster, benutzerfreundlicher und unterstützt einen nahtlosen Workflow auch ohne manuell geladene Texturen. Die Fallback-Funktionalität macht die Anwendung für Benutzer viel zugänglicher! Das Programm wird jetzt automatisch in Github gebaut. Die Rechte Maustaste löscht einzelne Maps. Das anklicken der Matarialvorschau regeneriert die Anzeige. Download Github |