Decimazione della mesh con conservazione della geometria: all'interno del motore di alleggerimento BIM di 3D Expert
La pipeline di prodotto: dove DeSimboloVite di azione
Prima di addentrarci nei dettagli tecnici, ecco come la decimazione della mesh e la rimozione dei dati ridondanti si inseriscono nella pipeline del prodotto 3D Expert. Queste tecnicheUevengono eseguite esclusivamente durante la fase di alleggerimento, mai durante l'estrazione o la resa:
- Plugin 3D/BIM (SOLO Estrazione) — Attualmente sono disponibili 6 componenti aggiuntivi di esportazione nativi per piattaforme CAD/BIM (Revit, Bentley, Tekla, ecc.), basati sulle API ufficiali dei fornitori. Estrae geometria, texture, materiali, alberi strutturali e dati degli attributi da formati nativi (.rvt, .dgn, ecc.) senza alcuna perdita di dati. Output: file intermedio GLZIP (non compresso) + file DB (attributi). Il plugin NON esegue decimazione, compressione o alcuna operazione di alleggerimento: il suo unico scopo è l'estrazione senza perdita di dati da formati proprietari.
- Generatore di file opt (Alleggerimento → output .opt) — Il motore di alleggerimento che esegue la decimazione della mesh, la rimozione dei dati ridondanti, la compressione Draco, la generazione LOD e l'impacchettamento del database degli attributi, tutto sul computer locale dell'utente. Accetta file GLZIP intermedi (dal plugin) o formati aperti (IFC, FBX, STEP, 3DXML, ecc.). Output: modello in formato **.opt** + file DB. Questo è l'UNICO prodotto che genera file .opt per il rendering web successivo.
- 3D Model & Data Asst (Alleggerimento + Rendering Desktop, Win 10+) — Un'applicazione desktop nativa per Windows 10+ che importa file GLZIP (tramite plugin) o formati aperti, esegue la stessa decimazione della mesh e la rimozione dei dati ridondanti di Opt File Generator, quindi renderizza immediatamente il modello con query di proprietà complete, il tutto in un'unica applicazione integrata. NON genera file .opt; è uno strumento per l'utente finale, non un convertitore di file.
- Caricatore Rapid3D per Three.js (Rendering Web) — Un pacchetto npm che legge e carica direttamente modelli in formato .opt (prodotti da Opt File Generator) nelle scene di Three.js. Incorpora un decoder WASM Draco per la decompressione lato browser con streaming progressivo a blocchi. Questa è la fase di rendering: consuma i file .opt, non li produce né li modifica mai.
In breve: il plugin estrae i dati dai formati nativi in un formato intermedio GLZIP. Opt File Generator esegue la decimazione della mesh e la rimozione della ridondanza, generando file .opt per la pubblicazione sul web. 3D Model & Data Asst esegue la stessa operazione di alleggerimento e renderizza direttamente su Windows 10 e versioni successive, senza generare file .opt. Rapid3D Loader legge i file .opt per il rendering sul web.
────────────────────────────────────────────────────────────
Parte I: Decimazione automatica della mesh — Mappatura al prodotto
Semplificazione della geometria basata su QEM
La decimazione automatica della mesh è il processo di riduzione del numero di triangoli preservando l'aspetto visivo del modello e, aspetto fondamentale per il BIM, la sua precisione ingegneristica. Il motore di decimazione di 3D Expert si basa su un algoritmo QEM (Quadic Error Metric) migliorato, potenziato con adattamento in base alla curvatura, protezione dei bordi delle feature, convalida della topologia e conservazione delle UV/texture. Queste funzionalità vengono eseguite da Opt File Generator e 3D Model & Data Asst durante la fase di alleggerimento.
L'impatto sulle prestazioni dei triangoli in eccesso nei modelli BIM:
| Metrica delle prestazioni | Impatto dei triangoli in eccesso | Miglioramento dopo la decimazione |
| Chiamate di sorteggio | Molte mesh disperse causano un'esplosione di chiamate di disegno | Riduzione del 60-80% dopo la fusione delle mesh |
| Memoria GPU | I VBO di dimensioni eccessive causano un overflow della memoria | Numero di vertici ridotto del 50-80%, memoria significativamente inferiore |
| Frequenza dei fotogrammi (FPS) | Il carico di rasterizzazione della GPU porta gli FPS sotto i 30 | 60+ FPS stabili dopo la decimazione |
- Collasso dei bordi basato su QEM: lo standard di settore, perfezionato
La metrica di errore quadratica (QEM), introdotta da Garland e Heckbert nel 1997, rimane lo standard di fatto per la semplificazione delle mesh nelle applicazioni industriali. Il motore di 3D Expert utilizza una variante migliorata della QEM che costruisce una matrice di errore simmetrica 4×4 Q per ogni vertice, accumula i vincoli geometrici di tutti i piani delle facce adiacenti e dà priorità alla riduzione degli spigoli minimizzando l'errore quadratico risultante. Il processo: attraversa tutti gli spigoli, calcola il costo di riduzione per ciascuno, li ordina in una coda di priorità (min-heap) e riduce iterativamente gli spigoli con il costo più basso fino al raggiungimento del numero di triangoli target o della soglia di errore.
- Powered by: Opt File Generator (alleggerimento → output .opt) o 3D Model & Data Asst (alleggerimento + rendering desktop, Win 10+). Input: GLZIP da 3D/BIM Plugin (solo estrazione) o formati aperti (IFC, FBX, STEP, 3DXML)
- Semplificazione adattiva sensibile alla curvatura
Non tutte le superfici tollerano la decimazione allo stesso modo. Le regioni piane (pareti, solai) possono perdere l'80-90% dei loro triangoli con un impatto visivo trascurabile, mentre le aree ad alta curvatura (travi curve, tubi cilindrici, giunti sferici) richiedono una tassellatura più densa per mantenere la fedeltà della forma. Il motore calcola la curvatura media in ogni vertice e applica un fattore di penalità (predefinito 5.0×) ai bordi nelle zone ad alta curvatura, indirizzando la decimazione prima verso le aree piane. La formula finale del costo di collasso integra più pesi: Costo = Errore(v̄) × w_confine × w_curvatura × w_uv × w_caratteristica.
- Offerto da: Generatore di file opt (alleggerimento → output .opt) o Assistente modello e dati 3D (alleggerimento + rendering desktop, Win 10+)
- Protezione dei bordi
I modelli BIM contengono bordi di elementi critici per l'ingegneria: contorni dei componenti, transizioni tra sezioni trasversali e nodi di connessione. La compressione di questi bordi distorcerebbe i profili dei componenti e comprometterebbe l'interpretazione ingegneristica. Il motore rileva e protegge tre categorie: bordi di confine aperti (riferiti da un solo triangolo), bordi di confine del materiale (triangoli adiacenti con ID di materiale diversi) e bordi di piega (variazione dell'angolo normale > 60°). Ai bordi degli elementi viene assegnato un moltiplicatore di peso configurabile (predefinito 10,0-100,0×), che li rende pressoché immuni alla compressione della priorità.
- Basato su: Opt File Generator (alleggerimento → output .opt) o 3D Model & Data Asst (alleggerimento + rendering desktop, Win 10+)
- Conservazione della topologia e validazione della varietà
Ogni collasso degli spigoli viene convalidato rispetto a cinque regole topologiche prima dell'esecuzione: controllo della manifold (nessun spigolo condiviso da 3 o più triangoli), controllo dell'inversione delle normali (le normali delle facce adiacenti non devono invertirsi), controllo della connettività (la mesh non deve dividersi in corpi separati), controllo della degenerazione (nessun triangolo di area zero creato) e controllo dell'autointersezione (la nuova posizione del vertice non deve collidere con la geometria adiacente). I collassi non validi vengono rifiutati e ignorati, garantendo che l'output rimanga una mesh manifold valida, adatta per il rendering successivo, il rilevamento delle collisioni e le operazioni booleane.
- Basato su: Opt File Generator (alleggerimento → output .opt) o 3D Model & Data Asst (alleggerimento + rendering desktop, Win 10+)
- Conservazione delle coordinate UV e della texture del materiale
Le superfici dei componenti BIM spesso presentano mappe di texture dei materiali. Una gestione UV impropria durante la decimazione causa disallineamenti, stiramenti o lacerazioni delle texture. Il motore implementa quattro strategie di protezione UV: blocco dei vertici delle giunture (i vertici sulle giunture UV sono esclusi dal collasso), ponderazione dei bordi del confine UV (costo aggiuntivo per i bordi sul confine UV), interpolazione UV ponderata per i nuovi vertici (basata sui pesi dell'area dei triangoli adiacenti) e blocco del confine del materiale (i bordi che si estendono su ID di materiale diversi non possono essere collassati).
- Offerto da: Generatore di file opt (alleggerimento → output .opt) o Assistente modello e dati 3D (alleggerimento + rendering desktop, Win 10+)
- Ricalcolo normale e gestione dei bordi duri/morbidi
Dopo che il collasso degli spigoli rimuove le facce, le normali dei vertici adiacenti devono essere ricalcolate per una corretta illuminazione. Il motore utilizza il calcolo delle normali ponderato in base all'area: nuova normale = Σ(area del triangolo × normale del triangolo) / Σ area del triangolo. La classificazione degli spigoli duri/morbidi viene applicata automaticamente: se l'angolo normale tra triangoli adiacenti supera i 30° dopo il collasso, lo spigolo viene mantenuto come spigolo duro con normali non interpolate. Per i componenti con mappe normali, i vettori tangenti e bitangenti vengono ricalcolati in modo sincrono.
- Basato su: Opt File Generator (alleggerimento → output .opt) o 3D Model & Data Asst (alleggerimento + rendering desktop, Win 10+)
- Conservazione della simmetria
I componenti BIM presentano tipicamente simmetria (colonne rettangolari, tubi cilindrici, travi a sezione simmetrica). Una decimazione incontrollata può rompere questa simmetria, producendo asimmetrie visivamente sgradevoli. Il motore esegue il rilevamento del piano di simmetria prima dell'inizio della decimazione, identifica le coppie di vertici simmetrici e applica vincoli di collasso sincronizzati, garantendo che entrambi i lati di un componente simmetrico vengano semplificati in modo identico.
- Basato su: Opt File Generator (alleggerimento → output .opt) o 3D Model & Data Asst (alleggerimento + rendering desktop, Win 10+)
I cinque controlli di validazione della topologia eseguiti prima di ogni collasso degli archi:
| Controllo | Descrizione | Azione |
| Controllo del collettore | Il collasso crea un bordo non manifold (3 o più triangoli)? | Rifiuta il collasso |
| Controllo normale del ribaltamento | Le normali delle facce adiacenti si invertono dopo il collasso? | Rifiuta il collasso |
| Verifica della connettività | Il collasso modifica la connettività della rete (corpo diviso)? | Rifiuta il collasso |
| Controllo degenerato | Il collasso crea triangoli ad area zero? | Collasso + rimuovere il degenerato |
| Autointersezione | La nuova posizione del vertice entra in collisione con la geometria adiacente? | Rifiuta il collasso |
────────────────────────────────────────────────────────────
Parte II: Rimozione dei dati ridondanti della mesh — Mappatura al prodotto
Saldatura, rimozione di materiali degenerati e bonifica delle risorse
La decimazione riduce il numero di triangoli, ma gli oggetti mesh esportati dalle piattaforme CAD contengono dati ridondanti aggiuntivi: vertici duplicati, geometria degenerata e risorse non referenziate. Questi elementi non contribuiscono al rendering, ma consumano memoria e rallentano i tempi di caricamento. La pulizia di questi dati dopo la decimazione riduce ulteriormente le dimensioni del modello e migliora le prestazioni in fase di esecuzione.
Test comparativo di saldatura Vertex su diverse tipologie di modelli:
| Tipo di modello | Vertici prima | Vertici dopo | Riduzione |
| Edificio (Torre per uffici) | 4.200.000 | 2.100.000 | 50% |
| Infrastruttura (ponte) | 8.600.000 | 4.900.000 | 43% |
| Industriale (Impianto chimico) | 15.300.000 | 8.700.000 | 43% |
- Saldatura del vertice ridondante (fusione)
Gli esportatori CAD spesso producono più copie di vertici nella stessa posizione spaziale: ogni triangolo contiene dati di vertice indipendenti, le operazioni booleane lasciano residui e gli effetti collaterali della tassellatura generano duplicati. L'algoritmo di saldatura utilizza una griglia hash spaziale per raggruppare i vertici in base alle coordinate quantizzate, quindi esegue una ricerca di prossimità all'interno di ciascun gruppo. Due vertici entro una distanza epsilon (0,001 unità modello predefinite) vengono uniti solo se le loro normali, UV e ID dei materiali sono coerenti; i vertici con attributi diversi (bordi rigidi, cuciture UV) vengono preservati. Gli indici dei triangoli vengono aggiornati per fare riferimento al vertice unito. I dati di benchmark mostrano una riduzione dei vertici del 43-50% su tutti i tipi di modello.
- Basato su: Opt File Generator (alleggerimento → output .opt) o 3D Model & Data Asst (alleggerimento + rendering desktop, Win 10+)
- Rimozione della geometria degenerata
I triangoli degeneri, ovvero quelli con area pari a zero o quasi zero, non contribuiscono al rendering visibile ma occupano spazio nel buffer degli indici. In genere derivano da residui di operazioni booleane o da problemi di precisione della tassellatura. Il motore rileva i degeneri tramite tre criteri: test dell'area zero (area
- Basato su: Opt File Generator (alleggerimento → output .opt) o 3D Model & Data Asst (alleggerimento + rendering desktop, Win 10+)
- Pulizia delle risorse non referenziate
Gli oggetti mesh possono contenere risorse definite ma non referenziate che consumano memoria senza produrre output di rendering. Dopo la decimazione e la saldatura, il motore esegue una scansione completa del conteggio dei riferimenti per ripulire: vertici orfani (conteggio riferimenti = 0), slot dei materiali non utilizzati (nessun riferimento ai triangoli), canali UV vuoti (UV2/UV3 tutti [0,0]), canali normali vuoti (tangente/bitangente tutti [0,0,0]) e canali di colore vuoti (tutti [1,1,1,1]). Questa pulizia riduce l'utilizzo della memoria di un ulteriore 5-10%.
- Basato su: Opt File Generator (alleggerimento → output .opt) o 3D Model & Data Asst (alleggerimento + rendering desktop, Win 10+)
Tipi di risorse non referenziate eliminate durante la fase di post-pulizia:
| Tipo di risorsa | Descrizione | Condizioni di pulizia |
| Vertici orfani | Vertici non referenziati da alcun triangolo | Conteggio riferimenti = 0 |
| Materiali non utilizzati | Slot dei materiali definiti ma non referenziati da triangoli | Conteggio riferimenti materiale = 0 |
| Canali UV vuoti | Canali UV2/UV3 presenti ma tutti a zero | Tutti i valori del canale sono [0,0] |
| Canali normali vuoti | Tutti i canali tangenti/bitangenti sono pari a zero. | Tutti i valori del canale sono [0,0,0] |
| Canali colore vuoti | Canale colore vertice tutto bianco [1,1,1,1] | Tutti i valori del canale sono [1,1,1,1] |
────────────────────────────────────────────────────────────
Parte III: Il processo di elaborazione a cinque fasi
La decimazione della mesh e la rimozione dei dati ridondanti vengono eseguite come fase di elaborazione continua all'interno della pipeline di alleggerimento. Il flusso completo è costituito da cinque fasi sequenziali, eseguite interamente sul computer locale dell'utente da Opt File Generator o 3D Model & Data Asst.

Fase 1: Pre-elaborazione
Il file di input (GLZIP intermedio dal plugin 3D/BIM o formati aperti come IFC, FBX, STEP, 3DXML) viene analizzato e convertito in una struttura dati mesh interna. L'analisi topologica identifica i bordi di confine, i bordi dei materiali e i bordi di discontinuità normale per la marcatura dei bordi degli elementi. Il rilevamento della simmetria identifica i piani di simmetria dei componenti e registra le coppie di vertici simmetrici.
- Input da: Plugin 3D/BIM (estrazione → GLZIP) o formati aperti (IFC, FBX, STEP, 3DXML). Elaborazione da: Opt File Generator o Assistente modello e dati 3D
Fase 2: Pre-pulizia della ridondanza
Prima dell'inizio della decimazione, una prima fase di saldatura dei vertici riduce il carico computazionale successivo. Vengono rimossi i triangoli degeneri e i vertici orfani. Un registro preliminare di pulizia registra il numero di vertici e triangoli eliminati per garantire la tracciabilità delle operazioni.
- Basato su: Opt File Generator (alleggerimento → output .opt) o 3D Model & Data Asst (alleggerimento + rendering desktop, Win 10+)
Fase 3: Decimazione automatica
Le matrici di errore QEM vengono costruite per ogni vertice. I costi di collasso degli archi vengono calcolati con tutti i fattori di ponderazione (contorno, curvatura, UV, caratteristiche). Una coda di priorità min-heap guida il collasso iterativo degli archi dal costo più basso a quello più alto, con convalida della topologia prima di ogni operazione. Il processo si arresta quando viene raggiunto il numero di triangoli target o la soglia di errore massima.
- Basato su: Opt File Generator (alleggerimento → output .opt) o 3D Model & Data Asst (alleggerimento + rendering desktop, Win 10+)
Fase 4: Ripristino della ridondanza dopo la fase di pulizia.
La decimazione può produrre nuovi vertici duplicati (a causa della fusione per collasso degli spigoli), quindi viene eseguita una seconda passata di saldatura. Le risorse non referenziate, come vertici orfani, slot di materiale vuoti e canali vuoti, vengono eliminate tramite scansione del conteggio dei riferimenti.
- Basato su: Opt File Generator (alleggerimento → output .opt) o 3D Model & Data Asst (alleggerimento + rendering desktop, Win 10+)
Fase 5: Post-elaborazione e output
Tutte le normali e le tangenti dei vertici interessati vengono ricalcolate. Le tabelle di mappatura degli ID dei componenti vengono aggiornate per garantire che le query del database degli attributi rimangano corrette. Opt File Generator genera quindi il risultato come file modello in formato .opt + file di attributi del database, pronto per essere utilizzato da Rapid3D Loader sul web. 3D Model & Data Asst salta il passaggio di output .opt e carica il risultato direttamente nel suo renderer desktop integrato su Windows 10 e versioni successive.
- Generatore di file Opt: produce file .opt + DB → Rapid3D Loader (rendering web). Assistenza per modelli e dati 3D: alleggerimento + rendering diretto sul desktop (Windows 10 e versioni successive, nessun output .opt)
────────────────────────────────────────────────────────────
Quale prodotto per quale esigenza?
La decimazione della mesh e la rimozione dei dati ridondanti sono funzionalità comuni offerte da entrambi i prodotti di alleggerimento. La scelta del prodotto dipende da dove si trovano gli utenti finali e da cosa devono fare con il modello:
- State progettando una piattaforma BIM basata sul web o una dashboard per il digital twin?→ Utilizzare il plugin 3D/BIM per estrarre i file nativi .rvt/.dgn in un file intermedio GLZIP, quindi eseguire Opt File Generator per effettuare la decimazione della mesh e la rimozione della ridondanza (output: .opt + DB). Distribuire i file .opt sul server web. Caricarli con Rapid3D Loader per Three.js. I parametri di decimazione possono essere regolati tramite i profili preimpostati di Opt File Generator.
- Fornire modelli BIM ai clienti per la visualizzazione offline su desktop?→ Utilizzare il plugin 3D/BIM per estrarre i dati, quindi consegnare al cliente il modello 3D e l'assistente dati (Windows 10+). Il cliente importa file GLZIP (o formati aperti come IFC/FBX/STEP) e l'applicazione esegue la stessa decimazione e rimozione della ridondanza, quindi renderizza il modello in un'unica esperienza integrata, senza bisogno di file .opt separati.
- È possibile elaborare formati aperti (IFC, FBX, STEP, 3DXML) senza una licenza CAD nativa?→ Salta il plugin. Inserisci i formati aperti direttamente in Opt File Generator per la decimazione in batch e l'output in formato .opt (per il web), oppure in 3D Model & Data Asst per la decimazione interattiva e la visualizzazione su desktop.
- Sia la fruizione via web che quella su desktop?→ Per il web: estrai con il plugin (nativo) o importa formati aperti → Generatore di file Opt (decimazione + output .opt) → Rapid3D Loader. Per desktop: importa GLZIP o formati aperti direttamente in 3D Model & Data Asst (Win 10+) — esegue la decimazione e il rendering in un'unica applicazione, senza bisogno di file .opt.
────────────────────────────────────────────────────────────
Riepilogo tecnologico
| Tecnica | Metodo principale | Conservazione della precisione | Effetto tipico |
| Decimazione della rete | QEM migliorato + collasso dei bordi | Rilevamento della curvatura + bordo caratteristico + controllo topologico | Riduzione del triangolo del 50-85% |
| Saldatura Vertex | Corrispondenza hash spaziale + epsilon | Verifica della coerenza degli attributi | Riduzione dei vertici del 43-50% |
| Rimozione degenerata | Rilevamento dell'area zero / collinearità | Rimuove solo la geometria non valida | Riduzione del triangolo del 2-5% |
| Pulizia delle risorse | scansione del conteggio di riferimento | Rimuove solo le risorse a riferimento zero | Riduzione della memoria del 5-10% |
────────────────────────────────────────────────────────────
Conclusione: perché la precisione è importante
La semplificazione della mesh e la rimozione dei dati ridondanti sono i pilastri portanti dell'alleggerimento dei modelli BIM. La differenza tra un visualizzatore 3D amatoriale e un'applicazione BIM di livello professionale non sta nell'esecuzione della semplificazione, ma nella sua capacità di preservare la precisione ingegneristica. Un semplificatore di mesh generico può ridurre il numero di triangoli in un fine settimana. Sono necessari anni di lavoro ingegneristico dedicato per preservare i bordi degli elementi, mantenere la validità topologica, proteggere le giunzioni UV, rispettare la simmetria e garantire che la precisione dimensionale di ogni componente rimanga intatta durante l'intero processo.
L'approccio di 3D Expert, basato su QEM migliorato con adattamento sensibile alla curvatura, protezione dei bordi delle caratteristiche multicriterio, convalida della topologia a cinque regole e pulizia della ridondanza a doppio passaggio, consente una riduzione dei dati del 70-85% mantenendo la fedeltà geometrica richiesta dai professionisti del settore AEC. E poiché queste tecniche sono integrate sia in Opt File Generator che in 3D Model & Data Asst, si ottiene la stessa precisione sia che gli utenti visualizzino i modelli in un browser tramite Rapid3D Loader, sia su una workstation desktop tramite 3D Model & Data Asst.
────────────────────────────────────────────────────────────
Informazioni sull'azienda
3D Expert Co.,Ltd., con sede a Osaka, in Giappone, sviluppa software 3D/BIM ad alte prestazioni per il settore AEC globale. Il nostro portafoglio prodotti comprende:
- Plugin 3D/BIM — Attualmente sono disponibili 6 componenti aggiuntivi di esportazione nativi per piattaforme CAD/BIM, basati su API ufficiali dei fornitori. Esegue l'estrazione senza perdita di dati di geometria, texture, materiali, alberi strutturali e attributi da formati nativi (.rvt, .dgn, ecc.). Output: GLZIP intermedio. NON esegue compressione, decimazione o alleggerimento.
- Generatore di file Opt: motore di alleggerimento desktop per l'elaborazione batch. Prende in input file GLZIP intermedi (tramite plugin) o formati aperti (IFC, FBX, STEP, 3DXML, ecc.) e applica la decimazione della mesh, la rimozione dei dati ridondanti, la compressione Draco, la generazione di LOD e l'ottimizzazione della mesh sul computer locale dell'utente. Output: modello in formato .opt + database. Questo è l'UNICO prodotto che genera file .opt.
- Assistente per modelli e dati 3D — Applicazione desktop nativa per Windows 10 e versioni successive. Importa file GLZIP (tramite plugin) o formati aperti, esegue la stessa decimazione della mesh e la rimozione della ridondanza di Opt File Generator, quindi renderizza immediatamente il modello con query complete delle proprietà, il tutto in un'unica applicazione integrata. NON genera file .opt.
- Rapid3D Loader per Three.js — pacchetto npm (opt-rapid3d-loader) con decoder WASM Draco integrato, streaming progressivo a blocchi e API di interazione complete. Legge e carica direttamente modelli in formato .opt (prodotti da Opt File Generator) nelle scene di Three.js.
Scopri di più o inizia una prova gratuita su https://www.opt3ds.com/
Contatto: info@3dexpert.jp
© 2010–2026 3D Expert Co.,Ltd. Tutti i diritti riservati.
