Всем привет!
Когда-то я уже начинал данный проект и писал об этом, вот даже пост нашёл. Потихоньку продолжал его развивать, но, из-за ограниченности своей системы, на время забросил, а потом уже окончательно, т.к. стало не до него. Но вот решил обратно за него взяться.
Начнём. Раньше все дома делал в SketchUp, после экспортировал их в Blender. То теперь решил все типовые дома делать процедурно генерируемыми в самом Blender с помощью Geometry Nodes и потихоньку учиться с ними работать. Вот сделал 2 поста об этом: первый и второй.
Пока с помощью Нодов не научился делать многоподъездные дома, поэтому сделал несколько подъездов и далее соединял их, т.к. есть дома у которых подъезд в 90 и 45 градусов. Модели этажей также делал в SketchUp, пользовался данным ресурсом, чтобы определить типовую модель дома, а уже здесь, искал чертежи и размеры:
На окнах использовал кубическую параллакс карту, взятую отсюда, которая создаёт «объёмный» интерьер внутри, но при этом не содержит полигонов:
Если в предыдущем проекте использовал карту высот от Радиолокационная топографическая миссия шаттла или SRTM, взятую из программы Global Mapper, то на этот раз хотел воспользоваться аддоном для Blender – Blosm, в которой можно получить карту рельефа от Google. Но чтобы загрузить их, необходим API ключ, для получения которого необходимо привязать карту Visa или MasterCard в GoogleCloud, которой у меня нет, поэтому решил загрузить только картинку без рельефа от OpenStreetMap и на ней расставлять дома:
Как и в прошлый раз так и в этот, я делал всё на нетбуке с такими параметрами (на Intel UHD 600):
Из-за чего не получилось полностью «застроить» район, т.к. Blender вылетал. Также сам рендер происходил очень долго, но я хотел сделать небольшую видео презентацию, поэтому воспользовался Google Colab (вот Notebook). При разрешении 720p, 24 кадрах и рендере в 25 sample, уходило около 4-5 минут на 1 кадр, то Colab на 1 кадр тратил 15-17 секунд:
И моя кривая видео презентация (я только учусь):
Если сравнить реальный дом и рендер, то можно увидеть, как дом выглядел первоначально, когда его построили. Своего рода взгляд в историю. На примере дома Неманский пр. 5к1 построенного в 1979:
И ул. Маршала Катукова 3к1 в 1979:
И вот сама модель Строгино.
Итого
Как я уже писал в предыдущих постах, мои познания в программировании находятся на уровне формул в Excel и учитывая характеристики моей «мега» системы, как и сам проект с Москвой, где спальные районы состоят из серийных типовых панелек, размеры которых возможно найти, а уже ближе к центру, идут серии по индивидуальному проекту, размеры которых не известны, поэтому решил забросить первоначальную идею с Москвой в 3D.
Вместо неё, мне стало интересно попробовать реализовать процедурную генерацию улиц и двором, но со всеми стандартами.
Есть ГОСТы, СП, СНиПы улиц и дорог:
Так же и дворов, с расположением домов:
Как расположение деревьев и кустарников:
По идеи, такое возможно реализовать с помощью Geometry Nodes в Blender. Да, есть уже различные аддоны, как и к Blender, так и к Unreal Engine 5, с помощью которых, можно процедурно генерировать города, но они идут без стандартов и без наших, «уныло» родных панелек. И со всеми этими тенденциями, я больше смотрю на Unigine 2.0. И лучше обучаться чему-то, когда у тебя есть цель для этого и интерес, поэтому и дальше буду изучать Geometry Nodes и пытаться реализовать, процедурную генерацию улиц и дворов.