Objects (.objects)

Contents

Objects (.objects)#

bookcase#

class infinigen2.objects.bookcase.BookcaseResult(mesh)[source]#

Bases: NamedTuple

mesh: pf.MeshObject#
infinigen2.objects.bookcase.bookcase(...) BookcaseResult[source]#
Parameters:
  • dimensions (pf.Vector | None) -- (default: None)

  • side_board_thickness (float) -- (default: 0.0175)

  • division_board_thickness (float) -- (default: 0.015)

  • bottom_gap (float) -- (default: 0.1)

  • backboard_thickness (float) -- (default: 0.015)

  • screw_head_depth (float) -- (default: 0.005)

  • screw_head_radius (float) -- (default: 0.0055)

  • screw_head_dist (float) -- (default: 0.065)

  • attach_thickness (float) -- (default: 0.0035)

  • attach_width (float) -- (default: 0.025)

  • attach_top_length (float) -- (default: 0.065)

  • attach_back_length (float) -- (default: 0.035)

  • frame_material (pf.Material | None) -- (default: None)

  • metal_material (pf.Material | None) -- (default: None)

infinigen2.objects.bookcase.bookcase_rand(...) BookcaseResult[source]#

Example renders

infinigen2.objects.bookcase.bookcase_rand seed 0
infinigen2 bookcase_rand object_demo render_cycles --seed 0 --passes rgb -r 512 512 -s 128
infinigen2.objects.bookcase.bookcase_rand seed 1
infinigen2 bookcase_rand object_demo render_cycles --seed 1 --passes rgb -r 512 512 -s 128
infinigen2.objects.bookcase.bookcase_rand seed 2
infinigen2 bookcase_rand object_demo render_cycles --seed 2 --passes rgb -r 512 512 -s 128
infinigen2.objects.bookcase.bookcase_rand seed 3
infinigen2 bookcase_rand object_demo render_cycles --seed 3 --passes rgb -r 512 512 -s 128
infinigen2.objects.bookcase.bookcase_rand seed 4
infinigen2 bookcase_rand object_demo render_cycles --seed 4 --passes rgb -r 512 512 -s 128
infinigen2.objects.bookcase.bookcase_rand seed 5
infinigen2 bookcase_rand object_demo render_cycles --seed 5 --passes rgb -r 512 512 -s 128
Parameters:

cabinet#

class infinigen2.objects.cabinet.CabinetResult(mesh)[source]#

Bases: NamedTuple

mesh: pf.MeshObject#
infinigen2.objects.cabinet.cabinet(...) CabinetResult[source]#
Parameters:
  • rng (Generator)

  • dimensions (pf.Vector | None) -- (default: None)

  • frame_material (pf.Material | None) -- (default: None)

  • panel_material (list[pf.Material] | None) -- (default: None)

  • has_mid_ramp (bool) -- (default: True)

  • force_short_door (bool) -- (default: False)

  • side_board_thickness (float) -- (default: 0.02)

  • division_board_thickness (float) -- (default: 0.02)

  • backboard_thickness (float) -- (default: 0.01)

  • bottom_board_height (float) -- (default: 0.083)

  • screw_depth_head (float) -- (default: 0.0025)

  • screw_head_radius (float) -- (default: 0.0025)

  • screw_width_gap (float) -- (default: 0.01)

  • screw_depth_gap (float) -- (default: 0.0425)

  • attach_length (float) -- (default: 0.075)

  • attach_width (float) -- (default: 0.0175)

  • attach_thickness (float) -- (default: 0.0035)

  • attach_gap (float) -- (default: 0.025)

  • bottom_board_y_gap (float) -- (default: 0.03)

  • edge_thickness_1 (float) -- (default: 0.014)

  • edge_width (float) -- (default: 0.04)

  • edge_thickness_2 (float) -- (default: 0.0065)

  • edge_ramp_angle (float) -- (default: 0.7)

  • knob_radius (float) -- (default: 0.0045)

  • knob_length (float) -- (default: 0.0265)

  • door_attach_gap (float) -- (default: 0.1)

infinigen2.objects.cabinet.cabinet_rand(...) CabinetResult[source]#

Example renders

infinigen2.objects.cabinet.cabinet_rand seed 0
infinigen2 cabinet_rand object_demo render_cycles --seed 0 --passes rgb -r 512 512 -s 128
infinigen2.objects.cabinet.cabinet_rand seed 1
infinigen2 cabinet_rand object_demo render_cycles --seed 1 --passes rgb -r 512 512 -s 128
infinigen2.objects.cabinet.cabinet_rand seed 2
infinigen2 cabinet_rand object_demo render_cycles --seed 2 --passes rgb -r 512 512 -s 128
infinigen2.objects.cabinet.cabinet_rand seed 3
infinigen2 cabinet_rand object_demo render_cycles --seed 3 --passes rgb -r 512 512 -s 128
infinigen2.objects.cabinet.cabinet_rand seed 4
infinigen2 cabinet_rand object_demo render_cycles --seed 4 --passes rgb -r 512 512 -s 128
infinigen2.objects.cabinet.cabinet_rand seed 5
infinigen2 cabinet_rand object_demo render_cycles --seed 5 --passes rgb -r 512 512 -s 128
Parameters:
  • rng (Generator)

  • dimensions (pf.Vector | None) -- (default: None)

  • frame_material (pf.Material | None) -- (default: None)

  • panel_lower_material (pf.Material | None) -- (default: None)

  • panel_upper_material (pf.Material | None) -- (default: None)

  • has_mid_ramp (bool | None) -- (default: None)

ceiling_light#

class infinigen2.objects.ceiling_light.CeilingLightResult(mesh, light)[source]#

Bases: NamedTuple

mesh: pf.MeshObject#
light: LightObject | None#
infinigen2.objects.ceiling_light.black_for_reflections(shader) pf.Material[source]#

Wrap a shader to appear black for reflected/glossy rays.

Parameters:

shader (pf.ProcNode[Shader])

