Miglioramenti e modifiche - Note di rilascio di Lumberyard

Miglioramenti e modifiche

Lumberyard 1.4 include i seguenti aggiornamenti a livello di sistema e funzionalità:

Personaggi e animazioni

  • Geppetto

    • Perforce è ora completamente integrato e ciò ti consente di aggiungere e salvare i file.

    • Il tempo necessario per ricaricare e importare in tempo reale il framework CAF è stato ridotto.

    • Quando viene aggiunto il primo evento di animazione all'animazione di un personaggio, un file ANIMEVENTS viene automaticamente generato e aggiunto all'elenco di animazioni del personaggio.

  • FBX Settings (Impostazioni FBX)

    • I file FBX ora sono caratterizzati da tempi di caricamento migliorati.

    • La classe CgfExporter è stata sottoposta a refactoring per ottimizzare l'affidabilità del codice e supportare la personalizzazione.

Cinematica

  • Track View ora supporta più nodi Comment (Commento) per Director (Regia) o Sequence (Sequenza).

  • La finestra di dialogo Render Output (Output di rendering) ora supporta i file .tiff.

  • La finestra di dialogo Render Output (Output di rendering) ora supporta il rendering di immagini con un canale alfa esistente e ciò semplifica le procedure di compositing di immagini mediante software di compositing esterni.

Cloud Canvas

  • L'SDK AWS per Python (Boto3) 1.2.1 è ora disponibile nella directory \Tools\AWSPythonSDK ed è sempre presente. In passato era un punto di giunzione creato da Lumberyard Setup Assistant (Assistente configurazione Lumberyard) (disponibile nella directory \Code\SDKs\AWSPythonSDK).

  • Python ora è disponibile nella directory \Tools\Python ed è sempre presente. In passato era un punto di giunzione creato da Lumberyard Setup Assistant (Assistente configurazione Lumberyard) (disponibile nelle directory \Code\SDKs\Python, \Code\Sandbox\SDKs\Python e \Code\Tools\SDKs\Python).

  • AWS Native (C++) SDK è stato aggiornato alla versione 0.12.16.

  • Lumberyard Editor (Editor Lumberyard) (Editor Lumberyard) e tutti gli strumenti ora utilizzano Python 2.7.11.

GameLift

  • I parchi istanze di GameLift ora possono eseguire più di un processo server in ciascuna istanza Amazon EC2. Grazie a questa modifica ora puoi configurare un parco istanze per l'esecuzione di più processi dello stesso server dei giochi in una istanza, per eseguire più server dei giochi diversi nella stessa istanza oppure per entrambi gli scenari. Questo miglioramento offre maggiore controllo sulle modalità di utilizzo della risorsa GameLift, può aiutare a ridurre i costi di hosting dei giochi e garantisce migliori tempi di risposta in caso di dimensionamento per gestire i nuovi giocatori. Sono state apportate le seguenti modifiche per supportare più processi:

    • Nell'SDK/CLI AWS per GameLift:

      • CreateFleet() dispone di un nuovo parametro, RuntimeConfiguration, che contiene la configurazione per uno o più processi server. Questo parametro sostituisce i parametri ServerLaunchParameters e ServerLaunchPath. Inoltre il parametro CreateFleet() dell'operazione EC2InboundPermissions ora ha una funzione leggermente diversa: per supportare più processi, ciascun processo server ora specifica il proprio numero di porta, all'avvio, e deve essere compreso nell'intervallo specificato con questo parametro del parco istanze.

      • Nuove operazioni API: DescribeRuntimeConfiguration e UpdateRuntimeConfiguration.

      • Nuove strutture di dati: RuntimeConfiguration e ServerProcess. Un oggetto RuntimeConfiguration è una raccolta di configurazioni di processi server per un parco istanze. Un oggetto ServerProcess identifica il percorso di avvio e i parametri per un file eseguibile del server nella build, nonché specifica il numero di processi server di questo tipo deve eseguire simultaneamente.

      • Le strutture di dati GameSession e PlayerSession ora includono il numero di porta per un processo del server dei giochi.

      • La struttura di dati FleetUtilization ora include ActiveServerProcessCount.

    • Nell'SDK del server GameLift:

      • ProcessReady() e ProcessReadyAsync() dispongono di nuovi parametri per supportare più processi, inclusi i parametri relativi al numero di porta e ai log. Inoltre, i parametri ora sono inclusi in una struttura ProcessParameters e vengono passati per riferimento.

    • Nella console Amazon GameLift:

      • La pagina per la creazione di un nuovo parco istanze ora richiede un'impostazione di configurazione di runtime che includa almeno una configurazione del processo server.

      • Non è più possibile specificare il percorso dei file di log per un parco istanze. I percorsi dei log delle sessioni di gioco ora devono essere passati a GameLift da ciascun processo server nella chiamata ProcessReady(). Se devi specificare i percorsi di log per un parco istanze, utilizza il comando di AWS CLI CreateFleet().

      • Nella pagina dei dettagli del parco istanze ora sono visualizzati il numero di server attivi, le istanze e le sessioni di gioco. È inoltre disponibile una nuova scheda Capacity allocation (Allocazione capacità), dove sono elencate tutte le configurazioni dei processi server incluse nella configurazione di runtime del parco istanze.

      • La pagina dei dettagli del parco istanze (scheda Metrics (Parametri)) ora include le statistiche dei processi server a livello di parco istanze, inclusi il numero di processi attualmente attivi, le attivazioni, le chiusure e così via.

  • Sono state apportate le seguenti modifiche per supportare la nuova caratteristica relativa ai controlli dello stato:

    • Nell'SDK del server GameLift: ProcessReady() e ProcessReadyAsync() ora ha il nome di una funzione opzionale di callback del controllo dello stato (onHealthCheck()). Implementa questa funzione, se necessario, per restituire lo stato di integrità di un processo.

    • Nella console Amazon GameLift, la pagina dei dettagli del parco istanze (scheda Metrics (Parametri)) include le statistiche sullo stato dei processi server a livello di parco istanze, tra cui il numero di processi integri e la percentuale dei processi attivi totali risultati integri.

  • Nell'SDK del server GameLift, la nuova operazione API GetSdkVersion() recupera l'attuale versione dell'SDK come stringa.

  • Nell'SDK del server GameLift, in ActivateGameSession(), il parametro maxPlayers è stato rimosso. Il numero massimo di giocatori per una sessione di gioco è impostata nella richiesta client per una sessione di gioco (consulta l'API GameLift CreateGameSession()).

  • La build di un gioco caricata in GameLift non richiede più di un file install.bat.

Pacchetti gem

  • L'uso di lmbr.exe per creare pacchetti gem ora genera messaggi di errore, se necessario. Ad esempio, viene visualizzato un messaggio di errore quando cerchi di abilitare un pacchetto gem che non esiste.

  • I pacchetti gem nuovi ed esistenti ora utilizzano IMPLEMENT_AZ_TEST_SCANNER_HOOK. In passato, i pacchetti gem utilizzavano GEM_IMPLEMENT_TEST_RUNNER. È consigliabile aggiornare i pacchetti gem generati dall'utente in modo che utilizzino IMPLEMENT_AZ_TEST_SCANNER_HOOK e AzTest.h.

