Release 0.8.8
Questa versione include il caricamento GLTF a runtime, una funzione potente che consente di caricare NFT (token non fungibili) a runtime, permettendo l’integrazione dei servizi di avatar 3D e dei profili di input WebXR per mostrare esattamente il modello di controller giusto per un utente.
Inoltre, le app di Wonderland Engine possono ora essere rese installabili sulla schermata iniziale o sul desktop come progressive web app (PWA) con un clic nelle Impostazioni del Progetto.
Abbiamo nuovamente ottimizzato ulteriormente le prestazioni e corretto alcuni bug, specialmente con l’integrazione PhysX.
Modifiche
Editor
- Implementata l’impostazione della generazione di progressive web app nelle Impostazioni del Progetto
- Implementato il ridimensionamento dell’icona per le progressive web app
- Abilitato l’antialiasing per visulizzazioni physx e oggetti
- Aggiunto “Impostazioni del Progetto > Runtime > visualizzaPhysX”
- Aggiunto supporto opzionale per i tangenti nelle mesh
- Aggiunto supporto opzionale per i colori dei vertici nelle mesh
- Aggiunta un’impostazione per controllare l’intestazione Cross-Origin-Embedder-Policy per il server web
- Aggiunto supporto per il caricamento dei tangenti delle mesh
- Aggiunto ridimensionamento per forme di mesh triangolari e convessi di PhysX
- Risolto il problema dei materiali che non venivano ricompilati dopo che la pipeline cambiava
- Risolto il problema delle texture che caricavano in modo errato immagini con nomi identici nelle scene
- Risolto il fallimento del caricamento delle mesh triangolari e convessi di PhysX
- Risolto il problema delle mesh triangolari di PhysX che apparivano distorte in alcuni casi
- Risolti errori di PhysX non visualizzati in console
- Risolto il crash su messaggi di log molto lunghi
Runtime
- Aggiunto service worker e pre-cache per l’installazione delle progressive web app
- Aggiunto caricamento GLTF/GLB a runtime
- Aggiunta visualizzazione PhysX a runtime
- Risolta una condizione di gara che causava il fallimento del caricamento in rare occasioni
- Risolto il problema dei tempi di delta elevati causati dal passaggio ad un’altra scheda del browser
Motore
- Risolto il problema delle prestazioni degli aggiornamenti di testo che degradavano lentamente con ogni aggiornamento
- Risolto il problema del testo che non si aggiornava quando l’allineamento o la giustificazione cambiavano
- Risolti problemi di skinning quando si mescolavano mesh con attributi id di join singolo e secondario
- Ottimizzato il caricamento delle trasformazioni di skinning su GPU
- Aggiunto supporto al mapping normale allo shader Phong
- Risolto il problema dei corpi rigidi PhysX che a volte non seguivano i genitori o gli oggetti
- Aggiunto supporto per
XRFrame.predictedDisplayTime
sperimentale per animazioni più fluide e fisica dove supportato
JS API
- Aggiunto
WL.scene.append()
per caricare file .glb e .gltf a runtime - Risolti gli ID di oggetti generati con
WL.scene.addObjects()
comenull
dopo aver chiamatoWL.Object.destroy()
- Risolto l’accesso ad alcune proprietà di
WL.Material
- Aggiunto
WL.Texture.updateSubImage()
per aggiornare solo una sottoregione di una texture - Risolto
active: false
che non aveva effetto inWL.Object.addComponent
con tipi nativi - Risolto
WL.Object.translateWorld()
che non calcolava la trasformazione mondiale per trasformazioni sporche - Risolti gli oggetti creati con
WL.Scene.addObject()
che non venivano impostati come sporchi se impostati come figli
Componenti
- video-texture: abilita
crossOrigin
quando si carica il video - howler-audio-source: interrompe l’audio quando si cambia scena
- two-joint-ik-solver: migliorata stabilità e aggiunto parametro helper opzionale
- target-framerate: aggiunto componente per aggiornare il framerate target dell’XRSession