Props · 4 min di lettura

Come convertire un GLB in un prop FiveM senza Blender

Leggi in: English · Español · Français · Deutsch · Português · Polski · Türkçe · Русский

GLB to Prop con un modello di rimorchio caricato: la vista 3D con la sua dimensione in metri, e i pannelli di trasformazione, dimensioni e origine

Hai trovato il modello perfetto su Sketchfab, l'hai fatto in Blender o l'hai generato con uno strumento di IA, e lo vuoi sul tuo server FiveM come prop che si può spawnare. La strada di solito passa per Blender, l'add-on Sollumz e CodeWalker, con parecchio da imparare. Puoi farlo anche online in un paio di minuti.

Di cosa è fatto un prop FiveM

Un prop che il gioco può spawnare per nome sono tre file nella cartella stream di una risorsa, più una riga nel suo fxmanifest:

  • .ydr: il modello stesso, con i suoi shader e la sua collisione.
  • .ytd: le sue texture (possono anche stare nel .ydr).
  • .ytyp: il suo archetype, la voce che lo rende un oggetto piazzabile: nome, dimensione, distanza di disegno, dizionario di texture e fisica. (Altro sul .ytyp.)
lua
data_file 'DLC_ITYP_REQUEST' 'stream/my_prop.ytyp'

Un .glb contiene il modello e le sue texture in un solo file, per questo è il formato più semplice da cui partire. Esportalo da Blender come glTF Binary (.glb); un .gltf con file separati non va bene.

Controlla la licenza del modello prima di usarlo. CC Attribution significa che devi citare l'autore, e alcune licenze non permettono l'uso commerciale.

Convertilo passo dopo passo

Apri GLB to Prop e trascina il tuo .glb (oppure premi Try a 1 m test cube per vedere prima come funziona). I GLB compressi (Draco, meshopt, texture KTX2 o WebP) vengono decompressi nel tuo browser prima che venga inviato qualsiasi cosa.

  1. Imposta la dimensione. Il ped freemode sta accanto al tuo modello. Se il modello è in centimetri o millimetri, imposta File units (unità del file); oppure digita la dimensione che vuoi in metri.
  2. Ruotalo. Un modello sdraiato su un lato ha bisogno di un quarto di giro: X +90°. Drop (G) lo appoggia a terra.
  3. Imposta l'origine. Bottom centre (centro in basso) è il valore predefinito: CreateObject mette questo punto alle coordinate che dai, quindi il prop sta in piedi a terra dove lo spawni.
  4. Dagli un nome in lettere minuscole, cifre e _. Usa un prefisso tuo: i nomi che iniziano come quelli del gioco (prop_, v_, p_…) ricevono un avviso, perché potrebbero entrare in conflitto con i modelli di GTA.
  5. Scegli la collisione: Fitted (convex hull) (involucro convesso aderente) va bene per la maggior parte dei prop, Its own triangles (i propri triangoli) per prop e pavimenti su cui si cammina, Box around it (scatola intorno) per casse e blocchi, None (nessuna) per le decorazioni. Scegli anche la Surface (superficie: cemento, metallo, legno…) per i suoni e i segni dei proiettili giusti.
  6. Clicca su Download the FiveM resource (.zip) (scarica la risorsa FiveM).

In Advanced puoi anche tenere le texture dentro il .ydr, rendere le facce bifacciali, impostare la dimensione massima della texture (1024 px di default) e fino a dove viene disegnato il prop (Seen up to, 100 m di default). Spunta Static (can't be pushed) (statico, non può essere spinto) per i prop che non devono mai muoversi.

Mettilo sul tuo server

Lo zip contiene una cartella con il nome del prop, con il suo fxmanifest.lua e i .ydr, .ytd e .ytyp dentro stream/. Metti quella cartella nel tuo resources, aggiungi ensure my_prop al tuo server.cfg e riavvia. La pagina mostra poi il codice per spawnarlo davanti a te:

lua
local model = `my_prop`
RequestModel(model)
while not HasModelLoaded(model) do Wait(0) end
local c = GetEntityCoords(PlayerPedId())
local obj = CreateObject(model, c.x, c.y + 1.0, c.z - 1.0, true, true, false)

Il video tutorial fa tutto con un modello gratuito di Sketchfab, dal download al prop in gioco.

Cosa non fa (ancora)

  • Un solo livello di dettaglio. Il prop viene disegnato per intero finché viene disegnato. Dagli LOD più leggeri dopo con il Prop LOD Builder.
  • Una superficie per prop. Per un prop metallico su un lato e di legno sull'altro, o una collisione disegnata a mano, apri il risultato nel Prop Collision Editor.
  • Niente parti mobili né luci. Il YDR Animation crea prop che si muovono da soli; il Prop Lights mette luci vere su uno di essi.

I modelli molto pesanti (oltre 150.000 triangoli) ricevono un avviso: i giocatori lo sentiranno. I modelli generati dall'IA sono spesso molto più pesanti del necessario.

Domande

Posso convertire un FBX o un OBJ?
Aprilo in Blender (o in qualsiasi app 3D) ed esportalo prima come .glb. GLB to Prop accetta solo .glb.
Funziona con ESX, QBCore e QBox?
Sì. Un prop è un asset in streaming, non uno script: qualunque framework lo spawna per nome.
Perché il mio prop convertito galleggia o affonda?
La sua origine non è dove pensi. Con Bottom centre l'origine è la base del modello, quindi il prop poggia sul punto in cui lo spawni. Altro in la guida alle collisioni.

Lo strumento per questo

GLB to Prop

Trascina il tuo .glb, dimensionalo accanto al ped freemode, scegli la collisione e scarica una risorsa FiveM con il .ydr, il .ytd e il .ytyp.

Apri GLB to Prop

Utile anche qui: Prop LOD Builder · Prop Collision Editor

Ogni strumento è gratis da provare, con 5 esportazioni al giorno. Accedi con Discord per usarli.