Creare Videogiochi - Game Developer

Versione completa: Un dubbio su un errore
Al momento stai visualizzando i contenuti in una versione ridotta. Visualizza la versione completa e formattata.
Raga vorrei chiedere un vostro parere: attraverso un script, durante il gioco capita questo errore...

The object of type 'GameObject' has been destroyed but you are still trying to access it.

Questo errore non causa "apparentemente" nessun problema, e so pure perchè capita questo errore. La mia domanda è: essendo che questo errore non crea nessun problema, mi conviene lasciarlo stare e proseguire senza farci caso? Oppure potrebbe causare qualcosa?

Per chi volesse saperlo l'errore è causato alla funzione GameObject.FindObjectsWithTag (tag) che in alcune circostanza non riesce a trovare oggetti che sono stati precedentemente distrutti.

itreturns

Quell'errore lo devi gestire. Il fatto che non "faccia niente" è solo un risultato del caso.
Il risultato di questo errore non dipende dal caso ma dalle istruzioni successive alla funzione "GameObject.FindObjectsWithTag (tag)" e quindi dallo script. Perciò ti consiglio di fixare l'errore, anche perchè è molto semplice da mettere a posto.
errore sistemato, però c'è un ulteriore problema

Object reference not set to an instance of an object

questo errore scaturisce dal void OnDestroy () quando chiudo o cambio la scena ma è impossibile, credo, sistemare questo errore perchè ogni volta che chiudo scena, e quindi tutti gli object si distruggono, giustamente non può trovare il riferimento all'oggetto
Non conoscendo lo script posso solo dare suggerimenti, ma puoi inserire un check per controllare se l'oggetto esiste prima di chiamare tale funzione?
ho risolto cambiando totalmente metodo: al posto di OnDestroy () chiamo la mia funzione con Update() e solo se l'oggetto di riferimento chiamato risulta nullo... in questo modo non c'è pericolo che spunti quell'errore