# Referencing in unity

Background: We have two people in the team, one of which is a UI designer and the other is the Unity3d developer. The designer makes the 3d models in Maya and sends them to developer so that he can add interaction.

Issue: Once the developer starts putting the functionality on top of the model, we lose a lot of flexibility in terms of UI development. Specifically- any change in the textures/colours of the walls requires him to hook up the action scripts from scratch for the new model.

Question: Is there something like 'referencing' in unity3d so that we can keep improving the functionality and the aesthetics in parallel?

• could you clarify a little bit? textures and colors are just material properties, independent from the 3d model. you should be able to switch the model without affecting anything else.. – Heisenbug Jan 1 '15 at 14:49
• Your question is too vague, please edit it to be more specific. Perhaps add an example of how your losing flexibility when adding functionality. – FissionFlame Jan 2 '15 at 5:28

## 1 Answer

I think you're trying to use the model directly. i.e. attach script, modify the public parameters, tuning positions, etc.

So it looks like:

model (created by artist)
+- script
\+-- other GameObject
\+-- other GameObject
+- script (e.g. Character Controller)


I face this problem before when I (both programmer and designer) started creating game. I think the easy way to avoid this problem is not to attach these artifacts (scripts, etc) to the model. You can create an Empty object and attach the artifacts to the empty object instead. And this makes the model as just a 'display' thing that you control. It requires some changes though. So it should look like:

EmptyObject
+- script
\+-- other GameObject
\+-- other GameObject
+- script (e.g. Character Controller)
\+-- model (created by artist)


At the iterations (e.g. artist change the model), you just remove and reattach the model. Hope this reduce your inflexibility.

~Poh~