Making city in Rhino

Hello. I am planning to make 20x20km city in order to use it in 3D action game. Is Rhino suitable for this kind of work? Who has this kind of experience? All the tutorials in Youtube are about small portions of terrain, not for entire city.
What are the main problems I am facing? I don’t get accurate terrain for placing buildings as in real.

  1. Capturing terrain from some websites as mesh is not giving help, because at first sight terrains are accurate, but when I zoom and get closer to the ground, I find out that plopping buildings doesn’t give accurate result. For example, front side of building stands on ground level, but back side goes 3-5 meters underground. Rhino lacks good smoothing tools and smoothing under every building will take boolean operation. And the buildings will stand next to each other on different levels.
  2. Using Heightfield allows only 100x100 points, which still lacks accuracy for 20x20km. Also I receive almost the same issue as in 1.
  3. Using boolean operations for making underpasses and other objects consumes a huge amount of memory.
  4. Using UV mapping consumes a huge amount of memory.

Who has this kind of experience of making large citie areas? What can you suggest?

Rhino is not

As I have stated before the biggest issue that Rhino has with something like this: it’s handling of large textures, but in V8, that is supposed to be better because the disk caching is supposed to be going away. Rhino does have adaptive degradation, but if favors geometry simplification–rather than texture simplication, and it’s only when you move.

In fairness Rhino isn’t a game engine. I will also state, the things that make this a challenge–also affect architects who need to see their building in a city setting. Nudge, nudge, know what I mean?

[If Rhino had some work on material handing–and the ability to map a texture to a any surface with only a few clicks, to fit a texture, say, 3x2 across like GTK Radient, and with support for no-draw materials, it would be a dream editor for video game. The powers that be have added OCS frame Mapping (Thank you), and while it’s a foundation, we still need the tiling tools. Fortunately, blocks have been getting better for texture-swapping, and so forth. The problem is: unless you have used a real game level editor, you have no idea how fast textures can be applied. If you have used Max, Blender, Maya, or a lot of the others, you are used to texture tools which are not optimized for linear and paneling in 2-axis. You could click on a surface, apply a material, and it could fit x and y copies–in only a few clicks, even faster than decals, which are still pretty cool in their own right. I wasn’t that fast, but I could do 5,000 textured objects a month (brushes). I meant to make a video showing it, but my health hasn’t been good. I am just getting back into the swing of things.]

Well, you are just creating source material, correct?

The work areas could be broken up into sections, each could be put on separate layers or in separate files; this would help you work on a section at a time.

Rhino’s Blocks would allow you to have a library of buildings. These could be linked, so others could work on them. The blocks could be swapped with low-poly, small texture, versions. On the positive, Rhino’s NURBS allow remeshing in a way that’s just not possible in Sub-D editors. Any day you want, you could mesh a cylinder as smooth as glass, or reduce it to a prism shape–because it’s based from the NURBs geometery.

Another issue is: Rhino has no built-in imposter system, so you would have be in charge of making simplified versions of your buildings, for viewing at a distance. In other words, you would have to swap out the farther buildings to more simple ones, just like a game engine would. This is an issue that game-engines are written to deal with, from the old MIP maps, to creating several versions of NURB models from the old Id family engines. Most video cards would choke on the amount of memory needed to do a city–if there was no simplification.

Is it possible to receive city terrain by fitting points? I mean at first I put the buildings, rise them to real life elevation, then extract points from rectangle basements and create surface from nearly 100K points fitting.

Hi @Abelyanhayk852

I’m working on something less ambitious but similar, an apocalyptical game environment for Unreal engine. I think Rhino is great for many things but you won’t be able to build an entire city. Imagine just the interior views at street level how far do you go in 3/d detail is daunting. In Rhino there are many caveats to get around like unwrapping, texturing, exporting, polygon count and model complexity, if you’re not a seasoned Rhino and Gh user, as you’ll need knowledge of both to make successful models per your description you will bottleneck. But the wonderful thing is that you can build great models in Rhino and they export into unreal with great results, something not achievable using stock models.

However if you don’t need great texturing and just need something that kind of works you could try Rhino and follow this video tutorial

Model Any City in Rhino in Under 10 Minutes - YouTube

I would use unreal 5.3 you could even use the google earth feature if need be. Also if you use unreal you can already use their free assets like their city project and others. Unreal has procedural scripting of geometry nodes which is really powerful.

Do a search on youtube there are lots of tutorials. The links below might get you thinking.

Recreating NYC with CityBLD | NEW UE5 Procedural City Generator - YouTube

Unreal Engine 5 - Google Maps API & Cesium - Full tutorial PT 1 - YouTube

RM

These could be a great starters.