Fundamentals

Learn the basics of SceneCity, this page is a prerequisite before reading the rest of the documentation. It is assumed you already know how to use Blender.

Cities are described by node graphs

The first thing necessary is to create a SceneCity graph. You can think of a graph as the description of a city. You can have as many graphs as you want in a blend file, and you give them a unique name. City graphs are like any other type of graph in Blender and other software, but they manipulate data and do things specific to cities.

In a graph are nodes, connected together via sockets. Most of them need some kind of input to work, and then they output one or more results. You connect nodes together, you chain them, so that you can tell what operations to perform, and in which order. Each node does something specific with the input you give it, either by connecting its input sockets, or by filling its input fields. Then when you executed the node it outputs either fresh new data of some kind (3d mesh, a texture...), or the input data transformed in some way. Some nodes are useful to get data from Blender (get a mesh, get an image...). Other nodes let you transform that data (eg. by instancing roads and buildings, drawing into images etc..). Finally other nodes let you output your transformed data back to Blender (create or update a Blender mesh) or to files (export an objects hierarchy to a .json file).

It is important to make the distinction between Blender data, and data which is internal to SceneCity. Therefore to avoid confusion, I will explicitly say when it’s Blender data, such as a Blender mesh, as opposed to mesh data for example, which is the internal representation of a mesh in SceneCity.

To create and edit graphs, you have to open a new type of editor in Blender, available when you enable the addon. Select SceneCity node editor in the drop-down list of editor types.

Then you have a choice to make:

    1. import a preset city. It's much easier to start, and you can change the presets as much or as little, to fit your needs. This is the method we'll use to start

    2. create a blank new graph from scratch, when you have a better knowledge of how SceneCity works

Importing ready-to-use assets and preset city graphs from the included library
(not needed for v1.9's new nodes)

From the SceneCity menu in the node editor, choose link (or append, as you prefer) the assets.


Now you have access to all the assets, accessible from the scene outliner. They're initially hidden, to avoid cluttering your scene. The collection SceneCity assets and collections contains the whole library, and doesn't need to be unhidden ever, unless you want to inspect what's inside.

Be careful if you use Eevee: displaying everything at once will make Blender compile the viewport shaders automatically (that's how Blender works and is normal), and that may take a long time because of all the different materials.

Some helper objects will make your life easier with some presets, they're in the SceneCity presets helper objects collection.

In the list of city graphs, you can see different types of preset cities, ready to be generated, and modify. Display and edit the one(s) you need depending what you want to do to get started. This documentation will help you with each of those presets, although some parts are still under construction.


Open Blender's console before computations

Sometimes, generating things can take several seconds or even minutes, depending on the complexity of the task. During that time Blender's UI will be unresponsive, and will show no progress indicator. This is very inconvenient. However SceneCity always outputs its progress in the console, in text form. So think about opening Blender's console before launching long tasks, like generating a large city for instance.

Completed

You are now equipped to get started with cities! Choose the kind of city you need to learn more about, from the navigation bar. Each type of city has an easy introduction, starting with a preset, then a dedicated detailed explanation page.