[VRChat] Reusing Parts with Prefabs: Change One, or Change Them All

Created: 2026-09-08Last updated: 2026-09-09

Place two identical lamps and try changing only one, changing both from the original, and reverting. Covers Override versus Apply and Revert, and why sharing a material changes both.

You like the lamp you put in the room, so you want one by the window and one beside the sofa too. When you adjust the brightness later, changing them all at once would help.

But the one at the entrance should be a warm color, as a landmark. Reusing the same object while giving one copy different settings — that's what a Prefab does.

This article places two identical lamps and tries three things: changing only one, changing both, and reverting a change.

Lamps reused from one Prefab, with only the entrance lamp's light color changed

What You'll Learn

  • How to turn a part you built into a reusable Prefab
  • Override for changing one, versus Apply and Revert
  • Why changing a material's color changes both lamps
  • What to watch for when updating a distributed Prefab

Start from a scene with a floor. If you don't have one, build it in your first world.

Sponsored


Project holds the original, Hierarchy holds the copy

A Prefab works as a relationship between an original and its copies.

The relationship between the original part in Project and the instance in Hierarchy
  • The .prefab file in Project is the original. Think of it as a blueprint
  • What you place in the Hierarchy is a copy. It appears on site, following the original

Change the original and every copy changes. That much matches intuition.

What makes Prefabs useful is that you can change a copy individually. Change the color of one placed lamp and the others stay as they were. That per-copy change is called an Override.

So there are two places to make a change.

Where you change itWhat it affects
The copy in HierarchyOnly that one (Override)
The original in ProjectEvery copy placed

Telling those two apart is the heart of this article.

Sponsored

Hands-On: Place two lamps and change only one

Build a small lamp, turn it into a Prefab, and line up two. Make one warm-colored, then raise the brightness on both at once.

1. Assemble the lamp

Save to a separate scene named WorldLab_Prefabs via "File → Save As" before you start.

Right-click empty space in the Hierarchy, choose "Create Empty," and name it DeskLamp. Transform all zeros, Scale 1. This is the parent that holds the whole lamp.

Base, Pole, Head, and Bulb gathered under DeskLamp

Right-click DeskLamp and add four children. The values in the table are local values, entered once the object is a child of the parent.

Child nameWhat to createPositionScale
BaseCube(0, 0.05, 0)(0.4, 0.1, 0.4)
PoleCube(0, 0.45, 0)(0.08, 0.7, 0.08)
HeadSphere(0, 0.92, 0)(0.24, 0.24, 0.24)
BulbPoint Light(0, 0.92, -0.2)(1, 1, 1)

Set Bulb's Light to Mode Realtime, Color white, Intensity 1, Range 2, Shadow Type No Shadows.

In Assets/Materials, create a Standard material named LampHousing, set its Albedo to grey, and assign it to Head. Later we'll handle this color and the light's color separately.

2. Make it a Prefab and place two

  1. Create an Assets/Prefabs folder
  2. Drag all of DeskLamp from the Hierarchy into that folder
  3. DeskLamp.prefab appears in Project, and the Hierarchy entry turns a blue icon
  4. Rename the Hierarchy copy to Lamp_A and set its Position to (-1.5, 0, 1.5)
  5. Drag the Prefab from Project into the Hierarchy again as Lamp_B, at (1.5, 0, 1.5)

Two lamps built from the same part now stand side by side. Treat A as the entrance and B as the window.

If the light difference is hard to see, weaken the scene's Directional Light temporarily. Note the original value first.

3. Make one of them warm

Select Lamp_A → Bulb and change the Light's Color to a pale yellow (FFD780 works). Lamp_B stays white.

Look at the Inspector: the field you changed is bold, with a blue line at the left. That's the Override marker.

Don't press Apply — just save the scene. At this point only A is yellow.

4. Brighten both at once

Now change the original. Double-click DeskLamp.prefab in Project. You enter the screen for editing the original (Prefab Mode).

  1. Select Bulb and change Intensity from 1 to 2. Leave Color white
  2. Save (automatic if Auto Save is on)
  3. Return to the scene with the back arrow at the top of the Hierarchy

Check the result.

