Page 1 of 3 123 LastLast
Results 1 to 10 of 22

Thread: Using City Engine

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1

    Default Using City Engine

    City Engine ('CE') is a powerful procedural city generator. It makes 3 dimensional cities according to rules that you give it. It has a high level of 'editability' meaning that if you don't like something that has been generated it is possible to tweak it to your own specifications (or indeed draw it from scratch). Generally you will make and texture your city models in CE and then export the result to a 3d graphics program to render it, tweak materials etc.

    This thread are my baby steps using CE.

    In the first image I have auto generated a street network. Lot of sliders that you can play with here such as street lengths, how you want the streets to split, how straight or curvy you want them to be etc. You will see that where an area is enclosed by streets, CE generates Lots, those are foot prints on which you 'grow' your buildings. There are commands you can give to make the lots bigger or smaller, or forbid building on a lot or number of lots or you can paint them in yourself.

    The second image is a look at the programming language to make houses, you can either do this by writing code in the traditional way or use a node based interface (which is easier for me). Here I have set two variables (called attributes in CE) of height min and height max. This very simple code extrudes buildings from the lots to a random height between height min and height max. Again, the user can go to any particular lot and set the height manually if required.

    The last image shows the buildings generated from this very simple code. CE allows you to import your own building objects either to place as is, or as elements to which you add code to add bits onto..but I haven't got to that bit yet!

    More later,

    Ravs
    Attached Images Attached Images

  2. #2
    Guild Artisan Katto's Avatar
    Join Date
    Apr 2009
    Location
    Dortmund, Germany
    Posts
    709

    Default

    Thanks for posting your baby steps It will give us a good idea how easy or difficult this program is.

  3. #3

    Default

    lol believe me if I can use it, anyone can. I have virtually no programming experience at all. Here is the next step (getting fancy for me, lol!)

    So the instructions here are:
    a. scale the buildings sizes by 50% along x,y and z axes (so they are not butted up right next to each other).
    b. split the houses along the y axis by exactly 3m starting from the bottom and keep splitting until you run out of house (this makes the floors, or put another way, makes new faces each of which can be textured differently).
    c. make a gabled roof with a pitch of 22.5 degrees with the eaves overhanging by 1m along x and y.
    Attached Images Attached Images

  4. #4
    Professional Artist Djekspek's Avatar
    Join Date
    Aug 2009
    Location
    Netherlands
    Posts
    766

    Default

    that's starting to look cool already! thanks for posting this, cheers DJ

  5. #5

    Default

    Cheers DJ....it's starting to get complicated now. Trying to split the buildings so that there are faces which can be used to put window textures on them. I ended up following the tutorial for this bit and don't really understand what I'm doing, so I'm going to have to sit down and try to analyse it properly before I move on.
    Attached Images Attached Images

  6. #6
    Guild Journeyer Ryan K's Avatar
    Join Date
    May 2009
    Location
    Brisbane, QLD
    Posts
    221

    Default

    Looking great, Rav!
    Regards,

    RK

  7. #7
    Community Leader Korash's Avatar
    Join Date
    Nov 2008
    Location
    Montreal, Canada
    Posts
    1,601

    Default

    Okay, this is looking great....but WHERE do you get this prog???

    Can you apply a base height to the buildings? and if you can can it be done by building or area? ......okay I need to look into this.....
    Art Critic = Someone with the Eye of an Artist, Words of a Bard, and the Talent of a Rock.

    Please take my critiques as someone who Wishes he had the Talent

  8. #8

    Default

    Hi Korash, you can get it here: http://www.procedural.com/

    Not sure what you mean by a 'base height', you can extrude a building from a lot by however much you want. So for example you can extrude all buildings by 3m giving you a 'base height' of 3 m. Then you can extrude again by variable amounts if you want buildings of different heights.

  9. #9
    Community Leader Korash's Avatar
    Join Date
    Nov 2008
    Location
    Montreal, Canada
    Posts
    1,601

    Default

    Quote Originally Posted by ravells View Post
    Hi Korash, you can get it here: http://www.procedural.com/

    Not sure what you mean by a 'base height', you can extrude a building from a lot by however much you want. So for example you can extrude all buildings by 3m giving you a 'base height' of 3 m. Then you can extrude again by variable amounts if you want buildings of different heights.
    Thanks Rav, I had a look at it after googling it. It looks quite capable. As for the base height thing I was thinking about building on an inclining road and also with ground floors starting at higher than the building next door (ie: not all on flat ground). I noticed while looking at the midieval town sample that they have that yopu must be able to do that.

    Now to convince the wife that I NEED to get this.........
    Art Critic = Someone with the Eye of an Artist, Words of a Bard, and the Talent of a Rock.

    Please take my critiques as someone who Wishes he had the Talent

  10. #10

    Default

    Been struggling a bit but getting there.

    Being able to procedurally split your building walls into component facets is very important for texturing. Splitting operations can get very complex (for me) when you have to apply splits within splits. For example you split the building horizontally to make floors, you then split the building vertically to make 'tiles' i.e. places where the windows go. You might then want to split the tiles again so that you have some wall on either side of the window. The ground floor of a building usually looks quite different from the other floors, so it needs its own splitting and texturing rules.

    Texturing was also a bit difficult to grasp at first, but now I think I've got it, it's not as tough as I first thought.

    So here is are some buildings which all use the same construction and texture rules. If I wanted to make a building higher or lower, I can just adjust the height slider for that building and it will automatically add or subtract floors. I've just used some horrid random textures here, but obviously in a final product you would want the textures to tile properly.

    The next step is to learn how to insert pre-made 3d assets, like window frames, doorways, ornaments, dormers and ledges to make the the building look properly 3d. That's going to be a toughie, but I'm probably going to spend this week just making sure that the splitting and texturing commands become second nature by doing lots more of these types of operation. After I learn how to insert 3d assets, the next step is doing mass modelling, that is bringing in instances of buildings, like balconies, turrets etc and getting the software to randomly generate buildings out of these components.
    Attached Images Attached Images

Page 1 of 3 123 LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •