Vediamo il workflow più semplice per passare un progetto creato con Cinema 4D in Unreal Engine tramite il plugin Datasmith.

Requisiti:
– Cinema 4D S22 o R23+
– Unreal Engine + Datasmith plugin (https://www.unrealengine.com/en-US/datasmith/plugins)

Esempio di scena in Cinema 4D presente nella libreria Content Browser

Dopo aver completato la modellazione e la configurazione di una nostra scena in Cinema 4D, possiamo salvare il file in formato Cineware, tramite il comando apposito che si trova nel menù FILE. Questa modalità di salvataggio, permette la conversione in mesh poligonali di tutti i generatori, cloni, deformatori, ecc. presenti nella scena.
Ricorda che il plugin Datasmith che utilizzeremo in seguito caricherà in Unreal solo le geometrie visibili nella scena; quindi se vuoi ignorare dal processo di importazione qualche oggetto ti basterà nasconderlo in Cinema prima del salvataggio.

Back faces are blue
Verifica delle normali prima di esportare la scena


Inoltre, prima di salvare la scena, è opportuno controllare l’orientamento delle normali dei poligoni, ricordando che in Unreal solo le superfici aventi normali orientate verso la camera saranno visualizzate.

Fatta questa operazione verrà creata nel nostro computer una cartella contenente il file di c4d ed una cartella con tutte le textures utilizzate nella scena.
Apriamo ora Unreal Engine e abilitiamo il plugin DATASMITH C4D IMPORTER tramite la finestra di ricerca EDIT->PLUGIN

Attivazione del Plugin Datamith in Unreal

Dopo averlo abilitato e riavviato Unreal, troveremo il pulsante DATASMITH sulla barra dei comandi in alto.

Prima di procedere con l’importazione, creiamo una cartella di lavoro (ad esempio Scena_C4D) all’interno del Content Browser in modo da mantenere una organizzazione pulita degli asset.

A questo punto siamo pronti per procedere con l’importazione della scena.
Attiviamo il comando DATASMITH e selezioniamo il file di c4d salvato precedentemente.

Attivazione procedura di conversione Datasmith

Selezioniamo la cartella del Content Browser che ospiterà il progetto di Cinema e, nella finestra successiva, gli elementi della scena vogliamo importare (es. luci, oggetti, animazioni, ecc.).

In questa finestra possiamo anche impostare il “range” di risoluzione per la LightMap di Unreal.
E’ consigliabile eventualmente aumentare il range in modo da non ottenere problemi di baking della luce durante la simulazione con UE4.

La scena risulterà così importata e posizionata all’interno della viewport di Unreal

E’ bene considerare che Datasmith crea delle Static Mesh per ciascuna geometria presente nella scena di Cinema 4D.
Quindi se vogliamo che due oggetti di Cinema risultino in Unreal come una unica Static Mesh, dobbiamo utilizzare il comando CONNETTI+CANCELLA in Cinema prima dell’esportazione.

Inoltre, ciascun Asset convertito in UE4 segue la denominazione presente in Cinema.

Tutte le camere presenti nella scena potranno essere convertite in camere di Unreal mentre per la conversione delle fonti luminose il plugin segue questa conversione tipologica:

Alcune ultime considerazioni.
Durante la conversione degli oggetti, il plugin Datasmith converte i nomi conservando l’organizzazione gerarchica impostata in Cinema 4D.
In questa conversione però, vengono mantenuti solo i nomi contenenti caratteri alfanumerici e trattini, mentre eventuali altri simboli presenti saranno convertiti in “_”.
Il Plugin riconosce e converte correttamente anche i Layer presenti in C4D convertendoli in Layer di Unreal.

Infine, come si è già detto prima, la conversione automatica dei generatori può comportare un aumento degli elementi nelle gerarchica degli asset in Unreal che, eventualmente, va corretta dopo.

Cinema 4D cloners become Actors with child Static Mesh Actors

Materiali e animazioni

Per la conversione dei materiali è necessario fare un piccolo approfondimento.
Di default tutti i materiali standard di Cinema vengono convertiti in Materiali di Unreal con alcune eccezioni.
Le texture procedurali (come il noise) e i materiali nodali di Cinema non vengono convertiti.

Se la scena di partenza contiene animazioni (keyframes, dinamiche o mograph) queste vengono convertite in Sequence all’interno di Unreal.

Per maggiori informazioni: https://docs.unrealengine.com/en-US/WorkingWithContent/Importing/Datasmith/SoftwareInteropGuides/Cinema4D/index.html