Diagnose und Reparatur: Zielobjekt konnte nicht geladen werden
Die 3D-Objekttracking-Funktion hängt stark von der Qualität des verwendeten 3D-Modells ab. Wenn das Zielmodell nicht geladen werden kann, gibt EasyAR detaillierte Fehlerprotokolle aus, um Entwicklern bei der Problembehebung zu helfen. In diesem Kapitel werden häufige Fehlerursachen und Lösungen aufgeführt, die Materialien, Texturen und Modell-Dateien betreffen.
Material-/Textur-Dateifehler
Diese Fehler werden meist durch falsche Pfadangaben oder Dateiformatprobleme verursacht.
| Log-Information | Fehlerursache | Lösung |
|---|---|---|
| Material file not exist | Materialdatei (.mtl) existiert nicht oder wurde nicht korrekt referenziert | Prüfen, ob die .mtl-Datei im Modellordner vorhanden ist und der Pfad in der .obj-Datei (mtllib) korrekt ist (relativer Pfad) |
| Current material has no name | Materialdefinition hat keinen Namen (newmtl nicht angegeben) |
Jedes Material in der .mtl-Datei benennen, z.B. newmtl Material1 |
| No texture map exists in material | Textur wurde nicht angegeben (fehlendes map_Ka oder map_Kd) |
Texturpfad in .mtl-Datei ergänzen, z.B. map_Kd texture.jpg |
| Read texture map file failed | Texturdatei kann nicht gelesen werden (falscher Pfad, nicht unterstütztes Format) | Prüfen, ob die Texturdatei im Modellordner liegt, im JPG-/PNG-Format vorliegt und der Pfad keine Leerzeichen enthält |
Modell-Dateifehler
Diese Fehler werden meist durch nicht standardkonforme OBJ-Dateien oder Kodierungsprobleme verursacht.
| Log-Information | Fehlerursache | Lösung |
|---|---|---|
| Error in opening OBJ file | Modell-Dateipfad existiert nicht oder keine Leseberechtigung | Dateipfad prüfen, Leseberechtigung sicherstellen |
| Error in reading OBJ file | Dateilesefehler (Nicht-UTF-8-Kodierung, beschädigte Datei) | .obj-Datei im Texteditor öffnen und als UTF-8-kodiert speichern |
| Material not exist | Referenziertes Material in .mtl-Datei nicht gefunden | usemtl-Eintrag in .obj-Datei mit newmtl-Namen in .mtl-Datei abgleichen |
| Vertex format invalid | Ungültiges Vertex-Koordinatenformat (v-Zeile entspricht nicht der Spezifikation) |
Format prüfen: v x y z (z.B. v -4.322898 6.063079 -40.241329), nur numerische Werte verwenden |
| Vertex texture coordinate format invalid | Ungültiges Texturkoordinatenformat (vt-Zeile entspricht nicht der Spezifikation) |
Format prüfen: vt u v (z.B. vt 0.929688 0.094622), Werte müssen zwischen 0-1 liegen |
| Face format invalid | Polygon hat weniger als 3 Vertices (ungültige f-Zeile) |
f-Zeilen prüfen, jedes Polygon muss mindestens 3 Vertices enthalten |
| Both vertex index and vertex texture coordinate index are required | Ungültiges Polygonformat (fehlende Vertex- oder Texturindizes) | Format prüfen: f muss Vertex- und Texturindizes enthalten (z.B. f 1/1 2/2 3/3) |
| Vertex index format invalid | Ungültiger Vertex-Index (Index außerhalb des Bereichs oder nicht ganzzahlig) | Vertex-Indizes in f-Zeilen prüfen, müssen positive Ganzzahlen innerhalb des Vertex-Bereichs sein |
| Vertex texture coordinate index format invalid | Ungültiger Texturkoordinaten-Index | Texturindizes in f-Zeilen prüfen, müssen positive Ganzzahlen innerhalb des Texturkoordinaten-Bereichs sein |
Best Practices
Bei Lade-Fehlern können Sie anhand der obigen Tabellen Informationen zur Fehlerbehebung finden. Grundsätzlich sollten Sie folgende Richtlinien befolgen:
- Wenn Sie Modelle aus Profi-Tools (wie Blender, Maya) exportieren, aktivieren Sie beim Export unbedingt "Materialien schreiben" und "UVs einschließen" (oder ähnliche Optionen). Stellen Sie sicher, dass alle Dateien im selben Ordner liegen.
- Referenzpfade in exportierten Modell-Dateien können absolute Pfade sein. Ändern Sie diese in relative Pfade, verwenden Sie Dateinamen ohne Leerzeichen und stellen Sie UTF-8-Kodierung sicher.
- Detaillierte Anforderungen zu Modell-Formaten und Spezifikationen finden Sie im Kapitel Modellvorbereitung.
Hinweis: Falls das Problem weiterhin besteht, packen Sie Modell-Dateien und Fehlerprotokoll zusammen und wenden Sie sich über das EasyAR-Forum oder den technischen Support an das EasyAR-Team.