CASA workshop 3AMIGAS (supported by FOCUS K3D and GATE)
Technical program presentation no. 2:
presenter Tim Tutenel, TU Delft
http://www.cs.uu.nl/events/3amigas/
http://www.focusk3d.eu/
http://gate.gameresearch.nl
Exploring the Future Potential of AI-Enabled Smartphone Processors
Rule-based Layout Solving and Its Application to Procedural Interior Generation
1. Rule-based layout solving and its application to
procedural interior generation
CASA Workshop on 3D Advanced Media In Gaming And Simulation (3AMIGAS)
Tim Tutenel, Ruben M. Smelik, Rafael Bidarra, Klaas Jan de Kraker
June 19, 2009
1
2. Rule-based layout solving and its application to
procedural interior generation
CASA Workshop on 3D Advanced Media In Gaming And Simulation (3AMIGAS)
Tim Tutenel, Ruben M. Smelik, Rafael Bidarra, Klaas Jan de Kraker
June 19, 2009
2
3. Rule-based layout solving
• (Semi-)Automated placement of objects based on
relationships
• Why focus on interiors?
• General structure
• A lot of user knowledge
June 17, 2009 3
4. Solving approach
Class Library
Class rules
Class and features
User Input
Possible
or object Solver
locations
Planner
June 17, 2009 4
5. Feature-based class representation
• Geometric representation valid for each instance of
that class
• Relatively defined (on top of, in front of, …)
• Different feature types
• OffLimit
• Clearance
• …
June 17, 2009 5
6. Cupboard representation
Clearance
feature in front
of cupboard
OffLimits
feature
June 17, 2009 6
7. Class relationships
• Examples:
• Sofa instance should face TV instance when present
• The back of a Cupboard instance should be against
a Wall feature
• DinnerPlate instance on stack in a cupboard or on
top of a Table instance
June 17, 2009 7
8. Hierarchical solving with sub plans
• Example: Desk
• A lot of linked objects (chair, computer, lamp, filing
cabinet, phone…)
• For layout purposes: it is one block
June 17, 2009 8
9. Solving mechanism
• Find all possible areas from the ground type
• Remove invalid areas based on the features present in
the current scene
• Intersect with the areas described in the rules
June 17, 2009 9
12. Solving approach
Class Library
Class rules
Class and features
User Input
Possible
or object Solver
locations
Planner
June 17, 2009 12
13. Planner overview
• Submits objects to solver based on a procedure
containing rules like:
• Place 2 instances of class Table
• Place as many instances of class Chair as possible
• Add instances of class Cupboard until total amount
of storage > 1.3 m³
June 17, 2009 13
19. Conclusion
• Layout solving approach
• Speed up manual design
• Automatically create parts of game worlds
• Interior generation possible at runtime
• Generic approach by using abstract class representations
• Future work
• Integration with comprehensive semantics-based class
library
• Visual editing possibilities for the classes, rules and plans
• Maintaining relationships when editing
June 17, 2009 19