Room Creator
Generate room scenes with room-cli -m embodied_gen.scripts.room_gen.gen_room from infinigen(https://github.com/princeton-vl/infinigen) and optionally export URDF/USD. room-cli forwards its arguments to the bundled Blender Python (has bpy and room deps installed by bash install.sh room); running python -m embodied_gen.scripts.room_gen.gen_room from the embodiedgen env works too since heavy stages dispatch to Blender Python internally either way.
Use This Workflow
- Confirm output root and target room profile.
- Choose generation scope:
--gen --urdf --usdfor full pipeline.--gen --no-urdf --no-usdfor generation only.--no-gen --urdf --usdfor export from existing blender output.
- Run the command from repository root.
- Verify output folder:
<output_root>/<RoomType>_seed<seed>/(if--seedis omitted, check the generated seed from logs first).
Parameters
--output-root(required): base output directory.--prompt: natural-language task/scene description; a GPT router infers room type and complexity from it, overriding--room-type/--complexity. Requires a configured GPT agent.--room-type:Bedroom | LivingRoom | Kitchen | Bathroom | DiningRoom | Office | House.--seed: random seed. For reproducible runs, pass this explicitly; if omitted, a random seed is generated.--complexity:minimalist | simple | medium | detail.--custom-params: gin file copied to Infinigencustom_solve.gin.--large-scene: only forHouse; enables more rooms.--gen/--no-gen,--urdf/--no-urdf,--usd/--no-usd: pipeline switches.
Complexity Guidance
minimalist: fastest, sparse furniture.simple: default, balanced quality/time.medium: richer layout, slower.detail: highest detail, longest runtime.
Command Templates
# Full pipeline for one kitchen
room-cli -m embodied_gen.scripts.room_gen.gen_room \
--output-root outputs/rooms \
--room-type Kitchen \
--seed 42 \
--complexity simple
# Generation only (no export)
room-cli -m embodied_gen.scripts.room_gen.gen_room \
--output-root outputs/rooms \
--room-type LivingRoom \
--seed 100 \
--complexity medium \
--no-urdf --no-usd
# Export only from existing blender result
room-cli -m embodied_gen.scripts.room_gen.gen_room \
--output-root outputs/rooms \
--room-type Kitchen \
--seed 42 \
--no-gen --urdf --usd
# House generation (use --large-scene for more rooms)
room-cli -m embodied_gen.scripts.room_gen.gen_room \
--output-root outputs/rooms \
--room-type House \
--seed 7 \
--complexity simple \
--large-scene
Runtime Requirements
- Run from repo root so relative paths resolve.
room-cliresolves Blender Python from$BLENDER_PYTHON_BINif set, else falls back tothirdparty/infinigen/blender/4.2/python/bin/python3.11(must exist on disk).--no-genrequires existing blender output at:<output_root>/<RoomType>_seed<seed>/blender.