28-10-2013, 11:39 PM
Cialve,
le cose son 2, o son troppo stanco in questo momento, oppure c'è qualcosa che mi sfugge a livello concettuale.
Il problema è questo, sto facendo uno script C# in unity, con cui prendo un oggetto 'Ray' di partenza e creo un array di 5 elementi che inizializzo tutti come copie del raggio iniziale. Poi applico ad elemento dell'Array un modificatore del campo 'origin', alcuni variati nelle ordinate, altri nelle ascisse.
Però mi sputa addosso questo errore:
"Cannot modify a value type return value of `UnityEngine.Ray.origin'. Consider storing the value in a temporary variable"
allego anche il frammento di codice incriminato:
Thx in anticipo.
le cose son 2, o son troppo stanco in questo momento, oppure c'è qualcosa che mi sfugge a livello concettuale.
Il problema è questo, sto facendo uno script C# in unity, con cui prendo un oggetto 'Ray' di partenza e creo un array di 5 elementi che inizializzo tutti come copie del raggio iniziale. Poi applico ad elemento dell'Array un modificatore del campo 'origin', alcuni variati nelle ordinate, altri nelle ascisse.
Però mi sputa addosso questo errore:
"Cannot modify a value type return value of `UnityEngine.Ray.origin'. Consider storing the value in a temporary variable"
allego anche il frammento di codice incriminato:
Codice:
Ray[] r = new Ray[5];
for(int i=0; i<5; i++) {
r[i] = firstRay;
}
r[1].origin.x += widthMargin*0.05;
r[2].origin.x -= widthMargin*0.05;
r[3].origin.y += heightMargin*0.05;
r[4].origin.y -= heightMargin*0.05;
Thx in anticipo.