SlideShare uma empresa Scribd logo
1 de 20
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
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
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
Solving approach


                   Class Library

                                    Class rules
                      Class        and features

      User Input
                                                   Possible
          or          object         Solver
                                                  locations
       Planner




June 17, 2009                                             4
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
Cupboard representation
                          Clearance
                          feature in front
                          of cupboard


      OffLimits
      feature




June 17, 2009                       6
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
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
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
Glass on table




June 17, 2009    10
Attractors and detractors


• Boolean approach not always desirable




June 17, 2009                             11
Solving approach


                   Class Library

                                    Class rules
                      Class        and features

      User Input
                                                   Possible
          or          object         Solver
                                                  locations
       Planner




June 17, 2009                                             12
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
Multiple example solutions




June 17, 2009                14
Living room example




                      Time: 152 ms
                      Nr of objects: 30

June 17, 2009                  15
Factory example




June 17, 2009     16
House layout example




June 17, 2009          17
Road example




June 17, 2009   18
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
Questions




June 17, 2009   20

Mais conteúdo relacionado

Semelhante a Rule-based Layout Solving and Its Application to Procedural Interior Generation

DDD Part3 Retrospective
DDD Part3 RetrospectiveDDD Part3 Retrospective
DDD Part3 RetrospectiveYukei Wachi
 
Open Source Tools For Freelancers
Open Source Tools For FreelancersOpen Source Tools For Freelancers
Open Source Tools For FreelancersChristie Koehler
 
Introduction to Go
Introduction to GoIntroduction to Go
Introduction to Gozhubert
 
The State of the Social Desktop 2009
The State of the Social Desktop 2009The State of the Social Desktop 2009
The State of the Social Desktop 2009Frank Karlitschek
 
MiningTheSocialWeb.Ch2.Microformat
MiningTheSocialWeb.Ch2.MicroformatMiningTheSocialWeb.Ch2.Microformat
MiningTheSocialWeb.Ch2.MicroformatHyeonSeok Choi
 
Dev tools rendering & memory profiling
Dev tools rendering & memory profilingDev tools rendering & memory profiling
Dev tools rendering & memory profilingOpen Academy
 
Google Chrome DevTools: Rendering & Memory profiling on Open Academy 2013
Google Chrome DevTools: Rendering & Memory profiling on Open Academy 2013Google Chrome DevTools: Rendering & Memory profiling on Open Academy 2013
Google Chrome DevTools: Rendering & Memory profiling on Open Academy 2013Máté Nádasdi
 
The Social Desktop - Keynote Akademy 2008
The Social Desktop - Keynote Akademy 2008The Social Desktop - Keynote Akademy 2008
The Social Desktop - Keynote Akademy 2008Frank Karlitschek
 
Advanced Skinning & Styling for Android
Advanced Skinning & Styling for AndroidAdvanced Skinning & Styling for Android
Advanced Skinning & Styling for Androidcephus07
 
Computer vision old problems new solutions
Computer vision   old problems new solutionsComputer vision   old problems new solutions
Computer vision old problems new solutionsGopi Krishna Nuti
 
Apcug 2011 07-17-intro_to_drupal_jeff_schuler
Apcug 2011 07-17-intro_to_drupal_jeff_schulerApcug 2011 07-17-intro_to_drupal_jeff_schuler
Apcug 2011 07-17-intro_to_drupal_jeff_schulerhewie
 
Explanation Capabilities of the Open Source Case-Based Reasoning Tool myCBR
Explanation Capabilities of the Open Source Case-Based Reasoning Tool myCBRExplanation Capabilities of the Open Source Case-Based Reasoning Tool myCBR
Explanation Capabilities of the Open Source Case-Based Reasoning Tool myCBRThomas Roth-Berghofer
 
COMP 775 Motion planning paper presentation
COMP 775 Motion planning paper presentation COMP 775 Motion planning paper presentation
COMP 775 Motion planning paper presentation Ravikiran J
 
Non Relational Databases And World Domination
Non Relational Databases And World DominationNon Relational Databases And World Domination
Non Relational Databases And World DominationJason Davies
 

Semelhante a Rule-based Layout Solving and Its Application to Procedural Interior Generation (20)

All The Little Pieces
All The Little PiecesAll The Little Pieces
All The Little Pieces
 
DDD Part3 Retrospective
DDD Part3 RetrospectiveDDD Part3 Retrospective
DDD Part3 Retrospective
 
Open Source Tools For Freelancers
Open Source Tools For FreelancersOpen Source Tools For Freelancers
Open Source Tools For Freelancers
 
Introduction to Go
Introduction to GoIntroduction to Go
Introduction to Go
 
The State of the Social Desktop 2009
The State of the Social Desktop 2009The State of the Social Desktop 2009
The State of the Social Desktop 2009
 
MiningTheSocialWeb.Ch2.Microformat
MiningTheSocialWeb.Ch2.MicroformatMiningTheSocialWeb.Ch2.Microformat
MiningTheSocialWeb.Ch2.Microformat
 
Dev tools rendering & memory profiling
Dev tools rendering & memory profilingDev tools rendering & memory profiling
Dev tools rendering & memory profiling
 
Google Chrome DevTools: Rendering & Memory profiling on Open Academy 2013
Google Chrome DevTools: Rendering & Memory profiling on Open Academy 2013Google Chrome DevTools: Rendering & Memory profiling on Open Academy 2013
Google Chrome DevTools: Rendering & Memory profiling on Open Academy 2013
 
The Social Desktop - Keynote Akademy 2008
The Social Desktop - Keynote Akademy 2008The Social Desktop - Keynote Akademy 2008
The Social Desktop - Keynote Akademy 2008
 
Capitol js
Capitol jsCapitol js
Capitol js
 
Advanced Skinning & Styling for Android
Advanced Skinning & Styling for AndroidAdvanced Skinning & Styling for Android
Advanced Skinning & Styling for Android
 
Component-first Applications
Component-first ApplicationsComponent-first Applications
Component-first Applications
 
Computer vision old problems new solutions
Computer vision   old problems new solutionsComputer vision   old problems new solutions
Computer vision old problems new solutions
 
Pulsar
PulsarPulsar
Pulsar
 
Apcug 2011 07-17-intro_to_drupal_jeff_schuler
Apcug 2011 07-17-intro_to_drupal_jeff_schulerApcug 2011 07-17-intro_to_drupal_jeff_schuler
Apcug 2011 07-17-intro_to_drupal_jeff_schuler
 
Explanation Capabilities of the Open Source Case-Based Reasoning Tool myCBR
Explanation Capabilities of the Open Source Case-Based Reasoning Tool myCBRExplanation Capabilities of the Open Source Case-Based Reasoning Tool myCBR
Explanation Capabilities of the Open Source Case-Based Reasoning Tool myCBR
 
COMP 775 Motion planning paper presentation
COMP 775 Motion planning paper presentation COMP 775 Motion planning paper presentation
COMP 775 Motion planning paper presentation
 
Non Relational Databases And World Domination
Non Relational Databases And World DominationNon Relational Databases And World Domination
Non Relational Databases And World Domination
 
Splash
SplashSplash
Splash
 
HCI-Lecture-1
HCI-Lecture-1HCI-Lecture-1
HCI-Lecture-1
 

Último

TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 

Último (20)

TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 

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
  • 10. Glass on table June 17, 2009 10
  • 11. Attractors and detractors • Boolean approach not always desirable June 17, 2009 11
  • 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
  • 15. Living room example Time: 152 ms Nr of objects: 30 June 17, 2009 15
  • 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