Correzioni e API obsolete - Note di rilascio di Lumberyard

Correzioni e API obsolete

Lumberyard Beta 1.24 risolve i problemi precedenti segnalati dai clienti e aggiorna le versioni supportate di librerie, API e strumenti. Scegli un'area di argomenti per ulteriori informazioni sulle correzioni correlate.

Correzioni di bug

Asset Bundler

  • Risolto un problema a causa del quale lo script di creazione del pacchetto Contenuto Ausiliare non generava un pacchetto corretto gems.json.

  • Risolto un problema a causa del quale gli aggiornamenti al catalogo degli asset dei contenuti pak non venivano sempre elaborati nell'ordine corretto in mancanza di utilizzo dell'opzione FLAGS_OVERRIDE_PAK nell'invocazione di OpenPack.

  • Lo Strumento di rilevamento delle dipendenze mancanti non genera più un errore nelle espressioni regolari complesse.

  • Risolto un problema a causa del quale Raggruppatore di asset non riusciva a creare pacchetti quando Elaboratore di asset era attivo.

  • Risolto un problema a causa del quale i file delle regole di confronto non potevano essere creati utilizzando AssetBundlerBatch.exe.

  • Erronea inclusione di Mipmap fisse come asset di seed nei file di seed distribuiti con Lumberyard. Questo non dovrebbe avere alcun impatto diretto poiché ci si sta adeguando a un cambiamento nel modo in cui Raggruppatore di asset gestisce le dipendenze per le texture e le relative mipmap. Come best practice, non includere mipmap come seed, perché queste sono dipendenze della trama di base. Di conseguenza, il conteggio delle mipmap può cambiare in base alle impostazioni della texture e alla piattaforma.

Pipeline e processore di asset

  • Risolto un problema che causava una registrazione incompleta dei Compilatore se veniva rilevata una DLL nonCompilatore.

  • Risolto un problema per cui JobDependencyType::Order concatenati non rispettavano l'ordine dopo l'incontro della prima dipendenza.

  • Risolto un problema per cui Elaboratore di asset consentiva a un editor di un progetto diverso di connettersi senza errori, con possibile generazione di problemi non ovvi.

  • Risolto un problema con i file di metadati (come .assetinfo) che non attivavano la rielaborazione di un asset quando venivano apportate modifiche mentre Elaboratore di asset non era in esecuzione

  • Risolto un problema relativo al modo in cui Elaboratore di asset gestiva le cartelle eliminate.

  • Risolto un problema relativo al modo in cui Elaboratore di asset gestiva le cartelle eliminate o rinominate durante l'elaborazione dei file in tali cartelle.

  • Risolto un errore di arresto anomalo nella logica di disegno delle anteprime in Elaboratore di asset.

  • Risolto un problema con il timeout del Pacchetto Gem di Dynamic Content sugli URL scaduti durante i download prolungati.

  • Risolto un problema per il quale il percorso di destinazione non veniva aggiornato utilizzando enablescm con Asset Relocator.

  • Risolto un problema a causa del quale il file natvis veniva incluso più volte in un file di soluzione di Visual Studio (.sln).

  • Risolto un problema a causa del quale Elaboratore di asset scriveva sul file AssetCatalog.xml dopo ogni asset elaborato. Ora la scrittura su questo file avviene solo quando entra in stato inattivo.

Audio

  • Risolto un arresto anomalo in I/O durante la riproduzione di un suono in loop con lo streaming attivato in Wwise.

  • La DLL obsoleta di Editor dei controlli audio è stata rimossa.

Cloud Canvas

  • Risolti i problemi relativi agli strumenti Mac e ai contenuti dinamici per lo sviluppo iOS.

  • È stato risolto un problema per cui gli script della riga di comando di Windows (.cmd) si basavano su AWSpythonSDK reso obsoleto.

    Nota: questa modifica potrebbe impattare il corretto funzionamento in caso di utilizzo di cleanup.cmd.

  • Risolto un problema per cui l'importazione di un asset da un elenco di asset causava un errore.

Cloud Gem Framework

Il pacchetto Gem Cloud Framework contiene le seguenti correzioni:

  • Miglioramenti di sicurezza apportati ai pacchetti utilizzati in CloudGemPortal. Se il progetto utilizza pacchetti Gem Cloud, aggiorna il progetto e le distribuzioni per assicurarti che vengano applicate queste correzioni critiche.

EBus

  • È stata aggiunta un assert quando un EBus con un mutex non nullo e almeno una chiamata di funzione virtuale viene eliminato senza disconnessione.

    Nota: prima dell'eliminazione ci si dovrà disconnettere da qualsiasi EBus per il quale sono verificate tali condizioni. Questo è sempre stato vero, ma ora si riceve un messaggio legato all'assert qualora tale operazione non sia stata eseguita.

Editor

  • Risolto un arresto anomalo durante il tentativo di modificare le impostazioni per un file di sezionamento che non sia ancora stato elaborato da Elaboratore di asset.

  • Risolto un problema per cui il filtraggio dei valori dei parametri audio digitando "*" blocca l'editor.

  • Risolto un raro arresto anomalo durante l'avvio in BootProfiler.

  • Risolto un problema causato dalla mancata indicazione come obsolete delle funzioni EditorVisibilityRequestBus. Le funzioni obsolete sono ora delegate alla classe EditorEntityInfoRequestBus.

EmotionFX (EMFX)

  • Risolto un arresto anomalo che poteva verificarsi se un Attore collegato veniva eliminato prima del genitore.

  • Corretto un avviso relativo agli script Lua nell'esempio Rin.

  • Risolto un problema a causa del quale il metodo TopDownUpdate() poteva essere chiamato più di una volta in alcuni casi a causa di una ricorsività interna che utilizzava il metodo sbagliato.

  • Risolto un problema per il quale lo scrubbing attraverso il registratore poteva generare pose errate del personaggio su alcuni fotogrammi.

  • Rimossa una vecchia finestra di struttura dai layout di Editor delle animazioni. Questa viene utilizzata per attivare gli avvisi nel log.

  • Rimossa l'indicazione del peso nel nodo Grafico di animazione dell'oggetto simulato e sostituita con uno stato booleano. Abbiamo verificato che la fusione dei risultati interni ed esterni non ha funzionato bene con le simulazioni fisiche.

  • Risolto un problema a causa del quale, in rari casi, l'estrazione del movimento (movimento radice) poteva causare il teletrasporto di un'entità personaggio passando da uno stato all'altro.

  • Risolto un problema a causa del quale l'operazione di copia e incolla del nodo BlendN e dei relativi nodi di origine imposta valori errati quando si aggiungono nuove connessioni. I parametri del nodo vengono ora aggiornati correttamente o cancellati durante l'operazione di Incolla.

  • Risolto un problema a causa del quale l'eliminazione di un numero elevato di gruppi di nodi poteva causare un arresto anomalo.

  • Risolto un potenziale arresto anomalo durante l'eliminazione di un parametro assegnato a un'operazione e il salvataggio del grafico di animazione seguiti dal tentativo di firmare un altro parametro per la stessa operazione.

  • Risolto un potenziale arresto anomalo nell'Editor durante l'eliminazione di due istanze attore mentre una delle istanze è stata modificata.

  • Risolto un problema con la finestra Controller di gioco che poteva causare un arresto anomalo.

  • Risolto un problema a causa del quale un gruppo di parametri può essere assegnato a sé stesso quando si selezionano più parametri e gruppi insieme.

  • Migliorato il codice del modello e della modifica del grafico di animazione. La modifica dei grafici di animazione è più stabile e affidabile.

  • Risolto un potenziale arresto anomalo durante il ripristino di un'area di lavoro vuota.

  • L'attivazione del grafico a partire dal grafico di riferimento ora attiva correttamente il grafico principale.

  • I parametri del grafico dell'animazione vengono cancellati quando si cancella il file del grafico dell'animazione selezionato nel componente grafico dell'animazione.

  • Risolti alcuni problemi relativi al movimento legati all'asset per StarterGame.

  • I nodi Forza Ragdoll e Ragdoll ora mostrano i nomi delle ossa corretti. Se è selezionata una sola articolazione, l'interfaccia utente ora mostra il nome dell'articolazione al posto di "1 articolazione selezionata".

  • Risolto un problema a causa del quale il salvataggio di un grafico di animazione modificato che fa riferimento a un altro grafico può causare la scomparsa dell'altro grafico dal pannello delle animazioni grafiche.

  • Il contenuto del riquadro dei parametri sarà ancora visibile quando vengono selezionate più istanze dell'attore.

  • I parametri e i gruppi di parametri non condividono più lo stesso nome. I vecchi asset con un parametro condiviso e un gruppo di parametri possono ancora essere caricati, ma è consigliabile modificare il nome su almeno uno dei due.

  • Risolti alcuni problemi con le maschere dei parametri. Ora, una maschera di parametro non verrà reimpostata dopo aver modificato il parametro o modificato il grafico dell'animazione.

  • Risolto un problema per cui era possibile creare una connessione non valida tramite le operazioni Annulla e Ripeti .

  • Risolto un arresto anomalo che poteva verificarsi quando si imposta un nodo di riferimento figlio su un grafico con un nodo di riferimento padre.

  • La prima articolazione dell'oggetto simulato non può più essere sbloccata tramite un'operazione di modifica collettiva. Poiché la prima articolazione è sempre bloccata, abbiamo anche rimosso l'opzione di fissaggio per la prima articolazione dell'oggetto simulato per evitare confusione.

  • Le operazioni di Annulla che rimuovono le condizioni di transizione ora aggiungono nuovamente le condizioni nell'ordine corretto.

  • Le operazioni di Annulla che rimuovono un parametro tag/float ora ripristinano i tag/parametri in una condizione di transizione con tag/parametri.

  • Risolto un potenziale arresto anomalo che si verificava quando si attivavano operazioni sullo stato al momento dell'entrata in tale stato.

  • Risolto un bug critico su ragdoll che si verificava quando il nodo radice ragdoll non era il primo nodo nella configurazione ragdoll.

  • Il nodo Attiva Ragdoll ora controlla se la maschera simulata contiene il nodo radice ragdoll e applica l'estrazione del movimento solo in questo caso.

  • Risolto un potenziale crash durante la rimozione dei movimenti dopo aver salvato i movimenti modificati.

  • Risolto un bug nel filtro di ricerca della finestra dei parametri del grafico di animazione.

  • Risolto il problema di rilevamento/ragdoll e componenti di collisione dei tessuti creati con dimensione zero a causa degli OBB aventi una dimensione zero.

  • Risolto un potenziale arresto anomalo dopo aver registrato un grafico in Editor delle animazioni e quindi abilitando la modalità AI/Fisica nell'Editor.

  • Risolto un bug nel generatore di asset del grafico di animazione relativo ai grafici di animazione di riferimento.

  • Corrette le opzioni di allineamento nel menu contestuale della finestra del grafico di animazione in modo che ora funzionino correttamente.

  • L'eliminazione di una traccia eventi nella vista temporale è ora registrata nella cronologia delle operazioni e può essere annullata.

  • Il file predefinito degli eventi di movimento viene ora estratto automaticamente al momento del salvataggio.

Grafica

  • Risolto un arresto anomalo quando e_shadowsCascadesDebug era abilitato su un dispositivo con GMEM abilitato.

  • Risolto un problema a causa del quale alcune texture venivano valutate erroneamente durante il caricamento e lo streaming.

  • Risolto un problema a causa del quale alcuni errori non venivano ritornati correttamente in DX12.

  • Risolto un problema a causa del quale alcuni confronti DirectX utilizzavano erroneamente il confronto binario invece di quello booleano.

Mobile

  • Risolto un problema su Android e iOS in modo che le texture esportate con spazio colore lineare siano renderizzate correttamente.

  • Risolto un problema a causa del quale un operatore di precedenza superiore modificava il risultato dei confronti.

Componente Physics (Fisica)

  • Risolto un problema a causa del quale i file di configurazione Fisica non venivano caricati nelle versioni di rilascio. Un sintomo del bug è che i materiali impostati nei componenti di collisione PhysX non venivano caricati nelle versioni di rilascio.

  • Risolto un problema a causa del quale gli oggetti con il componente PhysX Rigid Body erano influenzati dalla gravità quando venivano attivati nonostante l'opzione Avvia addormentato abilitata.

  • Risolto un problema a causa del quale i nodi PhysX Scene Query rendevano non più funzionanti gli script esistenti.

  • Risolto un problema a causa del quale la freccia di debug non viene visualizzata se una regione di forza è collegata al componente di collisione della forma.

  • Risolto un problema a causa del quale la PhysX Collider Shape non si aggiornava nella prospettiva dell'editor.

  • Risolto un problema a causa del quale la forma capsula può avere un'altezza inferiore al raggio della forma capsula senza alcun effetto.

  • Risolto un problema per cui l'altezza della forma poligonale può essere impostata su un valore negativo.

  • Risolto un arresto anomalo quando si preme [Esc] dopo aver modificato e selezionato un valore nell'editor.

  • Risolto un problema nel componente Tessuto per il quale la modifica delle impostazioni Vento causava un problema visivo durante il movimento della fotocamera.

  • Risolto un problema con PhysX Force Regions a causa del quale lo smorzamento lineare con valori elevati applicato alle entità causava lo spostamento irregolare su e giù e poi la partenza in verticale verso l'alto a una velocità elevata.

  • Risolto un problema di PhysX Collider a causa del quale i valori di offset non venivano applicati correttamente nell'editor Lumberyard.

  • Risolto un problema di Linux Server per cui i Gem PhysX abilitati su Ubuntu 18.04.2 LTS causavano un arresto immediato.

  • Risolto un problema a causa del quale l'esecuzione di un'operazione sul componente Forma Composta che faceva riferimento a sé stesso tramite la finestra della vista determinava la violazione di un assert.

  • Risolto un problema a causa del quale i componenti di collisione non usavano la scala corretta nella modalità Gioco.

  • Risolto un problema di Lumberyard v1.22 a causa del quale una mesh CryPhysics non rispettava la scala.

  • Risolta un'incoerenza nell'implementazione dei valori di configurazione globale.

  • Risolto un problema con PhysX Force Regions per cui valori di densità molto elevata per la forza di trascinamento semplice causavano un errore.

  • Risolto un problema per cui la creazione del Gem NVIDIA Cloth con Visual Studio 2019 non funzionava.

  • Risolto un arresto anomalo osservato passando a un nuovo livello nel progetto di esempio.

  • Risolto un problema a causa del quale il pulsante AI/Fisica non funzionava rispetto ai comportamenti fisici definiti in precedenza.

  • Risolto un problema a causa del quale una policy di connessione personalizzato per EBus passava argomenti non validi a ConnectionPolicy::Disconnect()

  • Risolto un problema a causa del quale il corpo/componente di collisione PhysxSamples Quadcopter non era sincronizzato con la mesh di rendering.

  • Risolto un problema a causa del quale PhysX Gem SystemComponent non aggiornava un riferimento a un asset della libreria di materiali predefinito se veniva ricaricato.

  • Aggiunta un'assert sulla distruzione di PhysxColliderComponent nell'editor e di MeshColliderComponent nel gioco.

  • Risolto un problema a causa del quale la chiamata EditContext::UIElement con il tipo UIHandlers::CheckBox non visualizzava effettivamente una casella di controllo nell'editor.

  • Risolto un arresto anomalo che si verificava durante la creazione di un nuovo livello a partire da un livello già aperto.

  • Risolta la trasformazione della posa del corpo rigido in modo che si aggiorni correttamente se l'entità associata viene spostata quando la fisica del corpo è disabilitata e quindi riabilitata.

  • Corrette le query Script Canvas PhysX Scene in modo che non mostrino avvisi con un gruppo di collisioni vuoto.

  • Risolto un problema a causa del quale i nodi PhysX Scene Query rendono non più funzionanti gli script esistenti.

  • Risolto un problema a causa del quale una proprietà Physics Material non veniva esportata correttamente nella configurazione di rilascio.

  • Risolto un problema a causa del quale gli oggetti con il componente PhysX Rigid Body sono influenzati dalla gravità quando sono attivati nonostante l'opzione "Inizia addormentato" fosse abilitata.

  • Risolto un problema a causa del quale il PVD non era disabilitato nella versione di rilascio.

