2016-11-23 1 views
2

Wie kann ich ein Feld in einem Unity-Skript umbenennen, aber seine Zuweisung im Unity Editor-Inspektor beibehalten? Say IEinheit öffentliche Felder umbenennen, um Zuweisungen zu behalten

public int x; 

habe ich "1" bis x in den inspctor zuweisen und dann y i umbenennen x in dem Skript. Die Zuordnung wird dann verloren gehen. Gibt es eine Möglichkeit, es zu behalten?

Ich verwende Visual Studio.

Antwort

7

Wenn Sie Folgendes tun, wird der Wert im Inspector gespeichert. Es kann entfernt werden, nachdem die Szene erneut gespeichert wurde.

[FormerlySerializedAs("x")] 
public int y; 

Read more about it here und here

+1

Uh. Nicht so komfortabel, wie ich es mir erhofft hatte, aber es funktioniert, schön. :) – Tavados

1

Einige zusätzliche Informationen zu diesem Thema, die nützlich sein können. Umbenennen ist nicht das einzige Szenario, das Sie benötigen. Wenn Sie das Feld einkapseln, müssen Sie dies auch tun.

public int y; 

Encapsulate

[FormerlySerializedAs("x")] 
//[FormerlySerializedAs("a")] //-has support for multiple renames. 
[SerializeField] 
private int x; 
Verwandte Themen