sketchucation logo sketchucation
    • Login
    Oops, your profile's looking a bit empty! To help us tailor your experience, please fill in key details like your SketchUp version, skill level, operating system, and more. Update and save your info on your profile page today!
    ๐Ÿ”Œ Smart Spline | Fluid way to handle splines for furniture design and complex structures. Download

    [CityGen] City generator

    Scheduled Pinned Locked Moved City Generator
    62 Posts 21 Posters 63.6k Views 21 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • R Offline
      remus
      last edited by

      @marian said:

      WOW, this is gonna be another amzing tool for sketchup, hoards of people will kneel before you and treat you like gods ๐Ÿ˜„ ๐Ÿ˜› .
      thats the plan ๐Ÿ˜„

      On a more serious note, thom, that sounds like a great idea. id love to work on such a project. Perhaps start a separate thread instead of trying to hash it together in this one, though.

      Oh, and found a pretty good resource with regards to parametric city generation: http://www.vision.ee.ethz.ch/~pmueller/wiki/CityEngine/Front

      its the bloke who made cityengine, and he's got all the papers he wrote on the subject there.

      edit: fixed link

      http://remusrendering.wordpress.com/

      1 Reply Last reply Reply Quote 0
      • thomthomT Offline
        thomthom
        last edited by

        @remus said:

        On a more serious note, thom, that sounds like a great idea. id love to work on such a project. Perhaps start a separate thread instead of trying to hash it together in this one, though.

        I want to make some illustrations to go with it, so once I've done them I'll make a new thread.

        @remus said:

        Oh, and found a pretty good resource with regards to parametric city generation: http://www.vision.ee.ethz.ch/~pmueller/ ... gine/Front

        its the bloke who made cityengine, and he's got all the papers he wrote on the subject there.

        Nice find. I think I was referd to it before, but I lost the bookmark.

        Thomas Thomassen โ€” SketchUp Monkey & Coding addict
        List of my plugins and link to the CookieWare fund

        1 Reply Last reply Reply Quote 0
        • Chris FullmerC Offline
          Chris Fullmer
          last edited by

          Souds good. I'm very interested in this topic and I'd like to try to help shape how it develops. I have big dreams about how this should work.

          Chris

          Lately you've been tan, suspicious for the winter.
          All my Plugins I've written

          1 Reply Last reply Reply Quote 0
          • L Offline
            linea
            last edited by

            This sounds brilliant, I'm not a ruby man but if I can help by modelling some building types let me know.

            1 Reply Last reply Reply Quote 0
            • D Offline
              dylan
              last edited by

              It's a really good idea and it is nice to see you guys helping each other out ๐Ÿ‘

              http://dmdarchitecture.co.uk/

              1 Reply Last reply Reply Quote 0
              • soloS Offline
                solo
                last edited by

                Food for thought:

                http://www.procedural.com/

                http://www.solos-art.com

                If you see a toilet in your dreams do not use it.

                1 Reply Last reply Reply Quote 0
                • C Offline
                  craftycurate
                  last edited by

                  Has anyone made connections between Sketchup and the OSM file format shown in the CityEngine video?

                  1 Reply Last reply Reply Quote 0
                  • Chris FullmerC Offline
                    Chris Fullmer
                    last edited by

                    No, but it would be worth looking into. I have no idea if its possible to really connect them, but who knows, maybe it would be ideal!

                    Chris

                    Lately you've been tan, suspicious for the winter.
                    All my Plugins I've written

                    1 Reply Last reply Reply Quote 0
                    • Chris FullmerC Offline
                      Chris Fullmer
                      last edited by

                      Hmm, I could use a link to the video your referring to. So far what I've found on OSM seems like a mashup of GIS and the Google Geo API. Still might be very useful, but I'd like to see the video first to see how its being used.

                      Thom and Remus and anyone else interested in writing this thing, how true to life are you envisioning? That's not quite the right question, but I'm not sure what is. For example, in my mind I'm thinking of something that can create a city based on input parameters. But not necessarily something that re-creates existing cities in such a way that they could be spatially analyzed (like modelur seems to be doing). I keep thinking of something that makes AWESOME cities that would be great for quick city mock-ups for film visualizations, rendering backgrounds, and stuff like that. And it should be expandable where you different architectural styles can easily be added to the base script. So you can make medieval cities, modern downtowns, castle-like cities, suburbrs, on and on.

                      What was in your guys' minds on that?

                      It would also be good to define what the allowed starting information should be. For example, perhaps nothing at all. And it can do everything from scratch. Then maybe also acceptable as a starting point should be a series of road centerlines, and they can be colored or something to define what road type (width, pavement type, curb type, etc) should be applied to it. And maybe also acceptable would be a selection of faces that would be turned into buildings. Useful if the persona has already modeled their streets and just has flat faces designated for buildings footprints.

                      I could probably go on and on about this. I tihnk its a very worthy project. And it will be awesome to organize in a very expandable and customizeable way.

                      Chris

                      Lately you've been tan, suspicious for the winter.
                      All my Plugins I've written

                      1 Reply Last reply Reply Quote 0
                      • R Offline
                        remus
                        last edited by

                        Chris, in terms of aims i was thinking of the same thing: making it produce cities that look good for visualisation purposes, but not necessarily accurate in the way city engine type cities are.

                        With regards to the starting info, I think it would simplify things a lot initially if we could work from a user provided road map. Once we get something working with that we could perhaps work on an extra bit to automatically generate a road map and feed it in to the rest of the plugin. Being able to go from Building plots would also be cool.

                        Another idea to consider: level of detail control for a specific view point. I was thinking something along the lines of user says where they're going to be rendering from, then the plugin adds detailed buildings close to that point then progressively lowers the LOD the further away you get. As jean would say, just ideas.

                        http://remusrendering.wordpress.com/

                        1 Reply Last reply Reply Quote 0
                        • thomthomT Offline
                          thomthom
                          last edited by

                          What I was thinking was something that looks fine, not a simulation. Something to quickly bulk up the major features.

                          As I mentioned before, I was thinking it could be in modules, each doing it's own thing.
                          One creating a city street map (just centre lines)
                          One creating roads and blocks out of centre lines
                          One populating blocks with pavements and buildings.
                          etc..etc... this could be expanded

                          You could execute each of these modules separately, or you could put together a macro.

                          I was thinking that the starting point could be large faces, where you define the type and style of what's being generated there.

                          Not sure what's best to visualise this as a UI, But I wondered if using Applying special materials with the paintbucket would be a easy way to defines area types. Also for roads, when you have just the centre lines - one colour would mean main roads (wider), another colour sideroads, alleyways etc...

                          A suggestion for organizing the modules:

                          
                          
                          module SU_City_Builder
                          
                            # Common sub-menu in the menu bar
                          
                            module Street_Map_Generator
                              # Generates the street centre lines
                            end
                            
                            module Street_Generator
                              # Generates the street geometry
                              # And blocks in between
                            end
                          
                            module Building_Generator
                              # Generates buildings on a block
                            end
                          
                            module Transport_Generator
                              # Populates streets with transport
                            end
                          
                            # etc etc etc...
                          
                          end # module end
                          
                          
                          

                          Thomas Thomassen โ€” SketchUp Monkey & Coding addict
                          List of my plugins and link to the CookieWare fund

                          1 Reply Last reply Reply Quote 0
                          • R Offline
                            remus
                            last edited by

                            Personally i dont particularly like the idea of having the user define the road types. It seems like it would require a fair bit of work/thought on the users part which doesnt seem to fit with the 'quick bulking up' thing. Then again it would be pretty tricky getting a plugin to work out which roads are large/medium/small ponder

                            I like the idea of modular structure a lot ๐Ÿ‘ Lots of room for adaptability and adding new bits.

                            http://remusrendering.wordpress.com/

                            1 Reply Last reply Reply Quote 0
                            • thomthomT Offline
                              thomthom
                              last edited by

                              @remus said:

                              Personally i dont particularly like the idea of having the user define the road types. It seems like it would require a fair bit of work/thought on the users part which doesnt seem to fit with the 'quick bulking up' thing. Then again it would be pretty tricky getting a plugin to work out which roads are large/medium/small ponder

                              The user would only have to specify the road types if desired. Default settings could be a uniform type.

                              If the user used the Street Map generator, it would do this for the user. I was thinking having a few lines running long that's be the main roads, which would be wider that normal, then most others would be normal roads, with a few alleyways. If you use materials to define road types then it's easy to work out what's a large/medium/small road. When the module that generates the street from the streetmap reads an edge, it'd read the material of each edge segment representing a piece of road. The benefit here is that the user can visually see the type of road and quickly make changes if desired.

                              The idea what that the user only adds as much information as desired. It can be very simple, but further controls is available.

                              Thomas Thomassen โ€” SketchUp Monkey & Coding addict
                              List of my plugins and link to the CookieWare fund

                              1 Reply Last reply Reply Quote 0
                              • R Offline
                                remus
                                last edited by

                                I like your tihnking ๐Ÿ˜„

                                http://remusrendering.wordpress.com/

                                1 Reply Last reply Reply Quote 0
                                • K Offline
                                  kwistenbiebel
                                  last edited by

                                  .

                                  1 Reply Last reply Reply Quote 0
                                  • Chris FullmerC Offline
                                    Chris Fullmer
                                    last edited by

                                    Excellent! I agree 100% with everything said. That is all very much what I had in mind too. I also think the color coding idea is ideal.

                                    So say a user provides a base city map with building lots and roads already in place. They could color each parcel for its land use - high rise, mid-rise, park, plaza, subdivide residential lots, etc. I think these land use types should be integrates somehow sot hat someone else with some ruby knowledge could crete their own and incorporate it into the plugin, and distribute them for otherrs to use if desired. Because the examples I gave are great standard ones, but maybe someone else would like to build 5 differentl castle types to use, etc, etc. And it all works based on just coloring flat faces, and then running the building generator with your own set of buildings/landuses.

                                    This is great, and I like that we are all thinking the same level of visualization ๐Ÿ˜„ The LOD idea is great too Remus! I have no idea how to implement it, but it sounds cool!

                                    Chris

                                    Lately you've been tan, suspicious for the winter.
                                    All my Plugins I've written

                                    1 Reply Last reply Reply Quote 0
                                    • MarianM Offline
                                      Marian
                                      last edited by

                                      About the LOD, if it's possible ruby wise, this is how i imagine it; the buildings should be built in basic shape, without any components or textures, and any details like windows added should be other coponents. The user then can provide an area for render, and buildings in the are keep their tetxures and details, while the others outside it would be stripped off of textures and any extra geometry, leaving only the basic bulding shape.

                                      http://marian87.deviantart.com/

                                      1 Reply Last reply Reply Quote 0
                                      • R Offline
                                        remus
                                        last edited by

                                        Digging in to the architecture of the whole thing: what do you think to having each module as a separate ruby script and then using global sets to communicate between the modules?

                                        http://remusrendering.wordpress.com/

                                        1 Reply Last reply Reply Quote 0
                                        • thomthomT Offline
                                          thomthom
                                          last edited by

                                          The LOD could be increased by adding sets of glued components.
                                          When you have a scene you want to set up, you can determine the distance of each building from the camera and add detailing components to the buildings closer to the camera. Though, the challenge I see here is how you define the rules for where these detailing components are added.

                                          Thomas Thomassen โ€” SketchUp Monkey & Coding addict
                                          List of my plugins and link to the CookieWare fund

                                          1 Reply Last reply Reply Quote 0
                                          • thomthomT Offline
                                            thomthom
                                            last edited by

                                            @remus said:

                                            Digging in to the architecture of the whole thing: what do you think to having each module as a separate ruby script and then using global sets to communicate between the modules?

                                            hmm... I'd like to have it contained in some manner. If we have one base module name, which all the other modules are wrapped in, then we ensure that we don't contaminate anything else.

                                            Thomas Thomassen โ€” SketchUp Monkey & Coding addict
                                            List of my plugins and link to the CookieWare fund

                                            1 Reply Last reply Reply Quote 0
                                            • 1
                                            • 2
                                            • 3
                                            • 4
                                            • 4 / 4
                                            • First post
                                              Last post
                                            Buy SketchPlus
                                            Buy SUbD
                                            Buy WrapR
                                            Buy eBook
                                            Buy Modelur
                                            Buy Vertex Tools
                                            Buy SketchCuisine
                                            Buy FormFonts

                                            Advertisement