Lumberyard Editor (Editor Lumberyard)

  • Se non è configurata una telecamera integrata nel gioco quando viene abilitata la modalità di gioco, viene utilizzata la telecamera dell'editor. Premi Esc per tornare alla modalità di modifica con le impostazioni della telecamera utilizzate prima dell'attivazione della modalità di gioco.

  • L'editor ora supporta nomi di percorso relativo per i file di input quando è attiva la modalità batch. Ad esempio, i nomi di percorso relativo sono supportati per l'esportazione di tutti i livelli utilizzando un file batch.

  • Le prestazioni di Lumberyard Editor (Editor Lumberyard) sono state ottimizzate quando Material Editor è aperto.

  • Sono ora supportate le seguenti scelte rapide da tastiera per gli elementi terreno, vegetazione e modelli di foro:

    Modify Terrain (Modifica terreno)
    Increase (Aumenta) Decrease (Riduci)
    Outside radius (Raggio esterno) ] [
    Inside radius (Raggio interno) Maiusc + ] Maiusc + [
    Smooth hardness (Rifinisci durezza) . ,
    Flatten height (Livella altezza) . ,
    Toggle between Flatten and Smooth (Attiva/disattiva ridefinizione/livellamento) Alt
    Switch from Flatten to Pick Height (Passa da Livella altezza a Seleziona altezza) Premi e tieni premuto Ctrl

    Layer Paint (Colore livello)
    Increase (Aumenta) Decrease (Riduci)
    Radius ] [
    Hardness (Durezza) Maiusc + ] Maiusc + [

    Vegetation Paint (Colore vegetazione)
    Increase (Aumenta) Decrease (Riduci)
    Radius ] [

    Hole Paint (Colore foro)
    Increase (Aumenta) Decrease (Riduci)
    Radius ] [

Material Editor

  • Il controllo dei movimenti nel viewport ora è simile al controllo dell'editor principale.

  • Gli aggiornamenti apportati a griglia, asse e illuminazione di default nella finestra di anteprima ora produce una migliore visualizzazione delle mappe speculari e normali.

Mobile

  • Gli script per la creazione di pacchetti di shader sono stati aggiornati in modo da consentirne il funzionamento con progetti diversi. Questa modifica richiede un intervento di modifica minimo degli script.

Reti

  • Il nodo Twitch:API:GET ora restituisce messaggi di errore più significativi e consente di migliorare la risoluzione dei problemi.

  • Il componente Trigger Area (Area di attivazione) ora è abilitato per la rete.

  • Il pacchetto gem Multiplayer ora include:

    • Un componente Multiplayer Lobby (Lobby multiplayer) di esempio.

    • Codice di sessione di rete Cry. Devi includere il pacchetto gem Multiplayer in qualsiasi progetto multiplayer che utilizza lo shim della rete Cry.

    • Nodi del grafico dei flussi GameLift. Questi nodi non sono più disponibili nel pacchetto gem GameLift.

  • GridMate ora include UuidMarshaler per consentire l'esecuzione del marshalling degli ID univoci globali (UUID).

  • Ora puoi utilizzare i blocchi di replica senza una sessione attiva.

Particle Editor (Editor di particelle)

  • Ora puoi spostare le particelle e le cartelle tra librerie.

  • Ora puoi rimuovere le librerie che contengono particelle.

Project Configurator (Configuratore progetto)

  • Project Configurator (Configuratore progetto) (Configuratore progetto) non richiama più lmbr.exe, ma condivide il codice e ciò migliora la messaggistica di errore.

  • Ora puoi eseguire un'integrazione più rapida con più pacchetti gem.

Requisiti di sistema

  • Driver supportati per PC:

    • Driver Nvidia versione 368.81 (4095 MB)

    • Driver AMD versione 16.15.2211 (1517 KB)

UI Editor (Editor IU)

  • UI Editor (Editor IU) (Editor IU) ora dispone dell'integrazione del controllo del codice sorgente per canvas, prefab e sprite dell'interfaccia utente.

  • UI Editor (Editor IU) (Editor IU) ora salva gli stati espansi, visibili e selezionati per ciascun elemento nel file di canvas dell'interfaccia utente.

  • UI Editor (Editor IU) (Editor IU) ora memorizza la posizione e le dimensioni di ciascuna finestra secondaria ancorabile.

  • L'editor UI Animation (Animazione interfaccia utente) ora è un riquadro ancorabile all'interno della finestra UI Editor (Editor IU).

  • Gli elementi dell'interfaccia utente ora possono essere bloccati nella finestra UI Editor (Editor IU) (Editor IU) in modo da impedirne la selezione nel viewport.

  • Quando la trasformazione di un elemento dell'interfaccia utente è controllata da un componente layout padre, le proprietà di trasformazione dell'elemento non sono più visualizzate o modificabili nel riquadro Properties (Proprietà).

  • Il browser di file per la selezione di texture e sprite ora è limitato ai file includi nel progetto e ai relativi pacchetti gem. Puoi trascinare i file dal riquadro di visualizzazione File Browser (Browser di file).

  • Il componente Text (Testo) ora supporta la funzionalità di ritorno a capo automatico delle parole e di testo ritagliato.

  • Il tipo di carattere di default per il componenti Text (Testo) ora è chiamato default-ui.

  • Il pacchetto gem UiBasics ora dispone di carattere aggiuntivi: Vera Sans, Vera Sans Bold, Vera Sans Italix e Vera Sans Bold Italic.

  • L'esempio FontRendering disponibile in FeatureTests è stato esteso in modo da includere diversi tipi di carattere.

  • Lo sprite Border Editor (Editor bordi) ora mostra le linee dei bordi in modo più chiaro.

  • È stato aggiunto il supporto per la modifica di più elementi selezionati per pivot e offset.

  • È stato aggiunto il supporto preliminare per lo scripting Lua.

  • È stato aggiornato lo stile dei prefab dell'interfaccia utente inclusi nel pacchetto gem UiBasics.

  • I componenti interagibili dell'interfaccia utente ora:

    • Condividono una classe di base comune.

    • Ignorano lo stato degli elementi figlio per gli stati Hover (Al passaggio del mouse), Pressed (Premuto) e Disabled (Disabilitato). Ad esempio, un pulsante ora può modificare il colore del testo a esso associato.

    • Hanno una proprietà Input Enabled (Input abilitato) visibile nell'editor.

  • È stato aggiunto numerosi nodi del grafico dei flussi per accedere ai componenti dell'interfaccia utente. Per ulteriori informazioni, consulta Nodi del grafico dei flussi UI.

Realtà virtuale

  • I nodi OpenVR e Oculus del grafico dei flussi dei controller sono stati rimossi e sostituiti con il nuovo sistema di input basato su eventi di Lumberyard.

  • È stato aggiunto un nuovo nodo del grafico dei flussi per fornire informazioni sul dispositivo di realtà virtuale connesso.

  • I dispositivi connessi ora sono ordinati all'avvio utilizzando un parametro di ordinamento definito nel pacchetto gem del dispositivo di realtà virtuale.

  • La risoluzione di rendering e dello schermo ora viene ridimensionata automaticamente in base alla risoluzione di rendering desiderata del dispositivo quando il parametro output_to_hmd è abilitato.

  • Ora puoi utilizzare la nuova variabile della console r_ResolutionScale per il dimensionamento della risoluzione.

  • Il pacchetto gem OpenVR è stato aggiornato a OpenVR SDK versione 1.0.

  • Puoi usare i nuovi nodi dinamici del grafico dei flussi per esporre le velocità e le accelerazioni lineari o angolari per qualsiasi dispositivo di realtà virtuale connesso.

  • SamplesProject ora include un livello VR_BoxGarden_Sample, che descrive la configurazione del controller del movimento e lo scripting degli eventi di input.

  • Lo spazio di gioco del pacchetto gem OpenVR ora viene esposto tramite il grafico dei flussi.

Varie

  • La funzionalità di default in Lumberyard Setup Assistant (Assistente configurazione Lumberyard) (Assistente configurazione Lumberyard) ora includono l'esecuzione dell'editor.

  • Il compilatore di Visual Studio 2013 ora è una dipendenza software per le funzionalità di compilazione.

  • Il tempo di avvio e scansione per Asset Processor (Elaboratore asset) (Elaboratore asset) è stato migliorato.

  • Ora puoi generare sezioni in fase di runtime. Puoi creare una sezione dinamica facendo clic con il pulsante destro del mouse sul file di una sezione nella finestra Asset Browser (Browser asset) (Browser asset).

  • Il codice del motore Lumberyard ora fa riferimento ad AzTest per l'esecuzione di unit test invece di fare riferimento direttamente a GoogleTest/GoogleMock.

  • Varie modifiche apportate ad AzTestScanner includono l'aggiunta di funzionalità di whitelist e blacklist, la possibilità di attendere un flag del debugger e una migliore ottimizzazione dell'output.

  • Ora puoi creare tipi di asset personalizzati basati su AZ::Data::AssetData che usano la modifica e la serializzazione/riflessione automatiche. Puoi utilizzare Lumberyard Editor (Editor Lumberyard) (Editor Lumberyard) per modificare l'asset, che viene caricato e gestito come gli altri asset AZ.

  • Per la riflessione AZ, l'attributo EditContext (Modifica contesto) è stato sottoposto a refactoring in modo che EnumValue ora usi il metodo EnumAttribute.

  • Le costanti globali ora consentono di rendere più rilevabile l'uso della riflessione del componente.

  • Vari aggiornamenti del componente della configurazione dell'input includono la possibilità di modificare le associazioni di input nella finestra Asset Editor (Editor asset), il raggruppamento dei gestori degli input in base all'evento di gioco generato, nonché l'utilizzo di ID entità e nomi di evento di input per le chiavi degli ID dei bus di input. I valori di default per i componenti ID fungono da caratteri jolly. Pertanto l'entità di default corrisponde a tutte le entità e il nome di input di default è qualsiasi input. Ora puoi utilizzare Lua e Flow Graph (Grafico flussi) (Grafico flussi) per gestire gli eventi di gioco generati dai gestori di input in formato RAW.

  • Lo strumento Texture Browser (Browser texture) (legacy) è stato rimosso.