dissabte, 6 de desembre del 2025

 



FBX De Blender a Unity sense perdre el cap

 Exportar animacions entre diferents softwares sempre pot donar problemes, en aquest cas explicarem la millor configuració que em trobat per fer-ho des de blender, en el nostre pipeline per fer el videojoc.

Al fer una animació amb blender i exportar-la a UNITY ens podem trobar amb el problema etern: el personatge es veu bé a Blender, però arriba a Unity mirant a terra, gir de 90 graus 

El problema: Blender considera que "Amunt" és l'eix Z, mentre que Unity fa servir l'eix Y.


La finestra d'exportació de FBX de Blender té mil opcions i marcar la incorrecta pot trencar-ho tot.

La solució: Hem d'assegurar-nos que a Blender les transformacions estan aplicades tant a la mesh com al esquelet (Ctrl+A) abans d'exportar. A l'exportador FBX, hem configurat l'opció Apply Scalings a "FBX All" perquè faci la conversió d'eixos correctament sense que haguem de rotar el personatge manualment dins del motor de joc

Ara passem a descriure els "Settings" que ens han donat millor resultat al exportar un FBX d'un personatge que conté 4 animacions separades amb NLA. Que Unity reconeixerà automàticament cada animació per separat en importar-lo.

Apply Scalings: FBX All

És el truc per evitar que el personatge arribi a Unity gegant (escala 100) o diminut (escala 0.01). Això "planxa" l'escala a 1,1,1.

Apply Transform (Experimental): ACTIVAT 

Aquesta és la solució màgica per al problema de la rotació (-90º). "Cuina" la rotació real als vèrtexs perquè el personatge surti dret a Unity sense haver de tocar eixos estranys.

(Si no tens aquesta casella, fem servir Forward: -Y Forward / Up: Z Up).

Smoothing: Face (o Normals Only)

Apply Modifiers: DESACTIVAT  (Molt important)

Tenir-ho activat en personatges amb esquelet (Armature) és un error greu. Si s'activa, Blender intenta "enganxar" l'esquelet a la malla de forma estàtica, trencant les animacions

Triangulate Faces: DESACTIVAT

Add Leaf Bones: DESACTIVAT

Si ho actives, Blender afegeix ossos extra inútils a la punta de cada dit i al cap. Això només serveix per embrutar la jerarquia dins de Unity

Only Deform Bones: ACTIVAT

Així només exportes els ossos que realment mouen la malla, deixant enrere els ossos que Unity no necessita per res.

Bake Animation: ACTIVAT

Key All Bones: DESACTIVAT 

NLA Strips: ACTIVAT

Li diu a l'exportador: "exporta'm els clips separats que he organitzat al NLA Editor".

All Actions: DESACTIVAT

Force Start/End Key: ACTIVAT

Afegeix un keyframe al principi i al final de cada animació per assegurar que els loops (cicles com caminar) quedin perfectes i no facin salts.

Esperem que els nostres aprenentatges a l'hora de fer el videojoc os siguin útils. 

 

Cap comentari:

Publica un comentari a l'entrada

Treball en branques i conflictes

 Treballar en branques diferents sense actualitzar sovint els canvis és un perill. Perquè es poden crear conflictes massius a l’hora de fer ...