https://www.unrealengine.com/onlinelearning-courses/optimizing-geometry-for-real-time
Importando 3d e 2d file l’engine crea asset file, quindi non collega il file originario ==> import non-desctructively
3d files: obj, fbx, usd e datasmith
260 caratteri massima grandezza nome file, compreso il path ==> cercare di tenere vicino a radice disco, non dentro mille cartelle
Renaming T_Wood_D per la texture del diffuse del legno
Defininig 3d geometry requirements
As low poly as possible
Minimize number of material per object
Avoid unnecessary tessellation
Opaque geometry instead of masked mat
Revit => 3d max => UE
Bevel per gli angoli a 90
Togliere le facce che non saranno visibili
Identify common 3d model issue
Fare le uv
Si può testare in ue la qualità della mesh importata:
- Stat fps
Inquadrando le mesh low e high poly si dovrebbe vedere un bel calo quando si è sul high
- Lit>Optimization Viewmodes>quad overdraw I colori indicano la complessità delle mesh
- Windows>statistics > primitive stats
- Incorrect smoothing controllare le normali in blender
- Assegnare i materiali e le varie facce per materiale, fare la density e ruotare le island in modo che siano dritte in blender prima di importare in ue
- Cercare di usare meno material channel possibile per mesh
Modeling Assets With Poly-Count Restrictions
- Dipendono dal sistema che stai usando, ma se stai sviluppando per mobile devi stare very basso
- Meno poligoni possibili
- Aggiungere i dettagli nel materiale
Meglio pochi high poly che tanti low
Esempio con tantissimi infissi di finestra come oggetti duplicati
Se fai windows> statistics c’è un totale di circa 60.000 poligoni, ma gli fps sono bassissimi
Seleziona tutti gli infissi e fa RMB su uno e Merge Actors
Nella finestra che appare, in fondo, checcare replace source actors
Scegli il nome e la posizione, tipo SM_Merged_Infissi nella cartella Meshes
E si torna a 60fps
Tenere le siluette dell’oggetto, ma i dettagli bakearli in marmoset o painter
I muri devono terminare agli angoli <== questa non è chiarissima
UV Mapping fou Unreal Engine
L’uv map è la rappresentazione 2d del oggetto 3d
UVW = XYZ
Take care of scale, position and rotation of every uv map
Ogni mesh ha varie uv map
La prima di solito è del materiale (channel 1)
La seconda è per la lightmap (channel 2)
UV CREATED FOR TEXTURE DO NOT NEED TO BE CONSTRAINT TO THE SIZE OF THE GRID, while lighmaps do need it, ma possono anche essere ruotate male (forse)
Esportiamo l’fbx e lo importiamo in unreal
Anche se avevamo già creato le nostre uv map per texture e per lighmap (channel 1 e 2 in blender, che diventano 0 e 1 in ue) unreal ci propone, nel import mesh window, di creare la lightmp automaticamente.
Conviene farglielo fare, sarà nel channel 3, e forse sarà migliore (più utile) di quella fatta da noi.
Possiamo indicargli sotto, nei detail dello static mesh editor, in general settings> light map coordinate index
Using Datasmith and the datatsmith attributes modifier
Datasmith è fatto da epic ed è un file format che importa tutta una scena in ue
Capire se c’è per blender – NOT YET
Exporting, importing, and reimporting datasmith files