infinigen2.objects.ceiling_light.ceiling_light(...) CeilingLightResult[source]#
Parameters:
  • radius (float) -- (default: 0.12)

  • thickness (float) -- (default: 0.0275)

  • inner_radius (float) -- (default: 0.078)

  • height (float) -- (default: 0.063)

  • inner_height (float) -- (default: 0.0504)

  • curvature (float) -- (default: 0.3)

  • energy (float) -- (default: 75.0)

  • temperature (float) -- (default: 4500.0)

  • shadow_soft_size (float) -- (default: 0.025)

  • turned_on (bool) -- (default: True)

  • frame_material (pf.Material | None) -- (default: None)

  • bulb_material (pf.Material | None) -- (default: None)

infinigen2.objects.ceiling_light.ceiling_light_rand(...) CeilingLightResult[source]#

Example renders

infinigen2.objects.ceiling_light.ceiling_light_rand seed 0
infinigen2 ceiling_light_rand object_demo render_cycles --seed 0 --passes rgb -r 512 512 -s 128
infinigen2.objects.ceiling_light.ceiling_light_rand seed 1
infinigen2 ceiling_light_rand object_demo render_cycles --seed 1 --passes rgb -r 512 512 -s 128
infinigen2.objects.ceiling_light.ceiling_light_rand seed 2
infinigen2 ceiling_light_rand object_demo render_cycles --seed 2 --passes rgb -r 512 512 -s 128
infinigen2.objects.ceiling_light.ceiling_light_rand seed 3
infinigen2 ceiling_light_rand object_demo render_cycles --seed 3 --passes rgb -r 512 512 -s 128
infinigen2.objects.ceiling_light.ceiling_light_rand seed 4
infinigen2 ceiling_light_rand object_demo render_cycles --seed 4 --passes rgb -r 512 512 -s 128
infinigen2.objects.ceiling_light.ceiling_light_rand seed 5
infinigen2 ceiling_light_rand object_demo render_cycles --seed 5 --passes rgb -r 512 512 -s 128
Parameters:
  • rng (Generator)

  • energy (float | None) -- (default: None)

  • shadow_soft_size (float | None) -- (default: None)

  • temperature (float | None) -- (default: None)

  • turned_on (bool) -- (default: True)

desk#

class infinigen2.objects.desk.DeskResult(mesh)[source]#

Bases: NamedTuple

mesh: pf.MeshObject#
infinigen2.objects.desk.desk(...) DeskResult[source]#
Parameters:
  • dimensions (pf.Vector | None) -- (default: None)

  • thickness (float) -- (default: 0.02)

  • leg_radius (float) -- (default: 0.0175)

  • leg_dist (float) -- (default: 0.0525)

  • top_material (pf.Material | None) -- (default: None)

  • leg_material (pf.Material | None) -- (default: None)

infinigen2.objects.desk.desk_rand(...) DeskResult[source]#

Example renders

infinigen2.objects.desk.desk_rand seed 0
infinigen2 desk_rand object_demo render_cycles --seed 0 --passes rgb -r 512 512 -s 128
infinigen2.objects.desk.desk_rand seed 1
infinigen2 desk_rand object_demo render_cycles --seed 1 --passes rgb -r 512 512 -s 128
infinigen2.objects.desk.desk_rand seed 2
infinigen2 desk_rand object_demo render_cycles --seed 2 --passes rgb -r 512 512 -s 128
infinigen2.objects.desk.desk_rand seed 3
infinigen2 desk_rand object_demo render_cycles --seed 3 --passes rgb -r 512 512 -s 128
infinigen2.objects.desk.desk_rand seed 4
infinigen2 desk_rand object_demo render_cycles --seed 4 --passes rgb -r 512 512 -s 128
infinigen2.objects.desk.desk_rand seed 5
infinigen2 desk_rand object_demo render_cycles --seed 5 --passes rgb -r 512 512 -s 128
Parameters:

dev#

infinigen2.objects.dev.banana() pf.MeshObject[source]#

drawers#

class infinigen2.objects.drawers.DrawersResult(mesh)[source]#

Bases: NamedTuple

mesh: pf.MeshObject#
infinigen2.objects.drawers.drawers(...) DrawersResult[source]#
Parameters:
  • dimensions (pf.Vector | None) -- (default: None)

  • drawer_board_thickness (float) -- (default: 0.0075)

  • drawer_side_height (float) -- (default: 0.125)

  • drawer_width_gap (float) -- (default: 0.02)

  • knob_radius (float) -- (default: 0.0045)

  • knob_length (float) -- (default: 0.0265)

  • frame_material (pf.Material | None) -- (default: None)

infinigen2.objects.drawers.drawers_rand(
rng,
dimensions=None,
frame_material=None,
) DrawersResult[source]#

Example renders

infinigen2.objects.drawers.drawers_rand seed 0
infinigen2 drawers_rand object_demo render_cycles --seed 0 --passes rgb -r 512 512 -s 128
infinigen2.objects.drawers.drawers_rand seed 1
infinigen2 drawers_rand object_demo render_cycles --seed 1 --passes rgb -r 512 512 -s 128
infinigen2.objects.drawers.drawers_rand seed 2
infinigen2 drawers_rand object_demo render_cycles --seed 2 --passes rgb -r 512 512 -s 128
infinigen2.objects.drawers.drawers_rand seed 3
infinigen2 drawers_rand object_demo render_cycles --seed 3 --passes rgb -r 512 512 -s 128
infinigen2.objects.drawers.drawers_rand seed 4
infinigen2 drawers_rand object_demo render_cycles --seed 4 --passes rgb -r 512 512 -s 128
infinigen2.objects.drawers.drawers_rand seed 5
infinigen2 drawers_rand object_demo render_cycles --seed 5 --passes rgb -r 512 512 -s 128
Parameters:

flower#

class infinigen2.objects.flower.FlowerMaterials(petal, center)[source]#

Bases: NamedTuple

petal: pf.Material#
center: pf.Material#
class infinigen2.objects.flower.FlowerResult(mesh)[source]#

Bases: NamedTuple

mesh: pf.MeshObject#
infinigen2.objects.flower.center_material() pf.Material[source]#
infinigen2.objects.flower.flower(...) FlowerResult[source]#
Parameters:
  • center_rad (float) -- (default: 0.0156)

  • petal_dims (pf.Vector) -- (default: (0.109, 0.0049, 0.0875))

  • seed_size (float) -- (default: 0.001)

  • min_petal_angle (float) -- (default: 0.35)

  • max_petal_angle (float) -- (default: 1.4)

  • wrinkle (float) -- (default: 0.01)

  • curl (float) -- (default: 0.524)

  • petal_material (pf.Material | None) -- (default: None)

  • center_material (pf.Material | None) -- (default: None)

infinigen2.objects.flower.flower_rand(rng, materials=None) FlowerResult[source]#

Example renders

infinigen2.objects.flower.flower_rand seed 0
infinigen2 flower_rand object_demo render_cycles --seed 0 --passes rgb -r 512 512 -s 128
infinigen2.objects.flower.flower_rand seed 1
infinigen2 flower_rand object_demo render_cycles --seed 1 --passes rgb -r 512 512 -s 128
infinigen2.objects.flower.flower_rand seed 2
infinigen2 flower_rand object_demo render_cycles --seed 2 --passes rgb -r 512 512 -s 128
infinigen2.objects.flower.flower_rand seed 3
infinigen2 flower_rand object_demo render_cycles --seed 3 --passes rgb -r 512 512 -s 128
infinigen2.objects.flower.flower_rand seed 4
infinigen2 flower_rand object_demo render_cycles --seed 4 --passes rgb -r 512 512 -s 128
infinigen2.objects.flower.flower_rand seed 5
infinigen2 flower_rand object_demo render_cycles --seed 5 --passes rgb -r 512 512 -s 128
Parameters:

lamp#

class infinigen2.objects.lamp.LampResult(mesh, light)[source]#

Bases: NamedTuple

mesh: pf.MeshObject#
light: LightObject#
infinigen2.objects.lamp.desk_lamp_rand(rng) LampResult[source]#

Example renders

infinigen2.objects.lamp.desk_lamp_rand seed 0
infinigen2 desk_lamp_rand object_demo render_cycles --seed 0 --passes rgb -r 512 512 -s 128
infinigen2.objects.lamp.desk_lamp_rand seed 1
infinigen2 desk_lamp_rand object_demo render_cycles --seed 1 --passes rgb -r 512 512 -s 128
infinigen2.objects.lamp.desk_lamp_rand seed 2
infinigen2 desk_lamp_rand object_demo render_cycles --seed 2 --passes rgb -r 512 512 -s 128
infinigen2.objects.lamp.desk_lamp_rand seed 3
infinigen2 desk_lamp_rand object_demo render_cycles --seed 3 --passes rgb -r 512 512 -s 128
infinigen2.objects.lamp.desk_lamp_rand seed 4
infinigen2 desk_lamp_rand object_demo render_cycles --seed 4 --passes rgb -r 512 512 -s 128
infinigen2.objects.lamp.desk_lamp_rand seed 5
infinigen2 desk_lamp_rand object_demo render_cycles --seed 5 --passes rgb -r 512 512 -s 128
Parameters:

rng (Generator)

infinigen2.objects.lamp.point_light_indoor(
energy=10.0,
temperature=4500.0,
shadow_soft_size=0.02,
) LightObject[source]#

Create a point light with blackbody temperature roughly based on indoor lighting. range 3500-6500K. was expanded to 2000-8000

Parameters:
  • energy (float) -- (default: 10.0)

  • temperature (float) -- (default: 4500.0)

  • shadow_soft_size (float) -- (default: 0.02)

infinigen2.objects.lamp.point_light_indoor_rand(...) LightObject[source]#
Parameters:
  • rng (Generator)

  • energy (float | None) -- (default: None)

  • temperature (float | None) -- (default: None)

  • shadow_soft_size (float) -- (default: 0.02)

infinigen2.objects.lamp.lamp(...) LampResult[source]#
Parameters:
  • stand_radius (float) -- (default: 0.01)

  • base_radius (float) -- (default: 0.1)

  • base_height (float) -- (default: 0.02)

  • shade_height (float) -- (default: 0.24)

  • head_top_radius (float) -- (default: 0.16)

  • head_bot_radius (float) -- (default: 0.185)

  • height (float) -- (default: 0.45)

  • rack_thickness (float) -- (default: 0.002)

  • reverse_lamp (bool) -- (default: True)

  • energy (float) -- (default: 7.0)

  • temperature (float) -- (default: 4500.0)

  • black_material (pf.Material | None) -- (default: None)

  • lampshade_material (pf.Material | None) -- (default: None)

  • metal_material (pf.Material | None) -- (default: None)

infinigen2.objects.lamp.lamp_rand(...) LampResult[source]#

Example renders

infinigen2.objects.lamp.lamp_rand seed 0
infinigen2 lamp_rand object_demo render_cycles --seed 0 --passes rgb -r 512 512 -s 128
infinigen2.objects.lamp.lamp_rand seed 1
infinigen2 lamp_rand object_demo render_cycles --seed 1 --passes rgb -r 512 512 -s 128
infinigen2.objects.lamp.lamp_rand seed 2
infinigen2 lamp_rand object_demo render_cycles --seed 2 --passes rgb -r 512 512 -s 128
infinigen2.objects.lamp.lamp_rand seed 3
infinigen2 lamp_rand object_demo render_cycles --seed 3 --passes rgb -r 512 512 -s 128
infinigen2.objects.lamp.lamp_rand seed 4
infinigen2 lamp_rand object_demo render_cycles --seed 4 --passes rgb -r 512 512 -s 128
infinigen2.objects.lamp.lamp_rand seed 5
infinigen2 lamp_rand object_demo render_cycles --seed 5 --passes rgb -r 512 512 -s 128
Parameters:
  • rng (Generator)

  • height (float | None) -- (default: None)

  • temperature (float | None) -- (default: None)

  • energy (float | None) -- (default: None)

  • head_top_radius (float | None) -- (default: None)

  • head_bot_radius (float | None) -- (default: None)

infinigen2.objects.lamp.lampshade_color_rand(rng) pf.Color[source]#
Parameters:

rng (Generator)

infinigen2.objects.lamp.lampshade_fabric_rand(rng, vector) pf.Material[source]#
Parameters:

random_primitives#

class infinigen2.objects.random_primitives.PrimitivesResult(mesh)[source]#

Bases: NamedTuple

mesh: pf.MeshObject#
infinigen2.objects.random_primitives.all_materials_rand(rng, vector) pf.Material[source]#
Parameters:
infinigen2.objects.random_primitives.primitives_rand(
rng,
target_size=None,
) PrimitivesResult[source]#

Example renders

infinigen2.objects.random_primitives.primitives_rand seed 0
infinigen2 primitives_rand object_demo render_cycles --seed 0 --passes rgb -r 512 512 -s 128
infinigen2.objects.random_primitives.primitives_rand seed 1
infinigen2 primitives_rand object_demo render_cycles --seed 1 --passes rgb -r 512 512 -s 128
infinigen2.objects.random_primitives.primitives_rand seed 2
infinigen2 primitives_rand object_demo render_cycles --seed 2 --passes rgb -r 512 512 -s 128
infinigen2.objects.random_primitives.primitives_rand seed 3
infinigen2 primitives_rand object_demo render_cycles --seed 3 --passes rgb -r 512 512 -s 128
infinigen2.objects.random_primitives.primitives_rand seed 4
infinigen2 primitives_rand object_demo render_cycles --seed 4 --passes rgb -r 512 512 -s 128
infinigen2.objects.random_primitives.primitives_rand seed 5
infinigen2 primitives_rand object_demo render_cycles --seed 5 --passes rgb -r 512 512 -s 128
Parameters:

rug#

class infinigen2.objects.rug.RugResult(mesh)[source]#

Bases: NamedTuple

mesh: pf.MeshObject#
infinigen2.objects.rug.rug(...) RugResult[source]#
Parameters:
  • width (float) -- (default: 2.5)

  • length (float) -- (default: 3.125)

  • fillet_radius (float) -- (default: 0.625)

  • thickness (float) -- (default: 0.015)

  • material (pf.Material | None) -- (default: None)

infinigen2.objects.rug.rug_rand(rng, dimensions=None) RugResult[source]#

Example renders

infinigen2.objects.rug.rug_rand seed 0
infinigen2 rug_rand object_demo render_cycles --seed 0 --passes rgb -r 512 512 -s 128
infinigen2.objects.rug.rug_rand seed 1
infinigen2 rug_rand object_demo render_cycles --seed 1 --passes rgb -r 512 512 -s 128
infinigen2.objects.rug.rug_rand seed 2
infinigen2 rug_rand object_demo render_cycles --seed 2 --passes rgb -r 512 512 -s 128
infinigen2.objects.rug.rug_rand seed 3
infinigen2 rug_rand object_demo render_cycles --seed 3 --passes rgb -r 512 512 -s 128
infinigen2.objects.rug.rug_rand seed 4
infinigen2 rug_rand object_demo render_cycles --seed 4 --passes rgb -r 512 512 -s 128
infinigen2.objects.rug.rug_rand seed 5
infinigen2 rug_rand object_demo render_cycles --seed 5 --passes rgb -r 512 512 -s 128
Parameters:

slot_cabinet#

class infinigen2.objects.slot_cabinet.SlotCabinetResult(mesh)[source]#

Bases: NamedTuple

mesh: pf.MeshObject#
infinigen2.objects.slot_cabinet.metric_box_uv(geometry) pf.ProcNode[source]#

Store metric box-projection UVs computed from the current positions.

Per face, picks the two in-plane position axes so texture directions stay aligned with the board edges, rotated 90deg so grain runs along the boards, then writes them as a CORNER β€œUVMap”.

Parameters:

geometry (pf.ProcNode)

infinigen2.objects.slot_cabinet.shelf(...) pf.ProcNode[source]#
Parameters:
infinigen2.objects.slot_cabinet.slot_cabinet_rand(...) SlotCabinetResult[source]#

Example renders

infinigen2.objects.slot_cabinet.slot_cabinet_rand seed 0
infinigen2 slot_cabinet_rand object_demo render_cycles --seed 0 --passes rgb -r 512 512 -s 128
infinigen2.objects.slot_cabinet.slot_cabinet_rand seed 1
infinigen2 slot_cabinet_rand object_demo render_cycles --seed 1 --passes rgb -r 512 512 -s 128
infinigen2.objects.slot_cabinet.slot_cabinet_rand seed 2
infinigen2 slot_cabinet_rand object_demo render_cycles --seed 2 --passes rgb -r 512 512 -s 128
infinigen2.objects.slot_cabinet.slot_cabinet_rand seed 3
infinigen2 slot_cabinet_rand object_demo render_cycles --seed 3 --passes rgb -r 512 512 -s 128
infinigen2.objects.slot_cabinet.slot_cabinet_rand seed 4
infinigen2 slot_cabinet_rand object_demo render_cycles --seed 4 --passes rgb -r 512 512 -s 128
infinigen2.objects.slot_cabinet.slot_cabinet_rand seed 5
infinigen2 slot_cabinet_rand object_demo render_cycles --seed 5 --passes rgb -r 512 512 -s 128
Parameters:

sofa#

class infinigen2.objects.sofa.SofaResult(mesh)[source]#

Bases: NamedTuple

mesh: pf.MeshObject#
infinigen2.objects.sofa.sofa(...) SofaResult[source]#
Parameters:
  • dimensions (pf.Vector | None) -- (default: None)

  • arm_dimensions (pf.Vector) -- (default: (1.0, 0.105, 0.625))

  • back_dimensions (pf.Vector) -- (default: (0.2, 0.0, 0.625))

  • seat_dimensions (pf.Vector | None) -- (default: None)

  • foot_dimensions (pf.Vector) -- (default: (0.16, 0.06, 0.06))

  • baseboard_height (float) -- (default: 0.07)

  • backrest_width (float) -- (default: 0.15)

  • seat_margin (float) -- (default: 0.985)

  • backrest_angle (float) -- (default: -0.325)

  • arm_width (float) -- (default: 0.75)

  • arm_type (int) -- (default: 0)

  • arm_height (float) -- (default: 0.8)

  • arms_angle (float) -- (default: 0.54)

  • reflection (int) -- (default: 1)

  • leg_type (bool) -- (default: True)

  • leg_dimensions (float) -- (default: 0.65)

  • leg_z (float) -- (default: 1.8)

  • leg_faces (int) -- (default: 4)

  • body_crease (float) -- (default: 0.7)

  • cushion_crease (float) -- (default: 0.15)

  • arm_back_crease (float) -- (default: 0.2)

  • fabric_material (pf.Material | None) -- (default: None)

  • foot_material (pf.Material | None) -- (default: None)

