s&box/field-guide
tag

#art-pipeline

11 items (11 fixes)

fixes
26.07
"A complete Blender-headless → s&box pipeline"

Two-stage flow: Blender headless emits Y-up OBJ, then pure Python writes vmats/vmdls and a C# model catalog.

26.07
"A frame-budget method for stylized s&box scenes"

Census tris × instances before decimating; prefer BoxCollider over ModelCollider for decorative props.

26.07
"Blender OBJ export face order is not deterministic"

bpy.ops.wm.obj_export can reorder face lines across runs on the same mesh — diff the manifest, not the raw OBJ bytes.

26.07
"Decimating AI meshes without wrecking them"

Census tris × instances first — silhouette fails before UVs; inject usemtl after scripted OBJ export.

26.07
"Importing Kenney / CC0 kits into s&box"

CC0 kits import like any OBJ+vmdl; city kits share colormap.png, nature kits need per-color vmats, and facing is a per-model yaw guess.

26.07
"My model has no collision even though it loads fine"

RenderMeshFile alone compiles clean with zero physics — ModelCollider needs PhysicsMeshFile/PhysicsHullFile in the vmdl.

26.07
"My model imported upside down / sideways / facing the wrong way"

Blender +X becomes world −Y after OBJ import; yaw +90° faces +X — and Blender +Y rotation tips the +X edge down.

26.07
"My scaled-up tree's collider didn't scale"

CapsuleCollider and ModelCollider ignore WorldScale; BoxCollider follows it — bake scale into import_scale instead.

26.07
"s&box units are inches"

1 m = 39.37 engine units — design in SI, convert once at the engine boundary, and audit every consumer.

26.07
"s&box won't load my OBJ/GLB"

Scenes never load raw OBJ/GLB — always wrap with a .vmdl and remap materials under both bare and .vmat names.

26.07
"Using AI-generated 3D models in a real s&box game"

AI mesh generators (Tripo, Meshy, Rodin) deliver textured OBJ+vmdl — but modeldoc32 headers, ~1m normalize, corrupt textures, bare texture paths, and missing colliders will ERROR the asset until patched.