Table of Contents

Diagnosi e riparazione: caricamento oggetto fallito

La funzionalità di tracciamento 3D dipende fortemente dalla qualità del modello 3D in input. Quando il caricamento del modello fallisce, EasyAR stampa log di errore dettagliati per aiutare gli sviluppatori a identificare il problema. Questo capitolo elenca cause comuni di fallimento e soluzioni, coprendo problemi di materiali, texture e file di modelli.

Errori nei file di materiali/texture

Questi errori sono solitamente causati da problemi di percorso o formato file.

Informazioni log Causa errore Soluzione
Material file not exist Percorso file materiale (.mtl) inesistente o riferimento errato Verificare l'esistenza del file .mtl nella cartella del modello e che il percorso mtllib nel file .obj sia corretto (percorso relativo)
Current material has no name Definizione materiale priva di nome (newmtl non specificato) Aggiungere un nome a ogni materiale nel file .mtl, es. newmtl Material1
No texture map exists in material Texture non specificata nel materiale (mancano map_Ka o map_Kd) Aggiungere il percorso della texture nel file .mtl, es. map_Kd texture.jpg
Read texture map file failed Impossibile leggere il file texture (percorso errato, formato non supportato) Verificare che il file texture sia nella cartella del modello, in formato JPG/PNG e con percorso senza spazi

Errori nei file modello

Questi errori sono solitamente causati da formati OBJ non standard o problemi di codifica.

Informazioni log Causa errore Soluzione
Error in opening OBJ file Percorso file modello inesistente o permessi insufficienti Verificare il percorso del file e assicurarsi che sia leggibile
Error in reading OBJ file Lettura file fallita (codifica non UTF-8, file danneggiato) Aprire il file .obj con un editor di testo e salvarlo in formato UTF-8
Material not exist Materiale referenziato da una faccia non trovato nel file .mtl Controllare il campo usemtl nel file .obj e assicurarsi che corrisponda ai nomi newmtl nel .mtl
Vertex format invalid Formato coordinate vertice errato (dati riga v non conformi) Verificare il formato v: v x y z (es. v -4.322898 6.063079 -40.241329), assicurarsi siano valori numerici
Vertex texture coordinate format invalid Formato coordinate texture vertice errato (dati riga vt non conformi) Verificare il formato vt: vt u v (es. vt 0.929688 0.094622), assicurarsi siano valori numerici tra 0 e 1
Face format invalid Faccia con meno di 3 vertici (dati riga f non validi) Controllare le righe f, assicurarsi che ogni faccia abbia almeno 3 vertici
Both vertex index and vertex texture coordinate index are required Formato faccia errato (mancano indici vertice o texture) Verificare il formato riga f, assicurarsi includa indici vertice e texture (es. f 1/1 2/2 3/3)
Vertex index format invalid Indice vertice faccia errato (indice fuori range o non intero) Controllare gli indici vertice nelle righe f, assicurarsi siano interi positivi e non eccedano il totale vertici
Vertex texture coordinate index format invalid Indice coordinate texture vertice errato Controllare gli indici texture nelle righe f, assicurarsi siano interi positivi e non eccedano il totale coordinate texture

Best practice

In caso di errori di caricamento, procedere con la verifica seguendo le informazioni nella tabella sopra. Generalmente, è consigliabile seguire queste linee guida di base:

  • Se il modello è esportato da strumenti professionali (es. Blender, Maya), assicurarsi di selezionare "Scrivi materiali" e "Includi UV" (o opzioni simili) durante l'esportazione, e mantenere tutti i file nella stessa cartella.
  • I percorsi referenziati internamente nei file modello esportati potrebbero essere assoluti: convertirli in percorsi relativi, evitare spazi nei nomi file e usare codifica UTF-8.
  • Per requisiti dettagliati su formati e specifiche dei modelli, consultare il capitolo Preparazione del modello.

Suggerimento: se il problema persiste, si consiglia di comprimere i file del modello e i log di errore, quindi richiedere assistenza tramite il forum ufficiale EasyAR o il supporto tecnico.