infinigen2.objects.sofa.sofa_rand(...) SofaResult[source]#

Example renders

infinigen2.objects.sofa.sofa_rand seed 0
infinigen2 sofa_rand object_demo render_cycles --seed 0 --passes rgb -r 512 512 -s 128
infinigen2.objects.sofa.sofa_rand seed 1
infinigen2 sofa_rand object_demo render_cycles --seed 1 --passes rgb -r 512 512 -s 128
infinigen2.objects.sofa.sofa_rand seed 2
infinigen2 sofa_rand object_demo render_cycles --seed 2 --passes rgb -r 512 512 -s 128
infinigen2.objects.sofa.sofa_rand seed 3
infinigen2 sofa_rand object_demo render_cycles --seed 3 --passes rgb -r 512 512 -s 128
infinigen2.objects.sofa.sofa_rand seed 4
infinigen2 sofa_rand object_demo render_cycles --seed 4 --passes rgb -r 512 512 -s 128
infinigen2.objects.sofa.sofa_rand seed 5
infinigen2 sofa_rand object_demo render_cycles --seed 5 --passes rgb -r 512 512 -s 128
Parameters:

table#

class infinigen2.objects.table.TableResult(mesh)[source]#

Bases: NamedTuple

mesh: pf.MeshObject#
infinigen2.objects.table.base_single_stand(...) TableResult[source]#

2 pedestal legs.

Parameters:
  • dimensions (pf.Vector | None) -- (default: None)

  • leg_diameter (float | None) -- (default: None)

  • leg_placement_top_scale (float) -- (default: 0.65)

  • leg_placement_bottom_scale (float) -- (default: 1.0)

  • top_radius (float) -- (default: 0.23)

  • middle_radius (float) -- (default: 0.35)

  • bottom_radius (float) -- (default: 1.7)

infinigen2.objects.table.base_single_stand_rand(rng, dimensions=None) TableResult[source]#

2 pedestal legs.

Example renders

infinigen2.objects.table.base_single_stand_rand seed 0
infinigen2 base_single_stand_rand object_demo render_cycles --seed 0 --passes rgb -r 512 512 -s 128
infinigen2.objects.table.base_single_stand_rand seed 1
infinigen2 base_single_stand_rand object_demo render_cycles --seed 1 --passes rgb -r 512 512 -s 128
infinigen2.objects.table.base_single_stand_rand seed 2
infinigen2 base_single_stand_rand object_demo render_cycles --seed 2 --passes rgb -r 512 512 -s 128
infinigen2.objects.table.base_single_stand_rand seed 3
infinigen2 base_single_stand_rand object_demo render_cycles --seed 3 --passes rgb -r 512 512 -s 128
infinigen2.objects.table.base_single_stand_rand seed 4
infinigen2 base_single_stand_rand object_demo render_cycles --seed 4 --passes rgb -r 512 512 -s 128
infinigen2.objects.table.base_single_stand_rand seed 5
infinigen2 base_single_stand_rand object_demo render_cycles --seed 5 --passes rgb -r 512 512 -s 128
Parameters:
infinigen2.objects.table.base_square(...) TableResult[source]#

2 box-frame legs.

Parameters:
  • dimensions (pf.Vector | None) -- (default: None)

  • leg_diameter (float) -- (default: 0.085)

  • leg_placement_top_scale (float) -- (default: 0.8)

  • leg_placement_bottom_scale (float) -- (default: 1.0)

  • has_bottom_connector (bool) -- (default: True)

infinigen2.objects.table.base_square_rand(rng, dimensions=None) TableResult[source]#

2 box-frame legs.

Example renders

infinigen2.objects.table.base_square_rand seed 0
infinigen2 base_square_rand object_demo render_cycles --seed 0 --passes rgb -r 512 512 -s 128
infinigen2.objects.table.base_square_rand seed 1
infinigen2 base_square_rand object_demo render_cycles --seed 1 --passes rgb -r 512 512 -s 128
infinigen2.objects.table.base_square_rand seed 2
infinigen2 base_square_rand object_demo render_cycles --seed 2 --passes rgb -r 512 512 -s 128
infinigen2.objects.table.base_square_rand seed 3
infinigen2 base_square_rand object_demo render_cycles --seed 3 --passes rgb -r 512 512 -s 128
infinigen2.objects.table.base_square_rand seed 4
infinigen2 base_square_rand object_demo render_cycles --seed 4 --passes rgb -r 512 512 -s 128
infinigen2.objects.table.base_square_rand seed 5
infinigen2 base_square_rand object_demo render_cycles --seed 5 --passes rgb -r 512 512 -s 128
Parameters:
infinigen2.objects.table.base_straight(...) TableResult[source]#

4-leg base with optional stretchers.

Parameters:
  • dimensions (pf.Vector | None) -- (default: None)

  • leg_diameter (float) -- (default: 0.06)

  • leg_placement_top_scale (float) -- (default: 0.8)

  • leg_placement_bottom_scale (float) -- (default: 1.1)

  • stretcher_increment (int) -- (default: 1)

  • stretcher_relative_pos (float) -- (default: 0.4)

infinigen2.objects.table.base_straight_rand(rng, dimensions=None) TableResult[source]#

4-leg base with optional stretchers.

Example renders