Setting the original's Intensity to 2 brightens both, while Lamp_A stays yellow
TargetColorIntensity
Original (DeskLamp.prefab)White2
Lamp_AYellow2
Lamp_BWhite2

A stayed yellow, and the brightness reached both. Since the only thing changed on A was Color, it takes Intensity straight from the original.

That's the best part of Prefabs. Common settings live in the original; only what you want different is held individually.

If A's brightness didn't change, check whether you had also touched A's Intensity earlier. Fields you changed individually take priority over the original.

5. Revert, and Apply

Say you want the yellow lamp back to white. You could type white in by hand, but there's an operation for "stop specifying this on just this one."

Revert restores the original value; Apply pushes it up and out to the others

Select Lamp_A → Bulb, right-click the Light's Color field name, and choose Revert. A goes back to white and the Override marker disappears.

Now do the opposite.

  1. Change Lamp_A → Bulb's Color to yellow again
  2. Right-click the Color field name and choose Apply
  3. Check the original and Lamp_B

This time the original turns yellow, and Lamp_B — which never specified a color individually — turns yellow too.

What you wantThe operationWhat changes
Make just the entrance lamp yellowChange Color and save the sceneOnly Lamp_A
Put the entrance lamp backRevert the ColorLamp_A matches the original again
Make yellow the shared colorApply the ColorThe original, and everything without an individual value

Apply is not a save button for the scene. Choose it based on whether you want the same change to reach other places. To change only one, don't press it — just save.

Materials are shared, separately from the Prefab

Here's a point that's easy to confuse.

Because you assigned a material asset from Project to an object in the Hierarchy, changing LampHousing's color changes both A and B at once.

A material is a separate shared thing, so it behaves differently from a Prefab Override

That's not a Prefab Override — it's because the material is one shared thing. Even with two Prefab copies, both look at the same material.

To change one lamp's surface color alone, duplicate the material and assign them separately.

The distinction is simple.

  • Prefab settings (position, brightness, enabled state) can be changed on one copy alone
  • A material's contents are shared. Change them and everything using it changes

When something "changed both even though it's a Prefab," you almost always touched a material.

Sponsored

Updating a distributed Prefab

Gimmicks you get from Booth are Prefabs inside too. Using them works the same as your own, but updates need care.

After bringing in a new version, review only what you changed yourself

Overwriting with a new version replaces the original. The settings you adjusted in the scene (Overrides) usually survive, but if the original's structure changed, references can come loose or positions can shift.

The safe way through:

  1. Back up the project before updating (VCC's "Make Backup" or a folder copy)
  2. Update
  3. Confirm it still works
  4. Restore from the backup if something broke

One more thing: don't restructure the inside of a distributed Prefab. Deleting objects inside it or mixing in your own scripts means it breaks on every update. Sticking to setting changes makes you resilient to updates.

Obtaining assets and checking licenses is covered in placing downloaded assets.

Bonus: Good to Know Up Front

  • You can't delete objects inside a Prefab: The scene refuses. To remove one, edit the original or disable it
  • A Prefab can't reference something in the scene: The original doesn't belong to any particular scene. When passing Udon references, set them on the copy placed in the scene
  • There's also Variant: Derive a "large lamp" from a "basic lamp," inheriting changes to the original while differing in some parts. Reach for it once you're comfortable
  • Unpack turns it back into an ordinary object: It severs the connection to the Prefab. It can't be undone, so leave it alone until you need it
  • Don't delete .meta files: They're how Unity follows references. Moving folders in Explorer can break things, so move them from Unity's Project window instead
The meta file is the information Unity follows to resolve references

Summary

A Prefab is a relationship between an original and its copies.

  • The original lives in Project, the copy lives in Hierarchy
  • Changes on the copy affect only that one (Override)
  • Changing the original reaches everything without an individual value
  • Apply means "reflect this into the original." It isn't a save button
  • Materials are shared separately from Prefabs. Change one and everything using it changes

The question to ask when you're stuck is: "Am I touching the original, or a copy?" Answer that and you know how far the change reaches.

Once you can line up identical parts, go to the path from entrance to seat to think about placement. To add more downloaded furniture, head back to placing downloaded assets.

VRChat Notes in this section63