It looks like you're using an ad blocker! I really need the income to keep this site running.
If you enjoy BlenderNation and you think it’s a valuable resource to the Blender community, please take a moment to read how you can support BlenderNation.

ScapeGoat Demo

An interesting approach to city generation by MixedLettuce. This is a preview video - the script is not available yet.

21 Comments

  1. This is great (and VERY similar to an idea i had in mind that my limited coding abilities prevent me from achieving). 
    Please keep it up!

  2. Glenn Melenhorst on

    I would want to be able to maintain the building's scale if I was to create a real city model. If there was a radio button for this it'd be great.

    Glenn

    • My thaught exactly, 

      This is a great plugin, but completely useless for anything other than city-scapes in the distance, unless scale is maintained from the origional model.. otherwise you would have buildings with tiny windows/doors and some with HUGE windows/doors..

      In reality, it would be better to try and fit multiple buildings on each block... 

  3. Wow; this could really go places.
    Is it possible that there could be a setting to have more than one building per block?

  4. What's the difference between having this addon and using a Particle System, where you set the Amount of Particles to the Amount of Faces?

    Keep in mind, you can change Size / Rotation, Variation of All / None / Some in the Particle System.Cool lite addon, but is it really necessary?

    •  Good idea. But is it possible to place different type of buildings with particles system? If i add two different particles system with different buildings, buildings overlap, and can't find how to avoid this.

  5. ToastBusters on

    This is a great approach! Not all city blocks have just one building though. I think having multiple buildings on a given city block (with some control) should be a feature for the future.

    Great idea, I look forward to seeing where this goes.

  6. One way I see to have multiple buildings per block is to have adjacent faces with the same "TallBuildings" material. Not ideal, by any means, but doable

  7. ScapeGoat behaves a lot like BlenderGuru's method. It's a very useful technique but I dislike the loss of control I suffer when I lay out geometry using a particle emitter. For all the tweaking you can do to a particle system, a user is constrained to use what is generated by the computer. There are usually a handful of objects out of place and creating a layout with ScapeGoat will let me adjust an out-of-place object if I want to.

    I find that particle systems handle uniform geometry really well but in the tests I did with non-square, non-flat and non-uniform meshes  the results were not as good. Usually an object's rotation is handled in a way that makes the results look strange. ScapeGoat isn't perfect but it looks for an reasonable edge to align an object to.

    Another problem I ran into using particles came up when the building objects were linked from another file. Particles will place either empties or default cubes instead of the model.

    ScapeGoat handles a few things in a different manner than a particle emitter but the main feature I'm going for is malleability. I want to be able to layout something quickly and then tweak the areas of interest. Since I can't bake a hair system, I can't do it with particles.

    Object scaling is definitely something to sort-out but it's a tricky one and only simple solutions made it into the demo. It would be easy enough to add a "Do Not Scale" option but I would like the script to be able to choose an appropriate scale based on the size of faces in the mesh.  I think it's worth having a "Do Not Scale" feature but I don't want that to be the only control since the user would have to be responsible for modeling all buildings and maps to the same scale. A size slider might be a good feature to; with that, a user could interactively set the scale of each object group.

    Having the script lay down more than one object per face is clearly important but it's another tricky feature to implement. It's not a simple as subdividing a face since buildings and other objects that will appear side-by-side will not have the same width. Putting several small buildings on a block will be awesome but it'll likely take a second, edge-based algorithm to get it done.

    I hadn't considered ScapeGoat as a way to add nurnies and greebles to things but I think it would work well. Although, this is a case where I think a hair system could do the job as well. There are some subtle differences between the two and I figure that a variety of tools helps everyone.

    I appreciate the time everyone took to give feedback. I'm glad to have some ideas about what's important and what could come next. The discussion is valuable and I thank you for it.

    -MixedLettuce

  8. Great addon! Very useful in many cases. Even at this stage gives us more posibilities than particles.Good luck!

Leave A Reply

To add a profile picture to your message, register your email address with Gravatar.com. To protect your email address, create an account on BlenderNation and log in when posting a message.

Share this story: