SlideShare une entreprise Scribd logo
1  sur  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

Contenu connexe

Similaire à Rule-based Layout Solving and Its Application to Procedural Interior Generation

Dev tools rendering & memory profiling
Dev tools rendering & memory profilingDev tools rendering & memory profiling
Dev tools rendering & memory profiling
Open Academy
 
The Social Desktop - Keynote Akademy 2008
The Social Desktop - Keynote Akademy 2008The Social Desktop - Keynote Akademy 2008
The Social Desktop - Keynote Akademy 2008
Frank Karlitschek
 
Advanced Skinning & Styling for Android
Advanced Skinning & Styling for AndroidAdvanced Skinning & Styling for Android
Advanced Skinning & Styling for Android
cephus07
 
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
 

Similaire à 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
 
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
 
Dev tools rendering & memory profiling
Dev tools rendering & memory profilingDev tools rendering & memory profiling
Dev tools rendering & memory profiling
 
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
 

Dernier

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Dernier (20)

Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
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
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
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
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
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
 
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
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 

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