- Home /
Automatically update prefab instance
When you edit a value on a built-in component (for example a Trail Renderer), that value is updated automatically on all instances of that prefab.
For example, if I have a Prefab called MyPrefab with a Trail Renderer component added.
- Change the variable Time of the component to 1. 
- Instantiate that prefab via drag & drop. 
- Name the new object MyGameObject. 
- Check that the variable Time on MyGameObject is 1. 
- Go back to MyPrefab and change the parameter Time of the Trail Renderer component to 5. 
- Check on MyGameObject that the Time variable is 5. 
So it is automatically updated. And, when I edit some variable on MyGameObject, it is shown in bold.
How can I achieve the same functionality in my custom **Editor**s? It doesn't happen automatically.
I can get some of the functionality if I call PrefabUtility.ResetToPrefabState in my OnInspectorGUI function. But by doing that, the object remains locked: I can't change values on MyGameObject, the values displayed are always the one from the Prefab.
Answer by Veehmot · Feb 23, 2012 at 03:30 AM
Wel.. I just call EditorUtility.SetDirty when I modify the GUI and that updates all the PrefabInstances.
Your answer
 
 
             Follow this Question
Related Questions
Mark gameobject field as changed from prefab 2 Answers
Display changes in the editor made to a prefab 0 Answers
How to execute a script each time I add a certain prefab to the scene? 2 Answers
Any way to lock an object from changes in the editor? 4 Answers
I give up. My Foldout creates a very small space when expanded. How do I get rid of it? 0 Answers
 koobas.hobune.stream
koobas.hobune.stream 
                       
                
                       
			     
			 
                