infinigen2.objects.table.base_straight_rand seed 0
infinigen2 base_straight_rand object_demo render_cycles --seed 0 --passes rgb -r 512 512 -s 128
infinigen2.objects.table.base_straight_rand seed 1
infinigen2 base_straight_rand object_demo render_cycles --seed 1 --passes rgb -r 512 512 -s 128
infinigen2.objects.table.base_straight_rand seed 2
infinigen2 base_straight_rand object_demo render_cycles --seed 2 --passes rgb -r 512 512 -s 128
infinigen2.objects.table.base_straight_rand seed 3
infinigen2 base_straight_rand object_demo render_cycles --seed 3 --passes rgb -r 512 512 -s 128
infinigen2.objects.table.base_straight_rand seed 4
infinigen2 base_straight_rand object_demo render_cycles --seed 4 --passes rgb -r 512 512 -s 128
infinigen2.objects.table.base_straight_rand seed 5
infinigen2 base_straight_rand object_demo render_cycles --seed 5 --passes rgb -r 512 512 -s 128
Parameters:
infinigen2.objects.table.cocktail_table_rand(rng) TableResult[source]#

Tall square cocktail/bar table with single pedestal base.

Example renders

infinigen2.objects.table.cocktail_table_rand seed 0
infinigen2 cocktail_table_rand object_demo render_cycles --seed 0 --passes rgb -r 512 512 -s 128
infinigen2.objects.table.cocktail_table_rand seed 1
infinigen2 cocktail_table_rand object_demo render_cycles --seed 1 --passes rgb -r 512 512 -s 128
infinigen2.objects.table.cocktail_table_rand seed 2
infinigen2 cocktail_table_rand object_demo render_cycles --seed 2 --passes rgb -r 512 512 -s 128
infinigen2.objects.table.cocktail_table_rand seed 3
infinigen2 cocktail_table_rand object_demo render_cycles --seed 3 --passes rgb -r 512 512 -s 128
infinigen2.objects.table.cocktail_table_rand seed 4
infinigen2 cocktail_table_rand object_demo render_cycles --seed 4 --passes rgb -r 512 512 -s 128
infinigen2.objects.table.cocktail_table_rand seed 5
infinigen2 cocktail_table_rand object_demo render_cycles --seed 5 --passes rgb -r 512 512 -s 128
Parameters:

rng (Generator)

infinigen2.objects.table.coffee_table_rand(rng) TableResult[source]#

Low rectangular coffee table.

Example renders

infinigen2.objects.table.coffee_table_rand seed 0
infinigen2 coffee_table_rand object_demo render_cycles --seed 0 --passes rgb -r 512 512 -s 128
infinigen2.objects.table.coffee_table_rand seed 1
infinigen2 coffee_table_rand object_demo render_cycles --seed 1 --passes rgb -r 512 512 -s 128
infinigen2.objects.table.coffee_table_rand seed 2
infinigen2 coffee_table_rand object_demo render_cycles --seed 2 --passes rgb -r 512 512 -s 128
infinigen2.objects.table.coffee_table_rand seed 3
infinigen2 coffee_table_rand object_demo render_cycles --seed 3 --passes rgb -r 512 512 -s 128
infinigen2.objects.table.coffee_table_rand seed 4
infinigen2 coffee_table_rand object_demo render_cycles --seed 4 --passes rgb -r 512 512 -s 128
infinigen2.objects.table.coffee_table_rand seed 5
infinigen2 coffee_table_rand object_demo render_cycles --seed 5 --passes rgb -r 512 512 -s 128
Parameters:

rng (Generator)

infinigen2.objects.table.dining_table_rand(...) TableResult[source]#

Example renders

infinigen2.objects.table.dining_table_rand seed 0
infinigen2 dining_table_rand object_demo render_cycles --seed 0 --passes rgb -r 512 512 -s 128
infinigen2.objects.table.dining_table_rand seed 1
infinigen2 dining_table_rand object_demo render_cycles --seed 1 --passes rgb -r 512 512 -s 128
infinigen2.objects.table.dining_table_rand seed 2
infinigen2 dining_table_rand object_demo render_cycles --seed 2 --passes rgb -r 512 512 -s 128
infinigen2.objects.table.dining_table_rand seed 3
infinigen2 dining_table_rand object_demo render_cycles --seed 3 --passes rgb -r 512 512 -s 128
infinigen2.objects.table.dining_table_rand seed 4
infinigen2 dining_table_rand object_demo render_cycles --seed 4 --passes rgb -r 512 512 -s 128
infinigen2.objects.table.dining_table_rand seed 5
infinigen2 dining_table_rand object_demo render_cycles --seed 5 --passes rgb -r 512 512 -s 128
Parameters:
infinigen2.objects.table.side_table_dimensions_rand(rng) pf.Vector[source]#

Side table dimensions.

Parameters:

rng (Generator)

infinigen2.objects.table.side_table_rand(rng) TableResult[source]#

Side table.

Example renders

infinigen2.objects.table.side_table_rand seed 0
infinigen2 side_table_rand object_demo render_cycles --seed 0 --passes rgb -r 512 512 -s 128
infinigen2.objects.table.side_table_rand seed 1
infinigen2 side_table_rand object_demo render_cycles --seed 1 --passes rgb -r 512 512 -s 128
infinigen2.objects.table.side_table_rand seed 2
infinigen2 side_table_rand object_demo render_cycles --seed 2 --passes rgb -r 512 512 -s 128
infinigen2.objects.table.side_table_rand seed 3
infinigen2 side_table_rand object_demo render_cycles --seed 3 --passes rgb -r 512 512 -s 128
infinigen2.objects.table.side_table_rand seed 4
infinigen2 side_table_rand object_demo render_cycles --seed 4 --passes rgb -r 512 512 -s 128
infinigen2.objects.table.side_table_rand seed 5
infinigen2 side_table_rand object_demo render_cycles --seed 5 --passes rgb -r 512 512 -s 128
Parameters:

rng (Generator)

infinigen2.objects.table.table_dimensions_rand(rng, width=None, height=None) pf.Vector[source]#

Default dining table dimensions.

Parameters:
  • rng (Generator)

  • width (float | None) -- (default: None)

  • height (float | None) -- (default: None)

