TL;DR
ProcFunc is a Python library for Blender that simplifies procedural 3D generation, enabling efficient creation of diverse data and editing of procedural code for applications like indoor room generation.
Contribution
It introduces a new Python library that streamlines procedural 3D generation, combining ease of use with capabilities for large-scale data creation and editing by vision-language models.
Findings
Demonstrates detailed, efficient, and diverse indoor room generator.
Enables large-scale data generation for training.
Facilitates editing and creation of procedural code with fewer errors.
Abstract
We introduce ProcFunc, a library for Blender-based procedural 3D generation in Python. ProcFunc provides a library of easy-to-use Python functions, which streamline creating, combining, analyzing, and executing procedural generation code. ProcFunc makes it easy to create large-scale diverse training data, by combinatorial compositions of semantic components. VLMs can use ProcFunc to edit procedural material and geometry code and can create new procedural code with significantly fewer coding errors. Finally, as an example use case, we use ProcFunc to develop a new procedural generator of indoor rooms, which includes a collection of new compositional procedural materials. We demonstrate the detail, runtime efficiency, and diversity of this room generator, as well as its use for 3D synthetic data generation. Please visit https://github.com/princeton-vl/procfunc for source code.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
