Make a Kit Piece

A wall, a floor, a ceiling beam: something that tiles, snaps and connects to the rest of its set.

Do Make a Prop first if you haven't. A kit piece adds grid alignment, flat connecting faces,
a shared texel density and a set-wide naming scheme all at once, and it is much easier to learn those
four things when the basic loop is already familiar.


0. Find the kit owner

Every kit has one, and they decide the grid, the texel density tier, and the trim sheet before you
model anything. If you are making a new kit, you are the owner. Those three decisions are yours,
and they are hard to change later.

1. Name it

A Kit name always carries a Set and a SetNum, and never a SubCategory. The Set is the kit, and
it is what puts the file in Meshes/Kit/<Set>.

SM_Kit_AbandonedTavern_01_Wall_Interior_HalfHeight_01
│  │   │               │  └── part, variant: up to three descriptor words
│  │   │               └───── SetNum, two digits, always paired with the Set
│  │   └───────────────────── Set: the kit
│  └───────────────────────── Category: Kit
└──────────────────────────── Type: SM_

The Set fills itself in. New Kit Piece reads it from the collection you are standing in, and
failing that from the file (its name, then its Meshes/Kit/<Set> folder). You only type it for the
first piece of a kit in a file that is not saved yet.

If the piece is part of a split element

Make the first descriptor the role, one of Panel, Insert, Trim or Corner:
SM_Kit_AbandonedTavern_01_Trim_StringCourse_01. The folder then sorts itself into the four roles
for free. → Splitting a Piece > Naming

2. Set up the file

Assets/Source/Meshes/Kit/<Set>/

Either one .blend per piece, or one .blend for the whole kit with each piece in its own
collection carrying the right collection-export settings. For the composite file, name it for the kit: SM_Kit_AbandonedTavern_01_Kit.blend.

The composite file is locked as a unit, so only one person edits the kit at a time. That is fine since kits usually have a single owner, but it is worth knowing before you plan the week around it.

3. Model to the grid

This is the part that makes a kit a kit.

  • Every dimension lands on a regular increment: 0.1, 0.5, 1, 2, 5, 10 m
  • The base grid is in Asset Rules (Generated) > Grid. The default wall segment is 4 m wide, 3 m high, 0.2 m thick. A project can override it in its own projects/<game>.json.
  • When every wall in a kit shares those dimensions, pieces combine, connect and rotate without gaps.

splitting-roles.svg

  • Splitting a wall into parts? Bays are multiples of bayWidth (1 m) and storeys stack at
    storeyHeight (3 m, or groundStoreyHeight 4.5 m below). Storeys share a height, not a rhythm. Wide arcade bays under narrow window bays is the ordinary case, not a mistake.
    → Splitting a Piece > Where the seam goes

Every face that meets another piece is completely flat. No bevel, no rounding, at all, and it
lands on a grid increment. A 2 mm bevel is invisible while you model and a visible seam in a
finished corridor.

4. Set the pivot by what the piece is

This is the single highest-cost decision on the page. Get it wrong and every level built from the
kit is quietly a little bit wrong.

Piece Pivot
Wall, fence Bottom-left corner, so the next segment snaps at exactly its own width
Floor Top-left corner of the top face, so the walking surface sits at exactly Y = 0
Ceiling Bottom-left corner of the bottom face. Mirrors the floor, so it meets the wall tops with no offset
Door, hinged Bottom, directly below the hinge
Insert (a window filling an opening) Bottom-left of the opening, not of its own box
Trim (cornice, string course, sill) Bottom-left at the wall plane, not at the projection
Corner (pier, quoin, pilaster) Bottom-left, like the wall it continues
Roof (a slope panel) Bottom-left of the eave edge · Roofs
Gable (the wall closing a pitched roof) Bottom-left, and its top edge is the roof's pitch
Hatch (a trapdoor) The hinge edge on the top face · Openings
Balcony (a projecting slab) Top-left of the top face · Balconies
Stair (one step) Bottom-left
Freestanding Bottom-centre, like a prop

pivots.svg

"Left" is defined by the forward convention: -Y forward in Blender.

→ Modular 3D Assets > Pivots for the reasoning on each

Building something round? The turn goes in the name as a size word and the radius does not.
It is the family that is named, and checked. → Curves

5. Tell the checker what each piece is

In the add-on's Asset Rules panel, set each collection's kind: wall, floor, ceiling, door, fence,
insert, trim, corner, hatch, roof, gable, stair, balcony or prop. The pivot check is per-kind, so a collection that hasn't said what it
is can't be checked.

Fourteen classes, and seven of them share bottom-left, so the name on its own settles nothing. The
? on that panel opens Which Class?: the studio's ladder, thirteen questions read top to bottom,
first yes wins. Type the thing you are making into it and it jumps to the answer.

The dropdown itself explains each class on hover, and if the name and the class disagree (a Part of
Plinth on a piece declared Wall), the add-on says so, in New Kit Piece before the piece exists
and as MSH018 after. It never blocks anything: a name is evidence about a piece, not proof of one.

Or let the names do it. Every one of those answers is already written in the piece's own name.
SM_Kit_AbandonedTavern_01_Trim_StringCourse_01 says trim twice. A collection that has not said
what it is offers a Set Trim button on the Class row, and a composite file with six of them
waiting grows a Set 6 Classes From Names button on the Asset Rules panel. It never applies
itself: a button you have to press is not a guess.

One collection per part. MSH001 wants exactly one root object per collection, so a panel and
its trim together is two roots and an export error. The grouping you wanted lives in the prefab.

6. Texture it once, for the whole kit

Kits are where trim sheets earn their keep. Rather than texturing a pillar, a doorframe and a baseboard separately, one sheet holds tiling strips of wood, stone and metal, and every piece maps its UVs to that one shared material.

The whole kit shares one texel density tier. Every piece is by definition seen next to its
siblings, and mismatched density side by side is far more visible than low density everywhere. No
tool can check this. The kit owner declares the tier once and enforces it.

Plan the variation while you are here: vertex colours for material blending, the alpha channel for
overlay masking, an RGB mask for colourways. A kit typically ships 3–4 pre-varied versions rather
than being painted per instance.

7. Export, assemble, check, commit

Same as a prop from here: export with the add-on to Assets/Exported/Meshes/Kit/<Set>/, build the materials and prefabs in Unity, run Workspace Check, commit with the .meta files.

Split something up? Put it back together too

Do not hand a level designer forty parts. Splitting a wall into six multiplies their placement work
by six, and they will be right to resent the kit.

Ship a handful of assembled prefabs beside the parts, like P_Kit_AbandonedTavern_01_Facade_Arcade_01,
so they place a facade and open it up only when they want variation. This is the step that makes
splitting a gain downstream rather than a tax. → Splitting a Piece > Assemble it back

8. Hand it to a level designer early

Build a test room out of the first three or four pieces before you make the other twenty. Pivot and
grid problems are obvious the moment someone tries to snap two pieces together, and nearly invisible
in Blender.