infinigen2.objects.table.table_top(
size=(1.4, 0.8, 0.05),
support_loop_offset=(0.02, 0.02, 0.01),
) pf.ProcNode[pf.MeshObject][source]#

Slab spanning z in [0, size.z]; support_loop_offset sets edge roundness. Subdivision is left to an unapplied modifier on the final object.

Parameters:

triangle_shelf#

class infinigen2.objects.triangle_shelf.TriangleShelfResult(mesh)[source]#

Bases: NamedTuple

mesh: pf.MeshObject#
infinigen2.objects.triangle_shelf.triangle_shelf(...) TriangleShelfResult[source]#
Parameters:
  • dimensions (pf.Vector | None) -- (default: None)

  • leg_board_gap (float) -- (default: 0.0035)

  • leg_width (float) -- (default: 0.02)

  • leg_depth (float) -- (default: 0.015)

  • leg_curvature_ratio (float) -- (default: 0.01)

  • board_thickness (float) -- (default: 0.0175)

  • board_extrude_length (float) -- (default: 0.05)

  • side_board_height (float) -- (default: 0.03)

  • bottom_layer_height (float) -- (default: 0.075)

  • mid_layer_height (float | None) -- (default: None)

  • top_layer_height (float | None) -- (default: None)

  • leg_material (pf.Material | None) -- (default: None)

  • board_material (pf.Material | None) -- (default: None)

  • screw_material (pf.Material | None) -- (default: None)

infinigen2.objects.triangle_shelf.triangle_shelf_rand(...) TriangleShelfResult[source]#

Example renders

infinigen2.objects.triangle_shelf.triangle_shelf_rand seed 0
infinigen2 triangle_shelf_rand object_demo render_cycles --seed 0 --passes rgb -r 512 512 -s 128
infinigen2.objects.triangle_shelf.triangle_shelf_rand seed 1
infinigen2 triangle_shelf_rand object_demo render_cycles --seed 1 --passes rgb -r 512 512 -s 128
infinigen2.objects.triangle_shelf.triangle_shelf_rand seed 2
infinigen2 triangle_shelf_rand object_demo render_cycles --seed 2 --passes rgb -r 512 512 -s 128
infinigen2.objects.triangle_shelf.triangle_shelf_rand seed 3
infinigen2 triangle_shelf_rand object_demo render_cycles --seed 3 --passes rgb -r 512 512 -s 128
infinigen2.objects.triangle_shelf.triangle_shelf_rand seed 4
infinigen2 triangle_shelf_rand object_demo render_cycles --seed 4 --passes rgb -r 512 512 -s 128
infinigen2.objects.triangle_shelf.triangle_shelf_rand seed 5
infinigen2 triangle_shelf_rand object_demo render_cycles --seed 5 --passes rgb -r 512 512 -s 128
Parameters:

vase#

class infinigen2.objects.vase.VaseResult(mesh)[source]#

Bases: NamedTuple

mesh: pf.MeshObject#
infinigen2.objects.vase.vase(...) VaseResult[source]#
Parameters:
  • u_resolution (int) -- (default: 64)

  • v_resolution (int) -- (default: 64)

  • height (float) -- (default: 0.33)

  • diameter (float) -- (default: 0.15)

  • profile_inner_radius (float) -- (default: 1.0)

  • profile_star_points (int) -- (default: 24)

  • top_scale (float) -- (default: 0.5)

  • neck_mid_position (float) -- (default: 0.85)

  • neck_position (float) -- (default: 0.75)

  • neck_scale (float) -- (default: 0.5)

  • shoulder_position (float) -- (default: 0.5)

  • shoulder_thickness (float) -- (default: 0.175)

  • foot_scale (float) -- (default: 0.5)

  • foot_height (float) -- (default: 0.05)

  • material (pf.Material | None) -- (default: None)

  • thickness (float) -- (default: 0.0075)

infinigen2.objects.vase.vase_material_rand(rng, vec) pf.Material[source]#
Parameters:
infinigen2.objects.vase.vase_rand(rng) VaseResult[source]#

Example renders

infinigen2.objects.vase.vase_rand seed 0
infinigen2 vase_rand object_demo render_cycles --seed 0 --passes rgb -r 512 512 -s 128
infinigen2.objects.vase.vase_rand seed 1
infinigen2 vase_rand object_demo render_cycles --seed 1 --passes rgb -r 512 512 -s 128
infinigen2.objects.vase.vase_rand seed 2
infinigen2 vase_rand object_demo render_cycles --seed 2 --passes rgb -r 512 512 -s 128
infinigen2.objects.vase.vase_rand seed 3
infinigen2 vase_rand object_demo render_cycles --seed 3 --passes rgb -r 512 512 -s 128
infinigen2.objects.vase.vase_rand seed 4
infinigen2 vase_rand object_demo render_cycles --seed 4 --passes rgb -r 512 512 -s 128
infinigen2.objects.vase.vase_rand seed 5
infinigen2 vase_rand object_demo render_cycles --seed 5 --passes rgb -r 512 512 -s 128
Parameters:

rng (Generator)

wall_art#

class infinigen2.objects.wall_art.WallArtResult(mesh)[source]#

Bases: NamedTuple

mesh: pf.MeshObject#
infinigen2.objects.wall_art.art_frame(...) pf.ProcNode[source]#
Parameters:
infinigen2.objects.wall_art.mirror_rand(rng, dimensions=None) WallArtResult[source]#

Example renders

infinigen2.objects.wall_art.mirror_rand seed 0
infinigen2 mirror_rand object_demo render_cycles --seed 0 --passes rgb -r 512 512 -s 128
infinigen2.objects.wall_art.mirror_rand seed 1
infinigen2 mirror_rand object_demo render_cycles --seed 1 --passes rgb -r 512 512 -s 128
infinigen2.objects.wall_art.mirror_rand seed 2
infinigen2 mirror_rand object_demo render_cycles --seed 2 --passes rgb -r 512 512 -s 128
infinigen2.objects.wall_art.mirror_rand seed 3
infinigen2 mirror_rand object_demo render_cycles --seed 3 --passes rgb -r 512 512 -s 128
infinigen2.objects.wall_art.mirror_rand seed 4
infinigen2 mirror_rand object_demo render_cycles --seed 4 --passes rgb -r 512 512 -s 128
infinigen2.objects.wall_art.mirror_rand seed 5
infinigen2 mirror_rand object_demo render_cycles --seed 5 --passes rgb -r 512 512 -s 128
Parameters:
infinigen2.objects.wall_art.mirror_surface_material_rand(rng, vector) pf.Material[source]#
Parameters:
infinigen2.objects.wall_art.wall_art_rand(...) WallArtResult[source]#

