If players are falling through the floor in your VRChat world, the visible floor probably does not have a proper collider. A mesh can look completely normal inside Unity but still have no solid collision for the player.
For a basic flat floor, a Box Collider is usually the easiest option. If the floor has a complex or uneven shape, you can use a Mesh Collider instead. In both cases, the collider needs to cover the walkable surface and Is Trigger should normally stay turned off.
What Type of Collider Should You Use for a VRChat Floor?
The best collider depends on the shape of your floor. You do not need a detailed Mesh Collider for every surface.
| Floor Type | Recommended Collider |
|---|---|
| Flat room floor | Box Collider |
| Simple platform | Box Collider |
| Large rectangular area | Box Collider |
| Uneven terrain | Mesh Collider |
| Complex imported floor | Mesh Collider or simple hidden colliders |
| Decorative floor mesh | Simple Box Colliders where possible |
For most normal rooms, start with a Box Collider. It is easy to resize and much easier to troubleshoot if something goes wrong.
Mesh Colliders make more sense when the visible shape is too complex for a box. Even then, you may be able to use several simple colliders instead of one detailed collision mesh.
How to Add a Box Collider to a VRChat Floor

Open your VRChat world project in Unity and locate the floor object in the Hierarchy. Make sure you select the actual floor GameObject and not a parent object that contains the entire room.
Then follow these steps:
- Select the floor in the Hierarchy.
- Look at the Inspector on the right side.
- Click Add Component.
- Search for Box Collider.
- Click it to add the component.
- Look at the collider outline in the Scene view.
- Adjust Center and Size if the box does not match the floor.
- Make sure Is Trigger is unchecked.
- Save the scene.
- Test the world locally before uploading it.
The collider can be a little thicker than the visible floor. You mainly want the top of the collider to line up with the surface the player should stand on.
Do not make it much taller than necessary. If the top of the Box Collider sits above the visible floor, players may look like they are floating.
How to Add a Mesh Collider to an Imported Floor
Imported environments from Blender or other 3D software often look correct in Unity but have no usable player collision. A Mesh Renderer makes the object visible, but it does not automatically make it solid.
Select the imported floor object and add a Mesh Collider from the Inspector.
Use these steps:
- Select the floor mesh in the Hierarchy.
- Click Add Component.
- Search for Mesh Collider.
- Add it to the object.
- Check that the correct mesh is assigned.
- Leave Is Trigger turned off.
- Save your scene.
- Test the world locally.
Walk over different parts of the floor during testing. A complicated imported environment may contain several separate meshes, so adding a collider to one object does not automatically add collision to every nearby surface.
Also avoid adding Mesh Colliders to every decorative object in the scene. Furniture details, trims, cables, and tiny decorations usually do not need detailed player collision.
Does a VRChat Floor Need a Rigidbody?
A normal fixed floor usually does not need a Rigidbody.
If the object is part of the static environment and players only need to stand or walk on it, a collider is normally enough. Adding a Rigidbody to every floor can make the setup more complicated without helping anything.
Rigidbody components are more relevant when an object needs physics behavior and can move, fall, or react dynamically.
For a basic VRChat room floor, keep it simple: floor mesh plus collider.
Should Is Trigger Be Enabled?
No, not for a normal solid floor.
When Is Trigger is enabled, the collider is mainly used to detect when something enters or overlaps that area. It is not being used like a normal solid wall or floor.
So if you already added a collider but your player still falls through it, open the collider component and check Is Trigger first.
For normal walkable surfaces, leave it unchecked.
Triggers are useful for things like entering a zone, starting an event, or detecting player presence. They are different from the solid collision you need under someone’s feet.
How to Make an Invisible Floor Collider
Sometimes the easiest option is to ignore the visible floor mesh and create a separate invisible collider underneath it.
This works well for imported environments with complicated geometry.
One simple method is:
- Create a Cube in Unity.
- Move it so its top surface lines up with the visible floor.
- Resize it to cover the walkable area.
- Keep its Box Collider.
- Disable or remove the Mesh Renderer.
- Leave the Box Collider enabled.
- Test the world.
The cube is now invisible in-game, but its collider still acts as the floor.
You can also use an empty GameObject and manually add a Box Collider. Either method works as long as the collider is positioned correctly.
This approach can be much cleaner than putting a detailed Mesh Collider on a decorative room mesh.
Why Am I Falling Through the Floor in VRChat?
If you added a collider and still fall through, do not immediately delete the whole floor and start again. Usually one small setting is wrong.
Check these first:
- The floor actually has a collider
- The collider component is enabled
- Is Trigger is turned off
- The collider covers the visible floor
- You selected the correct GameObject
- The Mesh Collider has the correct mesh
- Your spawn point is above the floor
- The player is not spawning inside the floor
- The floor was not moved after the collider was set up
- The object’s scale has not created an unexpected collision shape
Look at the collider outline in Unity’s Scene view. If the wireframe box or mesh is somewhere completely different from the visible floor, that is probably your problem.
Spawn placement can also fool you. If the player starts below the collider or inside other geometry, it may look like the floor itself is broken.
Why Does My Collider Look Higher Than the Floor?
This usually happens with a Box Collider whose Center or Size does not match the visible mesh.
Select the floor and look at the Box Collider in the Inspector. Adjust the Y value of the Center to move the collider up or down. Then adjust the Y value under Size to change its thickness.
Use the Scene view while doing this. The green collider outline makes it much easier to see where the solid surface actually begins.
Do not reduce the thickness to zero. Give the floor a small amount of depth and keep the top edge lined up with the visible surface.
If players seem to float slightly above the floor, move the collider down a little rather than changing unrelated VRChat settings.
What’s the Difference Between a Floor Collider and a PhysBone Collider?
These are two completely different things in VRChat.
A normal Unity Collider, such as Box Collider or Mesh Collider, is what you use in a VRChat world to make floors, walls, and other surfaces solid.
A VRC PhysBone Collider is mainly used with avatars. It affects PhysBones such as hair, tails, clothing, or other moving avatar parts.
Adding a PhysBone Collider to your world floor does not replace normal floor collision. If your goal is simply to stop players from falling through the ground, use a normal Unity collider.
This distinction matters because searching for “VRChat collider” often brings up avatar tutorials rather than world-building guides.
How to Test the Floor Collider Before Uploading
Always test your floor locally before publishing the world. It is much faster than uploading a new build every time you move a collider by a few centimeters.
Save your Unity scene and use the VRChat SDK’s local testing option. Enter the world and walk across the whole floor.
During the test:
- Spawn into the world.
- Stand still and check whether your height looks normal.
- Walk across the center of the floor.
- Walk near the edges.
- Jump a few times.
- Test stairs or slopes if your room has them.
- Walk over areas where separate meshes meet.
- Check that you do not suddenly fall through.
Pay extra attention to corners and transitions between different floor pieces. Those are common places for small collision gaps.
If you find a gap, return to Unity and slightly overlap the simple colliders rather than trying to make them meet perfectly edge to edge.
How to Keep VRChat Floor Collision Efficient
The most detailed collision setup is not always the best one. A normal flat room does not need a collider that copies every tiny groove or decoration in the visible mesh.
Use Box Colliders for large flat areas whenever they fit the shape. They are simple, predictable, and easy to adjust.
For more complex environments:
- Use simple collision shapes where possible
- Avoid detailed collision on small decorations
- Separate decorative geometry from collision geometry
- Use Mesh Colliders only where the floor shape really needs them
- Test complex imported areas carefully
- Keep walkable collision clean and easy to understand
For example, a fancy tiled floor can still use one plain Box Collider. The player does not need to collide with every individual tile edge.
This also makes future editing easier. If you replace the visual floor later, you can often keep the simple collision object unchanged.
How to Prevent Floor Collider Problems
It is easier to check collision while building than to find out after uploading that half the room has no floor.
Whenever you add or replace a walkable surface, check its collider straight away. If you scale or move an imported mesh, look at the collider again because the final collision shape may not be where you expected.
A few habits help:
- Use Box Colliders for simple floors
- Keep Is Trigger off on walkable surfaces
- Avoid unnecessary Rigidbody components
- Check colliders after scaling objects
- Test imported models before decorating around them
- Keep collision geometry simple
- Test the world locally before publishing
- Check spawn placement along with the floor
Do not wait until the entire world is finished before doing the first local test. It is much easier to fix one room while you still remember how it was built.
Final Thoughts
To add a floor collider in VRChat, select the floor in Unity and add a Box Collider for a simple flat surface or a Mesh Collider for more complex geometry. Make sure Is Trigger is turned off, resize the collider so it matches the floor, and then test the world locally.
For most rooms, a Box Collider is the best place to start. If your floor is visible but players still fall through it, check the collider position, Is Trigger setting, and player spawn before rebuilding anything.
If you are still having trouble, the useful question is this: does your floor have a collider but you still fall through it, or is there no collider showing on the floor at all?