Script Canvas

  • La classe AddTags del Componente Tag ora applica correttamente i tag.

  • La chiusura dell'Editor non visualizza più un errore di assert.

  • Gli Script Event appena creati in Editor degli asset con uno o più eventi non generano più errori nella Console durante il salvataggio.

  • L'Editor Lua non si blocca più quando si sostituisce tutto il testo con l'opzione di testo a capo abilitata.

  • È stata aggiunta la convalida per impedire la creazione di più Script Event con lo stesso nome, che in precedenza causava l'esecuzione del metodo Script Event due volte.

  • Risolto il comportamento durante il salvataggio dei segnalibri di Script Canvas che contengono numeri.

  • Risolto un problema a causa del quale i nodi di Script Canvas venivano danneggiati dopo aver eseguito le operazioni Annulla e Ripeti per mostrare e nascondere gli slot dei nodi inutilizzati utilizzando le scorciatoie da tastiera.

  • Il salvataggio di uno Script Canvas con un nodo con un campo di testo esteso ora mantiene le dimensioni del campo di testo.

  • I valori restituiti dallo Script Event vengono gestiti correttamente.

  • Se è stato eseguito un ingrandimento, quando si fa doppio clic su un errore/avviso, la Vista Canvas non si ingrandisce più.

  • Risolto l'accoppiamento del nodo in caso di utilizzo del nodo EBus.

  • Corretto il comportamento durante il confronto dei valori in virgola mobile.

  • Rimosso il nodo Annulla colore.

  • Corretto il comportamento del menu contestuale Modifica Script Canvas.

Sezioni

  • Modificato il modo in cui funziona l'opzione Seleziona root sezione > per evitare che le sezioni molto nidificate riempiano lo schermo. L'opzione attivata con il pulsante destro del mouse è stata rielaborata in modo che corrisponda alla navigazione Outliner delle entità con i tasti freccia:

    • Ctrl+Su seleziona la prima radice di sezione sopra la selezione nell'elenco.

    • Ctrl+Giù seleziona la prima radice sotto la selezione.

    I controlli sono ora relativi all'elenco anziché alla gerarchia.

  • Quando si apportano modifiche a una sezione esistente, il salvataggio non riordina più gli ID associati.

  • Quando si salvano le sezioni, nella Console non viene più visualizzato un avviso relativo al fatto che SetRotation sia obsoleta.

Sistema di compilazione Waf

  • Risolto un problema con Visual Studio 16.6.0 per cui alcuni progetti non venivano compilati.

  • Risolto un problema per cui i moduli utente che non sono esplicitamente inclusi nelle specifiche non venivano aggiunti ai progetti Android Studio generati.

  • Risolto un problema durante la generazione di una build dedicata di debug quando il Pacchetto Gem Esempio di registrazione delle scene è abilitato.

  • Risolto un problema durante la generazione di una versione senza intestazioni precompilate.

Interfaccia utente (LyShine)

  • Risolto un problema che permetteva alle caselle di scorrimento dinamiche di fare riferimento a sé stesse causando una riproduzione infinita.

  • Risolto un problema per il quale gli elementi che si distruggevano causavano un crash.

  • Risolto l'arresto anomalo durante l'utilizzo di nullptrs con nodi Ancore UI, Offset UI o Padding UI.

API obsolete