Example renders

infinigen2.objects.wall_art.wall_art_rand seed 0
infinigen2 wall_art_rand object_demo render_cycles --seed 0 --passes rgb -r 512 512 -s 128
infinigen2.objects.wall_art.wall_art_rand seed 1
infinigen2 wall_art_rand object_demo render_cycles --seed 1 --passes rgb -r 512 512 -s 128
infinigen2.objects.wall_art.wall_art_rand seed 2
infinigen2 wall_art_rand object_demo render_cycles --seed 2 --passes rgb -r 512 512 -s 128
infinigen2.objects.wall_art.wall_art_rand seed 3
infinigen2 wall_art_rand object_demo render_cycles --seed 3 --passes rgb -r 512 512 -s 128
infinigen2.objects.wall_art.wall_art_rand seed 4
infinigen2 wall_art_rand object_demo render_cycles --seed 4 --passes rgb -r 512 512 -s 128
infinigen2.objects.wall_art.wall_art_rand seed 5
infinigen2 wall_art_rand object_demo render_cycles --seed 5 --passes rgb -r 512 512 -s 128
Parameters:

window#

class infinigen2.objects.window.CurtainResult(mesh)[source]#

Bases: NamedTuple

mesh: pf.MeshObject#
class infinigen2.objects.window.WindowResult(mesh, light)[source]#

Bases: NamedTuple

mesh: pf.MeshObject#
light: LightObject#
infinigen2.objects.window.curtain(...) CurtainResult[source]#
Parameters:
  • width (float) -- (default: 2.5)

  • depth (float) -- (default: 0.049)

  • height (float) -- (default: 2.5)

  • interval_number (float) -- (default: 22)

  • radius (float) -- (default: 0.015)

  • l1 (float) -- (default: -1.25)

  • r1 (float) -- (default: -0.4375)

  • l2 (float) -- (default: 0.4375)

  • r2 (float) -- (default: 1.25)

  • frame_depth (float) -- (default: -0.075)

  • curtain_frame_material (pf.Material | None) -- (default: None)

  • curtain_material (pf.Material | None) -- (default: None)

infinigen2.objects.window.curtain_rand(...) CurtainResult[source]#

Example renders

infinigen2.objects.window.curtain_rand seed 0
infinigen2 curtain_rand object_demo render_cycles --seed 0 --passes rgb -r 512 512 -s 128
infinigen2.objects.window.curtain_rand seed 1
infinigen2 curtain_rand object_demo render_cycles --seed 1 --passes rgb -r 512 512 -s 128
infinigen2.objects.window.curtain_rand seed 2
infinigen2 curtain_rand object_demo render_cycles --seed 2 --passes rgb -r 512 512 -s 128
infinigen2.objects.window.curtain_rand seed 3
infinigen2 curtain_rand object_demo render_cycles --seed 3 --passes rgb -r 512 512 -s 128
infinigen2.objects.window.curtain_rand seed 4
infinigen2 curtain_rand object_demo render_cycles --seed 4 --passes rgb -r 512 512 -s 128
infinigen2.objects.window.curtain_rand seed 5
infinigen2 curtain_rand object_demo render_cycles --seed 5 --passes rgb -r 512 512 -s 128
Parameters:
infinigen2.objects.window.window(...) WindowResult[source]#
Parameters:
  • dimensions (pf.Vector | None) -- (default: None)

  • frame_width (float) -- (default: 0.035)

  • panel_h_amount (int) -- (default: 2)

  • panel_v_amount (int) -- (default: 2)

  • sub_frame_width (float) -- (default: 0.0225)

  • sub_frame_thickness (float) -- (default: 0.0525)

  • sub_panel_h_amount (int) -- (default: 1)

  • sub_panel_v_amount (int) -- (default: 1)

  • shutter (bool) -- (default: False)

  • shutter_panel_radius (float) -- (default: 0.002)

  • shutter_width (float) -- (default: 0.04)

  • shutter_thickness (float) -- (default: 0.005)

  • shutter_rotation (float) -- (default: 0.707)

  • shutter_interval (float) -- (default: 0.0424)

  • frame_material (pf.Material | None) -- (default: None)

  • glass_material (pf.Material | None) -- (default: None)

  • include_glass_pane (bool) -- (default: True)

infinigen2.objects.window.window_dimensions_rand(rng, width=None, height=None) pf.Vector[source]#
Parameters:
  • rng (Generator)

  • width (float | None) -- (default: None)

  • height (float | None) -- (default: None)

infinigen2.objects.window.window_rand(...) WindowResult[source]#

Example renders

infinigen2.objects.window.window_rand seed 0
infinigen2 window_rand object_demo render_cycles --seed 0 --passes rgb -r 512 512 -s 128
infinigen2.objects.window.window_rand seed 1
infinigen2 window_rand object_demo render_cycles --seed 1 --passes rgb -r 512 512 -s 128
infinigen2.objects.window.window_rand seed 2
infinigen2 window_rand object_demo render_cycles --seed 2 --passes rgb -r 512 512 -s 128
infinigen2.objects.window.window_rand seed 3
infinigen2 window_rand object_demo render_cycles --seed 3 --passes rgb -r 512 512 -s 128
infinigen2.objects.window.window_rand seed 4
infinigen2 window_rand object_demo render_cycles --seed 4 --passes rgb -r 512 512 -s 128
infinigen2.objects.window.window_rand seed 5
infinigen2 window_rand object_demo render_cycles --seed 5 --passes rgb -r 512 512 -s 128
Parameters:

Module contents#