Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Motore epico Unreal
Unreal Engine è uno strumento di creazione 3D in tempo reale per immagini fotorealistiche ed esperienze coinvolgenti. Unreal Engine è supportato da Deadline Cloud con mittenti, pacchetti conda e un adattatore per migliorare le prestazioni di rendering. Questa guida fornisce istruzioni dettagliate per utilizzare Deadline Cloud con Unreal Engine per rendere più velocemente i progetti Movie Render Queue distribuendo le attività di rendering su più macchine.
Panoramica del supporto
Unreal Engine è supportato dai seguenti componenti:
-
Submitter: plug-in di invio integrato per l'invio diretto di lavori da Unreal Engine con rilevamento automatico di scene e risorse.
-
Pacchetti Conda: Deadline Cloud per l'installazione automatica su flotte gestite dai servizi.
-
Adattatore: middleware per un rendering efficiente con sessioni permanenti e monitoraggio aggiuntivo.
-
Cross-platform compatibilità: supporto submitter e worker solo per Windows.
-
Integrazione Movie Render Queue: Supporto per il sistema Movie Render Queue di Unreal.
Compatibilità della versione di Unreal Engine
La tabella seguente mostra gli attuali livelli di supporto per le versioni di Unreal Engine:
| Versione principale | Supporto per i mittenti | Supporto Conda |
|---|---|---|
| 5.4 | Windows | Windows |
| 5.5 | Windows | Windows |
| 5.6 | Windows | Windows |
| 5.7 | Windows | Windows |
Canale Deadline Cloud Conda
La tabella seguente elenca tutti i pacchetti conda applicabili a Unreal Engine disponibili per le Service-managed flotte nel canale conda: deadline-cloud
| Sistema operativo | Pacchetto | Versione |
|---|---|---|
| Windows | unreal-engine | 5.4 |
| Windows | unreal-engine | 5.5 |
| Windows | motore irreale | 5.6 |
| Windows | motore irreale | 5.7 |
| Windows | unreal-engine-openjd |
Nozioni di base
Prerequisiti
Prima di installare l'Unreal Engine submitter, assicurati di avere quanto segue:
-
Workstation Windows (Windows 10 o versione successiva)
-
Versione supportata di Unreal Engine installata
-
Deadline Cloud monitor installato (scarica qui)
-
Accesso a una Deadline Cloud farm con una flotta gestita dai servizi GPU-enabled Windows o una flotta gestita dal cliente con Unreal Engine, l'adattatore Unreal Engine e la configurazione delle licenze
Installazione del mittente
Il mittente di Unreal Engine aggiunge la funzionalità Deadline Cloud come plug-in per Unreal Engine, consentendoti di inviare i lavori di Movie Render Queue direttamente a Deadline Cloud per il rendering.
Scelta della filiale
Seleziona la filiale appropriata per la tua implementazione:
| Ramo | Stabilità | Caso d’uso | Consigliato per |
|---|---|---|---|
| rilascio | Stabile | Produzione | La maggior parte degli utenti |
| linea principale | Funzionalità più recenti | Sviluppo e test | Utenti avanzati |
Suggerimento
Utilizza il ramo di rilascio per gli ambienti di produzione per garantire la stabilità.
Creazione di una nuova istanza Windows Amazon EC2 su cui installare Unreal (opzionale)
Se stai configurando una nuova istanza Windows Amazon Elastic Compute Cloud (Amazon EC2) come mittente, un'istanza g5.2xlarge con 200 GB di spazio di archiviazione è un minimo ragionevole:
Avvia un'istanza Amazon EC2 con un profilo di istanza valido. Ciò è necessario per scaricare i driver NVIDIA GRID come indicato di seguito.
-
Scarica Epic Installer e installa una versione supportata di Unreal (5.4 - 5.7).
UE 5.5 presenta un noto bug di arresto anomalo quando viene eseguito con il plug-in DirectX 11 (vedi il numero UE-276282 UE #). Se hai bisogno del supporto DirectX su UE 5.5, usa DirectX 12 o versione successiva.
Driver NVIDIA GRID: segui le istruzioni di installazione di Windows.
Percorsi lunghi di Windows
Molti dei passaggi seguenti possono creare file che superano la lunghezza massima del percorso predefinita di Windows. Prima di creare e installare il mittente o l'adattatore Deadline Cloud for Unreal Engine su un computer Windows, ti consigliamo di abilitare il supporto a lungo termine di Windows. A tale scopo, segui le istruzioni nella pagina Limitazione massima del percorso dei file
Esiste anche un problema aperto sul worker agent
Installazione degli strumenti di compilazione
Il plugin Unreal submitter attualmente deve essere compilato localmente.
Installa Visual Studio utilizzando Visual
Studio Installer. Verifica che la versione di Visual Studio e degli strumenti di compilazione sia compatibile con la tua versione di Unreal controllando la tabella di compatibilità di Epic
. In Componenti individuali, assicurati che la versione degli strumenti di compilazione MSVC selezionata («Più recente» per impostazione predefinita) corrisponda alla versione consigliata nella tabella. Anche se la guida alla compatibilità può suggerire una versione «o successiva», a volte si verificano errori di compilazione quando si utilizza una versione più recente di quella indicata come «consigliata».
In Componenti individuali, seleziona un SDK.NET Framework recente (4.6.1 e 4.8.1 sono stati verificati).
In Carichi di lavoro, seleziona Sviluppo desktop con C++.
Installazione del monitor Deadline Cloud
Deadline Cloud monitor viene utilizzato sia per gestire le credenziali per l'invio di lavori a Deadline Cloud sia per monitorare lo stato dei lavori.
Segui le istruzioni di installazione del monitor Deadline Cloud.
Accedi.
Configurazione dell'ambiente
(Se non è già installata) Installa una versione recente di Python per tutti gli utenti (verificata con 3.12).
-
Assicurati che le variabili di ambiente siano impostate correttamente. Nelle variabili di ambiente di sistema, il tuo PATH deve includere:
Il percorso dell'installazione di Python (ad esempio,
C:\Program Files\Python312).Il percorso della cartella Python Scripts (ad esempio,).
C:\Program Files\Python312\scriptsIl percorso dei file binari Unreal (ad esempio,).
C:\Program Files\Epic Games\UE_5.5\Engine\Binaries\Win64
Installazione del software Deadline Cloud
Clona o scarica deadline-cloud-for-unreal-engine dal ramo di rilascio o dalla linea principale, a seconda che desideri la versione testata più recente o tutti i commit più recenti.
git clone https://github.com/aws-deadline/deadline-cloud-for-unreal-engine.git cd deadline-cloud-for-unreal-engine git switch release
Facoltativo: crea e installa il plugin con lo script
Uno script di supporto scripts/build_plugin.py facoltativo automatizza i due passaggi successivi. Tenta di trovare l'ultima versione di Unreal, crea le dipendenze del plugin e di Python e le installa nelle posizioni corrette. Puoi sovrascrivere impostazioni come la versione Unreal. Per vedere l'elenco completo degli aiuti, esegui:
python scripts/build_plugin.py -h
Per creare e installare la tua copia attuale di deadline-cloud-for-unreal-engine come mittente con l'ultima installazione di Unreal Engine, esegui:
python scripts/build_plugin.py --install
Se hai eseguito correttamente l'installazione con questo script, puoi passare a. Creare una flotta
Crea il plugin
Modifica i primi due percorsi seguenti in base a dove risiede l'installazione di Unreal e a dove l'hai installatadeadline-cloud-for-unreal-engine.
Dalla cartella Unreal Install Batchfiles (il package parametro può essere qualsiasi nuova directory, tuttavia vorrai che venga chiamata in seguito): UnrealDeadlineCloudService
cd C:\Program Files\Epic Games\UE_5.5\Engine\Build\BatchFiles runuat.bat BuildPlugin -plugin="C:\deadline\deadline-cloud-for-unreal-engine\src\unreal_plugin\UnrealDeadlineCloudService.uplugin" -package="C:\UnrealDeadlineCloudService"
Copia la cartella «package» qui sopra nella cartella Plugins dell'installazione di Unreal (ad esempio,). C:\Program Files\Epic Games\UE_5.5\Engine\Plugins\UnrealDeadlineCloudService
Dipendenze in Python
Esistono 4 modi per installare le dipendenze Python richieste.
1. Se hai creato e installato il plugin dal ramo di rilascio precedente, puoi installarlo da pip. Usa il seguente comando di installazione, regolando i percorsi dell'installazione di Unreal:
"C:\Program Files\Epic Games\UE_5.5\Engine\Binaries\ThirdParty\Python3\Win64\python" -m pip install deadline-cloud-for-unreal-engine --target "C:\Program Files\Epic Games\UE_5.5\Engine\Plugins\UnrealDeadlineCloudService\Content\Python\libraries"
2. In alternativa, nel tuo .uplugin file (nei passaggi precedenti si potrebbe usareC:\Program Files\Epic Games\UE_5.5\Engine\Plugins\UnrealDeadlineCloudService\UnrealDeadlineCloudService.uplugin) puoi aggiungere una PythonRequirements sezione che corrisponda all'ultima versione di deadline-cloud-for-unreal-engine in GitHub/PyPI, ad esempio:
"PythonRequirements": [ { "Platform": "All", "Requirements": [ "deadline-cloud-for-unreal-engine>=0.5.0" ] } ]
Potresti voler disattivare la funzione «strict hash» nelle impostazioni Python di Unreal o aggiungere impostazioni hash per specifiche versioni di libreria e dipendenze che desideri utilizzare.
3. Se state usando la linea principale potreste avere dipendenze da Python che non sono ancora state rilasciate a PyPI: dovrete creare e installare la vostra copia locale, che può essere eseguita con hatch. Il .whl file dovrà essere modificato per riflettere la versione generata da hatch build:
pip install hatch hatch build "C:\Program Files\Epic Games\UE_5.5\Engine\Binaries\ThirdParty\Python3\Win64\python" -m pip install dist\deadline_cloud_for_unreal_engine-0.2.2.post21-py3-none-any.whl --target "C:\Program Files\Epic Games\UE_5.5\Engine\Plugins\UnrealDeadlineCloudService\Content\Python\libraries"
4. Infine, le dipendenze Python possono essere installate dal programma di installazione del submitter. Queste potrebbero non essere aggiornate rispetto al codice riportato sopra, proveniente dalla release o dal ramo mainline, e questo metodo al momento non dovrebbe essere preferito.
Scarica il programma di installazione del mittente dalla scheda Download della console Deadline Cloud AWS o dal monitor Deadline Cloud in Configurazione della workstation → Download.
Esegui il programma di installazione per tutti gli utenti. La posizione di installazione predefinita va bene.
Abilita il plugin Unreal Engine.
Assicurati che il percorso di installazione del plug-in Unreal Engine corrisponda al percorso in cui è stato copiato il plug-in (in particolare assicurati che la versione di Unreal corrisponda).
Notifiche di aggiornamento
Il plugin submitter verifica automaticamente la presenza di nuove versioni all'avvio di Unreal GitHub Editor. Se è disponibile un aggiornamento, una finestra di dialogo ti chiederà di visitare la pagina di rilascio.
Per disattivare le notifiche di aggiornamento, deseleziona Mostra notifiche di aggiornamento del mittente in Impostazioni generali nel pannello delle impostazioni di Deadline Cloud (Modifica > Impostazioni del progetto > Plugin > Deadline Cloud).
In alternativa, puoi usare la CLI:
deadline config set settings.submitter_update_notification false
Per riattivare:
deadline config set settings.submitter_update_notification true
Creare una flotta
Se disponi già di un parco sistemi Windows e non hai bisogno di configurarne uno nuovo, puoi passare aInvio di un rendering di prova.
Creazione di una flotta gestita dai servizi (SMF)
Segui la guida per l'utente delle flotte gestite dai servizi per creare una SMF se non ne hai già una. Nelle flotte gestite dai servizi (SMF), l'Unreal Engine e l'adattatore sono automaticamente disponibili utilizzando il canale conda con l'ambiente di coda predefinito. deadline-cloud Sei pronto per iniziare il rendering. Continua con la Invio di un rendering di prova pagina seguente per inviare un lavoro di rendering di prova.
Creazione di una flotta gestita dal cliente (CMF)
-
Segui Crea una flotta gestita dal cliente per creare un CMF se non ne hai già uno.
avvertimento
Quando associ il tuo CMF alle code, rimuovi l'ambiente di coda conda predefinito se non lo usi. Ciò impedirà l'utilizzo dell'ambiente conda e l'utilizzo accidentale delle SMF-specific variabili predefinite per i lavori inviati al CMF. Se utilizzi conda nel tuo CMF, ricordati di aggiornare
CondaPackagesleCondaChannelsvariabili in Parameter Definition Overrides durante l'invio del lavoro. Segui la configurazione e la configurazione dell'host di lavoro per configurare un host di lavoro.
Segui Gestisci l'accesso ai segreti degli utenti del lavoro di Windows per configurare i segreti degli utenti del lavoro di Windows per il tuo lavoratore CMF.
Segui Installa e configura il software richiesto per i lavori per installare il software necessario per eseguire i lavori.
Segui Configurazione di un addetto alla flotta gestita dal cliente (CMF) per configurare il tuo nodo di lavoro per eseguire i job di Unreal Engine.
Invio di un rendering di prova
Questo esempio utilizza la demo di Meerkat dell'Unreal Marketplace:
Avvia il launcher di Epic Games.
Installa la demo di Meerkat dalla scheda Esempi.
Crea un progetto dalla demo di Meerkat, quindi aprilo.
Dal menu Modifica, seleziona Plugin, cerca e abilita. UnrealDeadlineCloudService
Riavvia Unreal se hai abilitato il plugin per la prima volta.
-
In Modifica > Impostazioni del progetto, cerca la sezione Movie Render Pipeline.
Per Default Remote Executor, selezionate. MoviePipelineDeadlineCloudRemoteExecutor
Per Default Executor Job, selezionare MoviePipelineDeadlineCloudExecutorJob.
In Default Job Settings Classes, scegli l'icona di aggiunta e aggiungi DeadlineCloudRenderStepSetting.
-
Cerca le impostazioni di Deadline Cloud e verifica l'autenticazione:
Assicurati che il tuo stato sia «AUTENTICATO» e che l'API di Deadline Cloud mostri «AUTORIZZATO».
Se non viene visualizzato, prova prima a utilizzare il pulsante Login. Se non funziona, apri Deadline Cloud Monitor e assicurati di aver effettuato l'accesso.
-
Nella sezione Configurazione di Deadline Cloud Workstation:
In Impostazioni globali, assicurati che il tuo profilo AWS sia impostato correttamente sul tuo profilo di monitoraggio Deadline Cloud.
In Profilo, assicurati che la tua fattoria predefinita sia impostata sulla tua fattoria.
In Fattoria, assicurati che la coda predefinita sia impostata su una coda associata alla flotta che hai impostato sopra.
Esci dalla finestra Impostazioni del progetto.
-
Scegliete Windows, Cinematics, Movie Render Queue.
Scegliete + Render e selezionate. Main_SEQ
-
Scegliete UnsavedConfignella colonna delle impostazioni.
Nella finestra popup, dovresti vedere le impostazioni di Deadline Cloud sulla sinistra. Questa finestra può quindi essere chiusa.
-
Sul lato destro della finestra di dialogo, configura le impostazioni del lavoro:
-
In Preset Overrides (potrebbe essere necessario ampliare questa finestra di dialogo):
-
Espandi le impostazioni Job Shared:
Impostare Name (Nome) su
Unreal Test Job.Imposta il numero massimo di tentativi su 2.
-
Espandi Job Attachments:
In File di input, seleziona Mostra Auto-Detected.
Verifica che l'elenco dei file rilevati automaticamente venga compilato correttamente.
-
-
In Job Template Overrides:
-
Aggiorna la versione di Unreal Engine CondaPackagesse utilizzi una versione diversa dalla 5.6.
Il rilevamento automatico della versione di Unreal Engine arriverà in una versione futura.
-
-
Scegliete Render (Remote).
Puoi andare su Deadline Cloud Monitor e guardare lo stato di avanzamento del tuo lavoro.
Configurazione di un addetto alla flotta gestita dal cliente (CMF)
Questa sezione illustra come configurare un'istanza Amazon EC2 come worker CMF per Deadline Cloud con Unreal Engine.
Panoramica di
Di seguito sono riportate le principali differenze tra CMF e SMF:
CMF: installazione manuale di Unreal Engine e dell'adattatore sugli host di lavoro.
SMF: disponibilità automatica tramite il canale conda.
deadline-cloud
Scelta della filiale
Seleziona la filiale appropriata per la tua implementazione:
| Ramo | Stabilità | Caso d’uso |
|---|---|---|
| rilascio | Stabile | Implementazioni di produzione |
| linea principale | Più recente | Sviluppo e test |
Importante
Assicurati che la tua versione di lavoro corrisponda a quella del mittente per evitare problemi di compatibilità.
Configurazione dell'istanza Amazon EC2
Di seguito è riportata la configurazione dell'istanza consigliata:
Tipo di istanza: g5.2xlarge o superiore.
Archiviazione: minimo 200 GB.
Sistema operativo: Windows Server 2019/2022.
Installazione del software
1. Installa Unreal Engine:
Scarica il launcher di Epic Games.
-
Installa Unreal Engine 5.4 o versioni successive.
Nota
Unreal Engine 5.4+ è necessario per la compatibilità con Deadline Cloud.
2. Installa i driver NVIDIA GRID:
Segui la guida all'installazione del driver AWS NVIDIA GRID.
Necessario per il GPU-accelerated rendering su istanze Amazon EC2.
Installazione degli strumenti di compilazione
Il plugin Unreal attualmente deve essere compilato localmente.
Installa Visual Studio utilizzando il programma di installazione di Visual Studio
. Verifica che la versione di Visual Studio e degli strumenti di compilazione sia compatibile con la tua versione di Unreal controllando la tabella di compatibilità di Epic
. In Componenti individuali, assicurati che la versione degli strumenti di compilazione MSVC selezionata («Più recente» per impostazione predefinita) corrisponda alla versione consigliata nella tabella.
In Componenti individuali, seleziona un SDK.NET Framework recente (4.6.1 e 4.8.1 sono stati verificati).
In Carichi di lavoro, seleziona Sviluppo desktop con C++.
Installazione del software Deadline Cloud
Clona o scarica deadline-cloud-for-unreal-engine dal ramo di rilascio o dalla linea principale. Assicurati che la tua versione di lavoro delle librerie sia compatibile con la versione utilizzata dai mittenti.
git clone https://github.com/aws-deadline/deadline-cloud-for-unreal-engine.git cd deadline-cloud-for-unreal-engine git switch release
Facoltativo: crea e installa plugin e dipendenze con lo script:
Esiste uno script di supporto scripts/build_plugin.py che può automatizzare i passaggi di installazione rimanenti. Tenta di trovare l'ultima versione di Unreal, creare le dipendenze tra plugin e python e installarle nelle posizioni corrette. Impostazioni come la versione di Unreal da utilizzare possono essere sovrascritte. Per vedere l'elenco completo degli aiuti, esegui:
python scripts/build_plugin.py -h
Per creare e installare la tua copia corrente di deadline-cloud-for-unreal-engine come worker con l'ultima installazione di Unreal Engine, esegui:
python scripts/build_plugin.py --install --worker
Configura l'agente di lavoro Deadline Cloud eseguendo:
install-deadline-worker ^ --farm-id FARM_ID ^ --fleet-id FLEET_ID ^ --region REGION ^ --allow-shutdown
Se hai installato con questo script e configurato correttamente il worker agent, puoi passare a. Avvio del servizio worker agent di Deadline Cloud
python -m pip install deadline-cloud-worker-agent
È necessario installare la versione corretta dell'adattatore a seconda della versione del mittente utilizzata. Se stai usando la versione del mittente dalla filiale di rilascio GitHub, puoi semplicemente installarla con pip:
python -m pip install deadline-cloud-for-unreal-engine
Se utilizzi la versione principale o una versione personalizzata in fase di sviluppo del mittente, per evitare problemi di compatibilità ti consigliamo di compilare e installare dalla stessa versione di codice o di trasferire il file dalla build del mittente: .whl
pip install hatch hatch build python -m pip install dist\my-built-wheel.whl
Creazione del plugin
Modifica i primi due percorsi seguenti in base a dove risiede l'installazione di Unreal e a dove l'hai installatadeadline-cloud-for-unreal-engine.
Dalla cartella Unreal Install Batchfiles (il package parametro può essere qualsiasi nuova directory, tuttavia vorrai che venga chiamata in seguito): UnrealDeadlineCloudService
cd C:\Program Files\Epic Games\UE_5.5\Engine\Build\BatchFiles runuat.bat BuildPlugin -plugin="C:\deadline\deadline-cloud-for-unreal-engine\src\unreal_plugin\UnrealDeadlineCloudService.uplugin" -package="C:\UnrealDeadlineCloudService"
Copia la cartella «package» qui sopra nella cartella Plugins dell'installazione di Unreal (ad esempio,). C:\Program Files\Epic Games\UE_5.5\Engine\Plugins\UnrealDeadlineCloudService
pywin32
La versione di Python di Unreal avrà bisogno di pywin32. Installazione di Pip utilizzando una copia dell'installazione Python di terze parti di Unreal:
"C:\Program Files\Epic Games\UE_5.5\Engine\Binaries\ThirdParty\Python3\Win64\python" -m pip install pywin32
Avvio del servizio worker agent di Deadline Cloud
Sulla tua istanza di lavoro CMF:
Apri Task Manager.
Scegli la scheda Servizi sulla destra.
-
Trova DeadlineWorker.
Se non lo vedi nell'elenco, probabilmente hai saltato i passaggi (
install-deadline-workerin particolare) dei passaggi di configurazione dell'host CMF.
Se lo stato del servizio non è attualmente «In esecuzione», fai clic con il pulsante destro del mouse e seleziona Avvia.
-
Se il DeadlineWorker servizio non si avvia, controlla i registri di avvio del worker agent in queste posizioni:
C:\ProgramData\Amazon\Deadline\Logs\worker-agent.logC:\ProgramData\Amazon\Deadline\Logs\queue-<queueid>\session-<sessionid>.log
Gestione delle credenziali Force
Questa sezione tratta la gestione sicura delle credenziali per l'integrazione di Perforce con i lavoratori di Deadline Cloud.
Panoramica di
Esistono diversi approcci per configurare le credenziali Perforce per i lavoratori di Deadline Cloud. Ogni metodo ha implicazioni di sicurezza e casi d'uso diversi:
| Metodo | Livello di sicurezza | Supporto all'implementazione | Uso consigliato |
|---|---|---|---|
| AWS Secrets Manager (Secrets Manager) | Elevata | SMF + CMF | Produzione (consigliata) |
| Variabili dell'ambiente Job | Bassa | SMF + CMF | Solo sviluppo e test |
| Variabili di ambiente di coda | Bassa | SMF + CMF | Solo sviluppo e test |
| Registro di sistema di Windows | Media | Solo CMF | Configurazioni CMF precedenti |
| Pre-configured utente amministratore | Media | Solo CMF | Configurazioni CMF semplificate |
Importante
Usa Secrets Manager per gli ambienti di produzione. Fornisce uno storage centralizzato e crittografato delle credenziali con audit trail e funziona con implementazioni SMF e CMF.
Nozioni di base sulle credenziali P4
Per recuperare le impostazioni di connessione, inclusi l'URL e la porta del server Perforce, il nome utente e la password, Perforce segue la seguente priorità:
Parametri di connessione in qualsiasi framework per Perforce (P4) (ad esempio).
p4python.P4User/system variabili di ambiente:
P4PORT,,P4USER,P4CLIENT.P4PASSWDRegistro di Windows:
HKEY_LOCAL_MACHINE\SOFTWARE\Perforce\Environment(impostazioni a livello di sistema) oHKEY_CURRENT_USER\SOFTWARE\Perforce\Environment(impostazioni specifiche dell'utente).
Con queste priorità, se hai la seguente configurazione:
Il parametro di connessione
passwordèpassword.from.connectionLa variabile di ambiente
%P4PORT%èssl:perforce.from.env:1666Il registro di Windows
HKEY_CURRENT_USER\SOFTWARE\Perforce\Environment:P4PORTèssl:perforce.from.registry:1666Il registro di Windows
HKEY_CURRENT_USER\SOFTWARE\Perforce\Environment:P4USERèuser.from.registryIl registro di Windows
HKEY_CURRENT_USER\SOFTWARE\Perforce\Environment:P4PASSWDèpassword.from.registry
La connessione Perforce risultante sarà:
Port = ssl:perforce.from.env:1666 User = user.from.registry Password = password.from.connection
Secrets Manager (consigliato)
Secrets Manager fornisce la soluzione più sicura e scalabile per le implementazioni CMF e SMF.
Questa funzionalità fornisce i seguenti vantaggi:
Sicurezza centralizzata: archivia tutte le credenziali P4 in un'unica posizione crittografata.
Nessuna esposizione delle credenziali: le credenziali non vengono mai visualizzate nelle configurazioni di lavoro o nei registri.
Rotazione automatica: Supporta la rotazione delle credenziali senza riconfigurazione del lavoro.
Audit trail: monitora l'accesso e l'utilizzo delle credenziali.
Supporto universale: funziona con implementazioni CMF e SMF.
Redazione dei registri: le credenziali di connessione vengono automaticamente cancellate nei registri dei lavori.
Fase 1: Creare un segreto in Secrets Manager
Crea un segreto contenente i parametri di connessione Perforce.
Coppie chiave-valore richieste:
P4PORT- URL e porta del server Perforce.P4USER- Nome utente Perforce.P4PASSWD- Password Perforce.
Importante
I nomi delle chiavi devono corrispondere esattamente ai parametri di connessione P4 per funzionare. deadline-cloud-for-unreal-engine
Esempio segreto:
{ "P4PORT": "ssl:your-perforce-server.com:1666", "P4USER": "your-perforce-username", "P4PASSWD": "your-perforce-password" }
Per creare il segreto:
Apri la console Secrets Manager.
Scegli «Memorizza un nuovo segreto».
Seleziona «Altro tipo di segreto».
Inserisci le coppie chiave-valore riportate sopra.
Assegna un nome al tuo segreto (ad esempio,
deadline-cloud-p4-credentials).Completa il processo di creazione.
Fase 2: concedere al lavoratore l'accesso al segreto
I lavoratori hanno bisogno secretsmanager:GetSecretValue dell'autorizzazione per accedere al segreto. Ciò segue lo stesso schema utilizzato per la gestione dei segreti degli utenti dei job di Windows.
Per concedere l'accesso:
Apri la console Secrets Manager e accedi al tuo segreto.
-
Nella sezione «Autorizzazioni per le risorse», aggiungi questa politica:
{ "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "QUEUE_ROLE_ARN" }, "Action": [ "secretsmanager:GetSecretValue" ], "Resource": "*" } ] } Sostituisci
QUEUE_ROLE_ARNcon l'ARN del ruolo di coda effettivo.Salva la politica.
Nota
Salva il nome segreto: ti servirà per configurare i lavori di rendering P4. Vedi Creazione di un lavoro di rendering Perforce i passaggi successivi.
Variabili dell'ambiente Job
avvertimento
Questo approccio non è consigliato per la produzione in quanto espone le credenziali nelle configurazioni e nei log dei processi. Usa Secrets Manager per gli ambienti di produzione.
È possibile passare le credenziali di connessione all'interno dell'ambiente di lavoro in cui avviene la creazione dell'area di lavoro, ad esempio in p4_sync_smf_environment, ugs_sync_smf_environment o ambienti simili
name: P4Credentials variables: P4PORT: ssl:my-perforce.com:1666 P4USER: j.doe P4PASSWD: MyVeRyS3cretP4ssW0rd
Questo approccio presenta i seguenti rischi per la sicurezza:
Le credenziali sono visibili nelle configurazioni dei lavori.
Le password possono apparire nei registri (non cancellate automaticamente).
Nessuna gestione centralizzata delle credenziali.
Difficile ruotare le credenziali.
Variabili di ambiente di coda
avvertimento
Questo approccio non è consigliato per la produzione in quanto memorizza le credenziali nelle configurazioni di coda. Usa Secrets Manager per una gestione sicura delle credenziali.
Secondo la guida per l'utente di Deadline Cloud, puoi utilizzare gli ambienti di coda per fornire applicazioni software, variabili di ambiente e altre risorse ai lavori in coda. Gli esempi di ambiente di coda sono disponibili nella cartella queue_environments
Aggiungi un ambiente di coda utilizzando il monitor o la console Deadline Cloud
Apri Deadline Cloud monitor o la console AWS.
Vai alla fattoria e mettiti in coda con cui stai lavorando.
Seleziona la scheda Ambienti di coda.
Scegli Azione e seleziona Crea nuovo con YAML.
-
Aggiungi quanto segue e salva:
specificationVersion: environment-2023-09 name: P4Credentials variables: P4PORT: ssl:my-perforce.com:1666 P4USER: j.doe P4PASSWD: MyVeRyS3cretP4ssW0rd
Aggiungi un ambiente di coda tramite CLI
Crea un
p4_credentials.yamlfile con l'esempio precedente.-
Esegui il comando CLI di seguito:
aws deadline create-queue-environment \ --farm-id FARM_ID \ --queue-id QUEUE_ID \ --priority 1 \ --template-type YAML \ --template file://p4_credentials.yaml
Registro di Windows (solo CMF)
Importante
Questa soluzione è adatta solo per CMF, dove è possibile configurare direttamente gli host di lavoro. Per le implementazioni SMF, usa Secrets Manager.
Il registro di Windows fornisce l'archiviazione locale delle credenziali sulle macchine di lavoro. Questo metodo utilizza il sistema di priorità Perforce standard in cui le credenziali sono archiviate in:
HKEY_LOCAL_MACHINE\SOFTWARE\Perforce\Environment(impostazioni a livello di sistema).HKEY_CURRENT_USER\SOFTWARE\Perforce\Environment(impostazioni specifiche dell'utente).
Questo approccio è adatto solo per le implementazioni CMF in cui è possibile accedere direttamente alla configurazione delle macchine di lavoro.
Pre-configured utente amministratore (solo CMF)
Importante
Questa soluzione è adatta solo per CMF, dove è possibile configurare direttamente gli host dei lavoratori. Per le implementazioni SMF, usa Secrets Manager.
Crea un utente P4 dedicato per i nodi di rendering con una connessione senza scadenza per eliminare la necessità di passare dati segreti come nomi utente e password. In questo caso, è possibile utilizzare un singolo utente P4 dedicato per connettersi a tutti i server P4, inclusi i server Commit (Master) ed Edge in cui è accessibile il depot del progetto.
Pertanto, è sufficiente passare la porta a cui connettersi, se l'impostazione predefinita non è configurata sui worker. Ciò può essere ottenuto aggiungendo quanto segue nell'ambiente di lavoro o nell'ambiente di coda, in modo simile ai passaggi documentati sopra:
name: P4Sync variables: P4PORT: ssl:my-perforce.com:1666
Creazione di un lavoro di rendering Perforce
Questa sezione illustra la configurazione degli asset di dati dei lavori di Perforce-integrated rendering in modo da poter inviare i lavori di Perforce-integrated rendering a Deadline Cloud da Unreal Engine.
Prerequisiti
Prima di inviare un lavoro Movie Render Queue (MRQ) da Unreal Engine in un repository Perforce:
Configurazione del progetto Unreal:
Il progetto deve trovarsi all'interno dell'area di lavoro Perforce.
Verifica che la connessione Perforce sia stabilita e che tu abbia effettuato l'accesso.
Configurazione Deadline Cloud:
Completo Installazione del mittente.
Configurazione Gestione delle credenziali Force per i lavoratori.
Requisiti obbligatori:
Spazio di lavoro Perforce valido con file di progetto.
Autorizzazioni Perforce appropriate per le operazioni di sincronizzazione.
Architettura del lavoro di rendering Perforce
I lavori di rendering P4 estendono il lavoro di rendering standard con funzionalità di sincronizzazione Perforce:
Deadline Cloud Perforce render job ├── Environments │ ├── Apply Perforce Credentials from Secrets Manager │ ├── Sync Perforce Environment (CMF/SMF) │ │ └── Initializes Perforce workspace and syncs repository on workers │ └── Launch UE Environment │ └── Starts Unreal Engine with Perforce workspace paths └── Steps └── Render Step └── Executes Movie Render Queue process
Principali differenze rispetto ai lavori standard:
Gestione delle credenziali: applicazione di credenziali Secure Perforce di Secrets Manager.
Sincronizzazione del repository: ambiente di sincronizzazione Perforce aggiuntivo per la gestione dell'area di lavoro.
Risoluzione del percorso: le variabili di ambiente fanno riferimento ai percorsi dell'area di lavoro Perforce.
Raccolta delle dipendenze: raccolta e sincronizzazione automatiche delle risorse. Perforce-tracked
Configurazione dei componenti del processo di rendering Perforce
Segui questi passaggi per creare le risorse di dati richieste per i lavori di Perforce-integrated rendering.
1. Crea la risorsa dati Apply Perforce Credentials
Configura un ambiente OpenJD per recuperare le credenziali Perforce da Secrets Manager e applicarle alla connessione Perforce.
Nota
Le variabili di ambiente vengono visualizzate nei log con il openjd_env prefisso, ma i dati sensibili (porta, utente, password) vengono automaticamente oscurati per motivi di sicurezza.
Fasi di configurazione:
-
Crea una nuova risorsa di dati Deadline Cloud Perforce Environment.
Assegna un nome descrittivo alla risorsa di dati (ad esempio, "«). ApplyP4SecretEnv
Seleziona il
p4_apply_secrets_environment.ymlmodello daContent/Python/openjd_templates/p4/.-
Configura il riferimento segreto:
Inserisci il nome segreto della tua credenziale Perforce in AWS_SECRET_P 4INFO.
Dovrebbe corrispondere al nome segreto creato in. Gestione delle credenziali Force
2. Crea una risorsa di dati dell'ambiente di sincronizzazione Perforce
Configura un ambiente OpenJD per creare uno spazio di lavoro Perforce, sincronizzare i file dal server Perforce e ripulire l'area di lavoro dopo il rendering.
Passaggi di configurazione:
Crea una nuova risorsa di dati Deadline Cloud Perforce Environment.
-
Assegna un nome alla risorsa di dati in base al tipo di flotta:
P4SyncSMFEnvper una flotta gestita dai servizi (SMF).
P4SyncCMFEnvper una flotta gestita dal cliente (CMF).
-
Seleziona il modello appropriato tra:
Content/Python/openjd_templates/p4/SMF:
p4_sync_smf_environment.yml.CMF:.
p4_sync_cmf_environment.yml
-
Configura il riferimento segreto:
Inserisci il nome segreto della tua credenziale Perforce in AWS_SECRET_P 4INFO.
Deve corrispondere al segreto del passaggio 1.
3. Crea una risorsa di dati ambientali Perforce Launch UE
Configura un ambiente OpenJD per il lancio di Unreal Engine con l'integrazione di Perforce. Questo fa automaticamente riferimento all'area di lavoro Perforce creata dall'ambiente di sincronizzazione.
Fasi di configurazione:
Crea una nuova risorsa di dati di Deadline Cloud Environment.
Assegna un nome alla risorsa di dati in modo descrittivo (ad esempio, "P4LaunchUEEnv«).
Seleziona il
p4_launch_ue_environment.ymlmodello daContent/Python/openjd_templates/p4/.-
Configura le impostazioni dell'ambiente:
Imposta REMOTE_EXECUTION su.
TrueQuesta impostazione abilita le funzionalità di rendering remoto.
4. Crea una risorsa di dati Perforce Render Step
Imposta una fase di rendering di OpenJD per l'esecuzione del processo di rendering.
Fasi di configurazione:
-
Crea una nuova risorsa di dati Deadline Cloud Render Step.
Assegna un nome descrittivo alla risorsa di dati (ad esempio, "«). P4RenderStep
Seleziona il
p4_render_step.ymlmodello daContent/Python/openjd_templates/p4/.
5. Crea una risorsa di dati del processo di rendering Perforce
Imposta un processo di rendering OpenJD che orchestra l'intero flusso di lavoro di rendering.
Fasi di configurazione:
-
Crea un nuovo asset di dati Deadline Cloud Render Job.
Assegna un nome descrittivo alla risorsa di dati (ad esempio, "«). P4RenderJob
Seleziona il
p4_render_job.ymlmodello daContent/Python/openjd_templates/p4/.-
Rivedi le definizioni dei parametri: il modello include questi parametri con i loro comportamenti predefiniti:
Parametro Description Auto-filled Operazione richiesta ProjectRelativePathPercorso del progetto relativo alla radice del workspace Perforce Sì Lascia vuoto - compilato automaticamente ProjectNameNome del progetto per la creazione dell'area di lavoro Perforce Sì Lascia vuoto - compilato automaticamente PerforceChangelistNumberElenco modifiche Perforce con cui sincronizzare l'area di lavoro Sì Lascia vuoto - compilato automaticamente PerforceWorkspaceSpecificationTemplateSpecifiche del client Perforce con token {workspace_name}Sì Lascia vuoto - compilato automaticamente MrqJobDependenciesDescriptorFile JSON con dipendenze MRQ per la sincronizzazione Sì Lascia vuoto - compilato automaticamente ExtraCmdArgsFileFile per args aggiuntivi (evita il limite di 1024 caratteri) No Facoltativo: usa il valore predefinito per le configurazioni standard FramesPerTaskNumero di fotogrammi da renderizzare per attività No Facoltativo: utilizzate default (0) per dividere le attività per scatti ExtraCmdArgsArgomenti aggiuntivi per il lancio di Unreal No Facoltativo: usa l'impostazione predefinita per le configurazioni standard ExecutableNome eseguibile irreale per il nodo di rendering No Configura: utilizza l'impostazione predefinita per le configurazioni standard CondaPackagesPacchetti Conda necessari per eseguire il lavoro No Configura: usa l'impostazione predefinita per le configurazioni standard CondaChannelsCanali Conda in cui sono archiviati i pacchetti No Configura: utilizza l'impostazione predefinita per le configurazioni standard ChunkSizeNumero di scatti raggruppati in una singola sessione di rendering No Configura: impostazione predefinita: 1 (ottimizzato per le prestazioni) MarketplacePluginsDirPercorso verso i plugin Marketplace del motore Sì Lascia vuoto - compilato automaticamente Linee guida per la configurazione dei parametri:
Auto-populated parametri: lasciali vuoti: vengono compilati automaticamente durante l'invio del lavoro.
Parametri manuali: rivedi i valori predefiniti e modificali in base ai tuoi requisiti specifici.
ChunkSize: Inizia con 1, aumenta per ottenere prestazioni migliori con scatti semplici.
-
Configura gli ambienti (in questo ordine esatto):
Ordine Ambiente Scopo Primo giorno "ApplyP4SecretEnv" Applica le credenziali Perforce da Secrets Manager 2° "P4SyncSMFEnv" o "P4SyncCMFEnv» Sincronizza l'area di lavoro e i file di Perforce 3° "P4LaunchUEEnv" Avvia Unreal Engine con percorsi Perforce Importante
L'ordine dell'ambiente è essenziale per una corretta risoluzione delle dipendenze e un corretto flusso di credenziali.
-
Aggiungi fase di rendering: aggiungi "P4RenderStep" alla sezione Steps.
Best practice
Pre-submission lista di controllo
Credenziali: credenziali Perforce configurate correttamente (vedi). Gestione delle credenziali Force
Spazio di lavoro: la specifica include tutte le mappature delle viste necessarie.
Test: esegui un test con una piccola attività di rendering prima di inviare lavori di grandi dimensioni.
Dipendenze: verifica che tutte le dipendenze del progetto siano in Perforce e accessibili.
Autorizzazioni: conferma che i ruoli dei lavoratori abbiano accesso a Secrets Manager.
Ottimizzazione delle prestazioni
Configurazione della dimensione del blocco:
| Dimensione del blocco | Caso d’uso | Impatto sulle prestazioni |
|---|---|---|
| 1-2 colpi | Scatti complessi, è necessaria una revisione dettagliata | Produttività inferiore, controllo di qualità superiore |
| 4-8 colpi | Carico di lavoro bilanciato, progetti tipici | Equilibrio ottimale tra velocità e gestibilità |
| Più di 10 colpi | Scatti semplici, elaborazione in batch | Produttività massima, sovraccarico minimo |
Considerate le seguenti ottimizzazioni aggiuntive:
Dipendenze: riduci al minimo le dipendenze non necessarie tra risorse per ridurre i tempi di sincronizzazione.
Visualizzazioni dell'area di lavoro: ottimizza le visualizzazioni dell'area di lavoro Perforce per sincronizzare solo i file necessari.
Monitoraggio e debug
Job logs: monitora il processo di sincronizzazione di Perforce nei log di esecuzione del lavoro.
Stato dell'area di lavoro: verifica la creazione dell'area di lavoro e il completamento della sincronizzazione.
Raccolta delle dipendenze: verifica che tutte le risorse richieste siano state acquisite.
Metriche delle prestazioni: tieni traccia dei tempi di sincronizzazione e delle prestazioni di rendering.
Risoluzione dei problemi
Problemi e soluzioni comuni
| Problema | Caratteristiche | Soluzione |
|---|---|---|
| Errori di connessione P4 | Errori di autenticazione, timeout | Verifica le credenziali Perforce; controlla la connettività di rete; convalida l'accessibilità del server Perforce |
| Errori di sincronizzazione dell'area di lavoro | Errori di sincronizzazione, autorizzazione negata | Controlla le autorizzazioni degli utenti Perforce; verifica le specifiche dell'area di lavoro; assicurati che esista l'elenco delle modifiche |
| Dipendenze mancanti | Errori di rendering, risorse mancanti | EsaminaMrqJobDependenciesDescriptor; controlla la raccolta di riferimenti software; verifica tutte le risorse in Perforce |
| Problemi di risoluzione dei percorsi | Errori relativi al file non trovato | Verifica la P4_CLIENT_DIRECTORY variabile, controlla l'ordine dell'ambiente, convalida i percorsi principali dell'area di lavoro |
Fasi di debug
Controlla i registri dei lavori: consulta i log dell'ambiente di sincronizzazione Perforce per messaggi di errore dettagliati.
Convalida dell'area di lavoro: assicurati che le specifiche dell'area di lavoro Perforce siano corrette.
Esegui il test in locale: verifica che le operazioni Perforce funzionino dal computer mittente.
Verifica le autorizzazioni: verifica che i ruoli di lavoro abbiano accesso segreto (se usi Secrets Manager).
Requisiti di host personalizzati
Questa sezione descrive come creare e utilizzare requisiti di host personalizzati per il rendering di Deadline Cloud in Unreal Engine.
Panoramica di
I requisiti dell'host definiscono quale flotta è idonea a eseguire una particolare fase di rendering. Sono archiviati all'interno di una UDeadlineCloudHostRequirements risorsa, a cui fa poi riferimento una DeadlineCloudRenderStep risorsa.
| Tipo di requisito | Ubicazione di configurazione | Caso d’uso |
|---|---|---|
| Requisiti di sistema di base | Campi CPU/RAM/ GPU | Limita il rendering a macchine con hardware specifico |
| Requisiti di importo personalizzati | Nome + min/max valori | Richiedi livelli di risorse numerici (licenze, token, quote) |
| Requisiti degli attributi personalizzati | Attributo + lista valori | Attributi personalizzati richiesti sulle flotte per eseguire la fase |
Nota
Se si nasconde un requisito utilizzando l'icona a forma di occhio, lo si nasconde solo nell'interfaccia utente di MRQ Submit. Il requisito si applica ancora quando si invia il lavoro.
Importante
AttributeI valori Name and utilizzati per i requisiti di importo personalizzati e i requisiti degli attributi personalizzati devono corrispondere rigorosamente agli identificatori validi definiti nella documentazione ufficiale di Open Job Description: Open Job Specifications
Fase 1: Creare la risorsa Host Requirements
Apri Content Browser in Unreal Engine.
Crea una nuova risorsa: Aggiungi → Varie → Risorsa dati →. DeadlineCloudHostRequirements
Assegna un nome alla risorsa, ad esempio.
MyHostRequirements
Fase 2: Caricare il modello YAML predefinito
Nel pannello dei dettagli della risorsa, individua il campo Path to Template.
Seleziona il modello predefinito:
Plugins/UnrealDeadlineCloudService/Content/Python/openjd_templates/host_requirements.yml.
Questo carica requisiti di base come CPU, memoria, GPU, sistema operativo e architettura.
Nota
I requisiti di base non possono essere rimossi; è possibile modificare solo i relativi valori.
Fase 3: Configurazione dei requisiti di base (di sistema)
| Impostazione | Esempio |
|---|---|
| Sistema operativo | windows |
| Architettura della CPU | x86_64 |
| vCPU (min) | 16 |
| GPU (min) | 1 |
Se Max = 0, non esiste un limite massimo per tale requisito.
Fase 4: Aggiungere requisiti di importo personalizzati
Utilizzato quando il requisito è numerico (ad esempio, numero di licenze, limiti di concorrenza).
Trova la sezione Requisiti di importo personalizzati.
Aggiungi una nuova voce e imposta un nome, per esempio:
amount.custom.license.-
Imposta i valori Min e Max:
Min: 1.
Massimo: 0 (0 significa illimitato).
Fase 5: Aggiungere requisiti di attributo personalizzati
Utilizzato per filtrare i lavoratori in base a tag ed etichette.
Trova la sezione Requisiti degli attributi personalizzati.
Aggiungi un nuovo nome di attributo, per esempio:
attr.custom.gpu.vendor.-
Scegli la regola di corrispondenza:
AllOf- tutti i valori devono corrispondere.
AnyOf- almeno uno deve corrispondere.
Immettere i valori degli attributi separati da spazi, ad esempio:
nvidia amd.
Fase 6: Visibilità in MRQ (opzionale)
Ogni immissione del requisito ha un'icona a forma di occhio.
| Occhio | Comportamento |
|---|---|
| Visible (Visibile) | Il requisito è mostrato nell'interfaccia utente di MRQ Submit |
| Hidden | Il requisito è nascosto ma è comunque incluso al momento dell'invio del lavoro |
Questa impostazione è utile per semplificare l'interfaccia utente per gli artisti preservando al contempo i vincoli tecnici.
Fase 7: Allegare i requisiti a una fase di rendering
Aprite la
DeadlineCloudRenderSteprisorsa pertinente.Trova il campo Requisiti dell'host.
Assegna la risorsa creata (ad esempio,
MyHostRequirements).
Tutti gli invii MRQ che utilizzano questo passaggio ora applicano la logica di selezione dell'host.
Riepilogo
Utilizzando la risorsa Host Requirements, puoi:
Controlla quali macchine worker eseguono i tuoi lavori di rendering.
Specificate i livelli minimi di risorse.
Scegli come target pool di lavoratori specifici utilizzando la corrispondenza degli attributi.
Semplifica l'interfaccia utente mantenendo intatte le regole tecniche.
Riutilizza le impostazioni in più fasi MRQ.
Questa configurazione migliora la coerenza del routing dei lavori e garantisce che il rendering avvenga sull'hardware corretto.
Configurazioni avanzate.
Service-managed flotte e flotte gestite dai clienti
Service-managed flotte (SMF)
Nelle flotte gestite dai servizi, l'Unreal Engine e l'adattatore sono automaticamente disponibili utilizzando il canale deadline-cloud conda con l'ambiente di coda predefinito. Questa configurazione offre l'esperienza più semplice.
Customer-managed flotte (CMF)
Per le flotte gestite dai clienti, Unreal Engine e l'adattatore devono essere installati manualmente sugli host dei lavoratori. Questa configurazione offre un maggiore controllo e supporta funzionalità aggiuntive come l'integrazione con Perforce. Per istruzioni dettagliate, vedi Configurazione di un addetto alla flotta gestita dal cliente (CMF).
Funzionalità di rendering di Unreal Engine
Il sistema di rendering di Unreal Engine fornisce un supporto completo per:
| Funzionalità | Description | Note |
|---|---|---|
| Coda di rendering dei filmati | High-quality rendering offline | Integrazione con l'invio dei lavori |
| Sequencer | Timeline-based sistema di animazione | Rilevamento ed elaborazione automatici dei colpi |
| Plugin di progetto | Supporto per plugin personalizzati | Rilevamento e inclusione automatici |
| Dipendenze dagli asset | Gestione dei file di contenuto | Monitoraggio completo delle risorse |
| Rendering appiccicoso | Persistenza dell'applicazione tra gli scatti | Prestazioni migliorate per sequenze con più riprese |
Tutte le funzionalità di rendering vengono rilevate e configurate automaticamente dal mittente integrato di Unreal Engine. L'adattatore mantiene la corretta gestione delle dipendenze e supporta un rendering efficiente in più riprese senza riavviare Unreal Engine.
Risorse open source
Il mittente e l'adattatore sono open source e disponibili su: GitHub