Le seguenti API sono obsolete in Lumberyard Beta v1.24:

  • Le seguenti API sono obsolete in PhysX::ColliderComponentRequestBus:

    • GetShapeConfigFromEntity(): usare in sostituzione GetShapeConfigurations(). Questo metodo restituisce un vettore che contiene una coppia {ColliderConfiguration, ShapeConfiguration} per ogni forma.

    • GetColliderConfig(): usare in sostituzione GetShapeConfigurations(). Questo metodo restituisce un vettore che contiene una coppia {ColliderConfiguration, ShapeConfiguration} per ogni forma.

    • GetShape(): usare in sostituzione GetShapes(). Questo metodo restituisce un vettore di puntatori Shape.

    • GetNativePointer(): usare in sostituzione GetShapes(). Questo metodo restituisce un vettore di puntatori Shape sui quali è possibile definire un'iterazione, e GetNativePointer() può essere richiamata su ciascuna Shape.

  • Le seguenti API in I3DEngine::Terrain sono state dichiarate obsolete:

    virtual float GetTerrainElevation(float x, float y, int nSID = DEFAULT_SID) = 0; virtual float GetTerrainZ(int x, int y) = 0; virtual float GetTerrainSlope(int x, int y) = 0; virtual int GetTerrainSurfaceId(int x, int y) = 0; virtual bool GetTerrainHole(int x, int y) = 0; virtual Vec3 GetTerrainSurfaceNormal(Vec3 vPos) = 0; virtual int GetHeightMapUnitSize() = 0; virtual int GetTerrainSize() = 0; virtual int GetTerrainSectorSize() = 0; virtual bool IsTerrainActive() = 0;

    Tutti i servizi API relativi al terreno sono ora disponibili tramite AzFramework::Terrain::TerrainDataRequestBus.

  • Le seguenti API di ColliderComponentRequestBus sono state dichiarate obsolete:

    • IsStaticRigidBody()

    • GetStaticRigidBody()

    Utilizzare in sostituzione il nuovo componente runtime StaticRigidBodyComponent.

  • Le seguenti API di PhysX::SystemRequests sono obsolete:

    • PhysX::SystemRequests::CookTriangleMeshToMemory()

    • PhysX::SystemRequests::CookTriangleMeshToFile()

    • PhysX::SystemRequests::CookConvexMeshToMemory()

    • PhysX::SystemRequests::CookConvexMeshToFile()

    Vengono spostate nella classe PhysX::SystemRequestsBus:

    • PhysX::SystemRequestsBus::CookTriangleMeshToMemory()

    • PhysX::SystemRequestsBus::CookTriangleMeshToFile()

    • PhysX::SystemRequestsBus::CookConvexMeshToMemory()

    • PhysX::SystemRequestsBus::CookConvexMeshToFile()

  • Le seguenti API della classe RayCastWorldSpace (definite in WorldNodes.h) sono state dichiarate obsolete:

    RayCastLocalSpace() RayCastMultipleLocalSpace() OverlapSphere() OverlapBox() OverlapCapsule() OverlapQuery() ShapecastQuery() SphereCast() BoxCast() CapsuleCast()
  • Le seguenti macro per i compilatori legacy sono state dichiarate obsolete:

    AZ_STATIC_ASSERT AZSTD_STATIC_ASSERT_BOOL_CAST AZ_HAS_NULLPTR_T AZSTD_UNDERLAYING_TYPE AZ_HAS_INITIALIZERS_LIST AZ_HAS_TEMPLATE_ALIAS AZ_DELETE_METHOD = delete AZ_DEFAULT_METHOD = default AZ_RESTRICT __restrict AZ_FUNCTORALLOCATOR_CONSTEXPR constexpr
  • Altre modifiche alle API:

    • Le seguenti API verranno modificate affinché utilizzino AZ::EntityId al posto di AZ::Entity* in una versione futura:

      • EditorEntityContextRequests::CreateEditorEntity()

      • EditorEntityContextRequests::CreateEditorEntityWithId()

      • EntityCompositionRequests::AddExistingComponentsToEntity()

      Poiché non è possibile eseguire l'overload di un metodo solo in base al tipo di dato restituito, abbiamo creato dei metodi associati che è possibile utilizzare per evitare modifiche che comportino malfunzionamenti:

      • EditorEntityContextRequests::CreateNewEditorEntity()

      • EditorEntityContextRequests::CreateNewEditorEntityWithId()

      • EntityCompositionRequests::AddExistingComponentsToEntityById()

      Questi metodi eseguono le stesse operazioni, solo che restituiscono un valore AZ::EntityId invece di un valore AZ::Entity*.

    • A causa delle modifiche al modo in cui i livelli influenzano la visibilità delle entità editor nella finestra della vista, l'invocazione di GetCurrentVisibility() o di SetCurrentVisibility() porterà spesso a risultati contraddittori. Di conseguenza stiamo dichiarando tali funzioni obsolete.

      Invocare in sostituzione EditorEntityInfoRequests::IsVisible() per controllare la visibilità dell'entità. Per impostare la visibilità dell'entità, invocare EditorEntityHelpers::SetEntityVisibility(). È anche possibile rimanere in ascolto di EditorEntityVisibilityNotifications::OnEntityVisibilityChanged e monitorare lo stato internamente.