Как сделать луну в блендере

Обновлено: 06.07.2024

Бесплатная 3D Реалистичная Модель Луны для скачивания, доступна в: Blendэ (.blend), Cinema 4D (.c4d), Autodesk FBX (.fbx), Maya (.ma, .mb), 3D Studio Max (.maИкс), ObjЭСТ (.obj) форматы. Размер файла: неизвестен, ID476325. Этот 3d актив содержит текстуры, материал с многоугольниками, относящимися к 3d Фикус Горшок модель и 3d модели Луны, фотореалистичные модели, реалистичный дизайн. Получите эти Разные, Природные модели с отличными материалами, готовыми для моделирования или рендеринга, так что их легко импортировать в ваши 3d визуализации интерьера или архитектуры, cg, фильмы, игры, анимации или Vr, Ar проекты.

Шейдерные ноды (Shader Nodes) существенно расширяют возможности стандартных материалов Blender, позволяя представить освещение как серию базовых преобразований.

_images/node_materials_title.jpg

Стандартные ноды¶

Blend4Web поддерживает все стандартные ноды Blender, однако некоторые из них работают недостаточно быстро и не рекомендуются к использованию в приложениях реального времени. Не рекомендуется создавать сложные материалы, особенно использующие большое количество нод Geometry и Texture .

Движок также частично поддерживает некоторые ноды Cycles. Более подробно этот вопрос рассмотрен в соответствующей главе .

Производительность и степень поддержки движком стандартных нод описаны в таблице.

Используется для получения информации от активной камеры

Используется для генерации градиента

Типы интерполяции B-Spline , Cardinal и Ease не поддерживаются

Собирает цвет из заданных значений тона, насыщенности и яркости

Собирает цвет из заданных значений красного, зелёного и синего каналов

Подключает стандартный материал. Обладает большим количеством настроек по сравнению с нодой Material

Регулирует гамму заданного цвета

Используется для получения информации о геометрии объекта

Выход Vertex Alpha не поддерживается

Не рекомендуется использовать большое количество этих нод

Регулирует оттенок и насыщенность заданного цвета

Инвертирует заданный цвет

Используется для получения информации о заданном источнике света

Выход Shadow не поддерживается

Преобразует текстурные координаты

Используется для подключения стандартного материала

Производит математические операции с заданными значениями

Микширует два заданных цвета

Низкая в режимах Burn , Dodge , Value , Saturation , Hue и Color , высокая в остальных режимах

Генерирует нормальный вектор

Используется для подключения карты нормалей

Выводит результат работы нодового материала

Используется для получения информации о системе частиц

В материалах систем частиц типа Emitter

Генерирует цвет в формате RGB

Определяет кривую, по которой изменяется заданный цвет

Преобразует заданный цвет в формате RGB из цветного в чёрно-белый

Разделяет заданный цвет на тон, насыщенность и яркость

Разделяет заданный цвет на красный, зелёный и синий каналы

Сжимает заданное значение

Не рекомендуется использовать большое количество этих нод

Генерирует численное значение

Определяет кривую, по которой изменяется заданный вектор

Производит математические операции над двумя заданными векторами

Преобразует векторы, точки и нормали между пространствами координат мира, камеры и объекта.

Параметр Color Space карты нормалей, используемой с этой нодой, должен иметь значение Non-Color . В противном случае результаты могут быть непредсказуемыми (хотя это не приведёт к крэшу движка).

Если хотя бы один из внутренних параметров ( Space to convert from. или Space to convert to. ) имеет значение Object , любой объект, использующий данный материал, будет считаться динамическим .

Обратите внимание, что нодовые материалы имеют некоторые ограничения, касающиеся количества нод определённых типов. Эти ограничения описаны здесь .

Дополнительные ноды¶

Дополнительные ноды расширяют функционал стандартных с учётом специфики работы движка. Ноды оформляются в виде нодовых групп ( Node Groups или Node Tree ) со специально выбранным именем и форматом входов. Для удобства, все дополнительные ноды добавляются в blend-файл при его открытии.

_images/node_materials_nodes.jpg

Clamp (B4W_CLAMP)¶

Осуществить операцию ограничения над входом. В результате, все элементы вектора на выходе получают значения от 0 до 1 включительно.

_images/node_materials_clamp.jpg

Выходные параметры¶

Вектор после ограничения.

Glow Output (B4W_GLOW_OUTPUT)¶

Применяет эффект свечения (Glow) к нодовому материалу. Помимо ноды B4W_GLOW_OUTPUT в нодовом материале должна присутствовать нода Output.

_images/node_materials_glow_output.jpg

Степень свечения. Factor \(\in [0, 1]\) .

Factor = 0 - свечение отсутствует.

Factor \(\in (0, 1]\) - свечение цветом Glow Color.

Levels of Quality (B4W_LEVELS_OF_QUALITY)¶

Устанавливает значение выходного цвета в зависимости от установленного профиля качества изображения. Может применяться, например, для автоматической замены сложного материала более простым при запуске приложения на мобильном устройстве.

_images/node_materials_levels_of_quality.jpg

Значение, которое будет подано в выходной параметр Color при высоком и максимальном качестве изображения.

Значение, которое будет подано в выходной параметр Color при низком качестве изображения.

Значение, определяющее, какое из значений ( HIGH или LOW ) будет отображаться в Blender. Может принимать значения от 0 до 1. При значении параметра менее 0.5 будет виден вариант HIGH , при значении 0.5 и выше будет виден вариант LOW .

Parallax (B4W_PARALLAX)¶

Реализует смещение текстурных координат в соответствии с картой высот.

_images/node_materials_parallax.jpg

Исходные текстурные координаты.

RGBA текстура с картой высот в альфа канале.

Коэффициент смещения текстурных координат.

Количество шагов при генерации смещенных текстурных координат. Чем больше данное значение, тем выше качество получаемой текстуры.

Максимальное расстояние от камеры, на котором виден эффект.

Выходные параметры¶

Измененные текстурные координаты, которые используются как вход для текстурных нод.

Reflect (B4W_REFLECT)¶

Вычисляет отражение заданного вектора относительно заданной нормали. Может применяться для наложения кубической карты (cubemap) на объект.

_images/node_materials_reflect.jpg

Заданный вектор. Должен быть подключён ко входу View ноды Geometry .

Заданная нормаль. Для получения желаемого результата, вектор должен быть нормирован. Должен быть подключён ко входу Normal ноды Geometry .

Выходные параметры¶

Отражённый вектор. Следует подключать к входному параметру Vector ноды Texture , содержащего кубическую карту.

Refraction (B4W_REFRACTION)¶

Реализует эффект преломления. Этот эффект виден только в движке Blend4Web, но не в Blender.

_images/node_materials_refraction.jpg

Вектор нормали в пространстве камеры, по которому происходит возмущение (сдвиг).

Коэффициент возмущения (сдвига) текстуры сцены позади объекта.

Значение по умолчанию: 0.001.

Выходные параметры¶

Текстура сцены позади объекта с внесённым возмущением.

Для отображения эффекта необходимо переключить опцию Refractions на панели Render > Reflections and Refractions в состояние AUTO или ON . Объект должен быть с типом прозрачности Alpha Blend.

Replace (B4W_REPLACE)¶

Осуществляет замену входов в зависимости от того, в какой среде (viewport Blender’а или движок) в данный момент работает текущая сцена. При работе в Blender вход Color1 подключается к выходу Color , вход Color2 игнорируется. При работе в движке входы меняются местами ( Color1 игнорируется, Color2 подключается к выходу). Нода предназначена для отображения во viewport’e одной конструкции нодов, а в движке - другой.

_images/node_materials_replace.jpg

Используется, как правило, для подключения карт нормалей. Нодовые материалы Blender’а не поддерживают тангентное пространство координат, в связи с чем единственный способ корректного отображения карт нормалей во viewport’e - их подключение внутри нод Material .

Конструкция нод, видимая во вьюпорте Blender’а

Конструкция нод, видимая объекта в движке Blend4Web.

Выходные параметры¶

Следует подключать к выходу Color ноды Material или Extended Material .

Smoothstep (B4W_SMOOTHSTEP)¶

Осуществить мягкую интерполяцию двух значений, исходя из первого значения.

_images/node_materials_smoothstep.jpg

Значение, на основе которого осуществляется интерполяция.

Первое значениe для интерполяции.

Второе значениe для интерполяции.

Выходные параметры¶

Для корректной интерполяции входное значение Value должно лежать в диапазоне между Edge0 и Edge1 .

Time (B4W_TIME)¶

Осуществляет отсчет времени с момента старта движка в секундах. Может использоваться для анимации любых параметров в нодовых материалах - UV-координат, факторов смешивания, прозрачности и т.п.

_images/node_time.jpg

Выходные параметры¶

Время (в секундах), прошедшее с момента старта движка.

Translucency (B4W_TRANSLUCENCY)¶

Реализует эффект полупрозрачности (только по отношению к источникам света) для тонких объектов, таких как ткань, листва, бумага и др. Эффект состоит из двух частей: засвечивание обратной по отношению к источнику стороны объекта и появление светового пятна непосредственно в том месте, где должен был находится источник.

_images/node_materials_translucency.jpg

Одноканальная текстура, определяющая неоднородность материала, белый - максимальный эффект просвечивания, черный - его отсутствие. По умолчанию используется белый.

Коэффициент коррекции цвета материала на обратной от источника света стороне. Основан на визуальном эффекте большей насыщенности цвета при просвечивании.

Backside Factor 1 - коррекция в сторону затемнения

Значение по умолчанию: 1.

Коэффициент размытия светового пятна. При увеличении размеры пятна уменьшаются, края становятся более резкими. Значение по умолчанию: 1000.

Интенсивность светового пятна. При увеличении становится более ярким. Значение по умолчанию: 1.

Spot Diffuse Factor

Коэффициент влияния диффузного цвета материала на цвет светового пятна.

Spot Diffuse Factor = 0 - световое пятно имеет диффузный цвет

Spot Diffuse Factor = 1 - световое пятно имеет белый цвет

Значение по умолчанию: 1.

Выходные параметры¶

Выход должен быть подключен ко входу Translucency ноды Extended Material .

Возможно некорректное поведение ноды, если используются отредактированные нормали .

Vector View (B4W_VECTOR_VIEW)¶

Осуществить преобразование вектора в пространство камеры. Преобразование необходимо, поскольку при работе в движке большинство векторов определены в мировой системе координат (например нормали, направления источников освещения и т.д). Преобразованный таким образом вектор нормали используется только для различных эффектов и не должен подключаться к входу ноды Material или Extended Material .

_images/node_materials_vector_view.jpg

Вектор в мировой системе координат.

Выходные параметры¶

Вектор в системе координат камеры.

Linear to SRGB и SRGB to Linear (Deprecated)¶

Преобразование цвета из линейного цветового пространства в пространство sRGB и наоборот. Функционал объявлен устаревшим с версии 15.04. В более новых версиях для преобразования цвета из sRGB в линейное пространство следует использовать нативную ноду Gamma со значением 2.200, а для преобразования из линейного пространства в sRGB - ту же ноду со значением 0.455.

_images/node_materials_gamma.jpg

Ноды Сycles¶

Поддержка нод Cycles - экспериментальная возможность, которая на данный момент не рекомендуется к использованию при разработке серьёзных приложений.

Следует также заметить, что при использовании нод Cycles в Blend4Web конечный результат будет близок к изображению, созданному в самом Cycles, но всё же не идентичен ему.

Движок поддерживает следующие ноды Cycles :

Material Output (поддерживаются только входы Surface и Displacement );

BSDF Glossy (поддерживается только распределение GGX ; параметр Roughness не влияет на отражения);

Следующие ноды поддерживаются частично:

Texture Coordinates (параметр From Dupli не поддерживается);

UV Map (параметр From Dupli не поддерживается);

Geometry (параметры Pointness и Parametric не поддерживаются).

Emission (не влияет на освещённость сцены).

Ноды Cycles также поддерживаются для объекта World , однако на данный момент нодовые материалы не влияют на цвет окружающей среды.

Прочие ноды Cycles в большинстве случаев не будут работать в Blend4Web так же, как они работают в Blender. Кроме того, они могут не работать вообще или даже приводить к некорректной работе материала, в котором используются. Однако использование таких нод не вызовет нестабильности в работе приложения.

Ограничения¶

Нодовые материалы могут быть сложными, но их сложность ограничена возможностями системы, которую вы используете. Эти ограничения могут быть незаметны в большинстве случаев, однако если вы создаёте очень сложный материал, вы можете превысить количество текстур и переменных векторов (т.е., векторов, которые используются вершинным шейдером для передачи данных фрагментному шейдеру), которое система позволяет использовать в одном шейдере. Но даже если этого не произойдёт, некоторые пользователи могут запускать ваше приложение на менее мощных системах, чем ваша. В таких случаях чрезмерно сложные материалы могут вызывать проблемы в работе приложения.

Если вы хотите узнать, как ваша сцена поведёт себя на низкопроизводительном устройстве, но не располагаете таковым, вы можете использовать очень полезную опцию Min Capabilities Mode . Она находится в Просмотрщике сцен на панели Tools & Debug .

Количество текстур и переменных векторов, поддерживаемое вашей системой, можно узнать на веб-странице WebGL Report, перейти на которую можно с обзорной страницы SDK .

Ниже приводятся две таблицы, содержащие количество текстур и переменных векторов, выделяемых движком для различных нод материалов.

Переменные векторы

Нода/Эффект

Выделенные переменные векторы

Нода Input -> Texture (если используется выход Normal )

Нода Blend4Web -> Parallax

Нода Vector -> Normal Map

Нода Input -> Material (если для материала выставлена опция Shading -> Tangent Shading )

Нода Input -> Geometry (если используется выход UV )

Cycles-нода Input -> UV Map

Cycles-нода Input -> Texture Coordinate (если используется выход UV )

Нода Input -> Geometry (если используется выход Vertex Color )

Тени на объекте с Alpha Blend -материалом

(в зависимости от количества каскадов теней и источников света, генерирующих тени)



×

×

Описание

Урок № 11

Тема: Свет. Основы настройки света и освещения.

На сцене по умолчанию стоит лампочка. Посмотрим как она освещает – визуализируем (жмём F12). Видим, что лампа даёт слабый свет и на кубике мы видим только собственную тень.

Создадим поверхность, на которой будет стоять куб. Посмотрим теперь на визуализацию. Не очень удобно постоянно жать F12, чтобы посмотреть изменения. Разделим нашу рабочую область на 2 части. В одной мы будем моделировать, а в другой сразу видеть изменения (подробно смотрите в видео уроке).

Теперь по очереди рассмотрим имеющиеся источники света: точка, солнце, прожектор, полусфера, прожектор.

Лампа Точка.

Свет от неё идёт во всех направлениях.

У каждого источника света (у каждой лампочки) имеются свои индивидуальные настройки. Можно настроить интенсивность, направленность и т.д.

Немного разберёмся что же такое Сэмплинг.

Есть лампочка, от неё отходят пучки света. При увеличении количества отражений света от предметов получается, что свет, отражённый от предметов, падает на тень и делает её в некоторых местах светлее (мягче, с размытыми границами). Жёсткость можно сравнить ещё и с чёткостью тени одновременно с её более тёмным цветом. Таким образом, сэмплы – это количество отражений от предметов или преломлений через предметы. Но при увеличении количества сэмплов время рендеринга будет увеличиваться. Стоит подбирать оптимальное количество.

В жизни источников света чаще всего больше чем 1. Сцена с одним источником выглядит скучно и неестественно. В жизни мы привыкли к большому числу источников света: лампочки, телевизор, свет от компьютера или ноутбука, музыкальный центр, свет с другой комнаты и т.д.

Лампа Солнце.

Имитирует свет солнца. Свет от неё излучается в одном направлении (направленный).

На панели свойств открываем закладку свойства Солнца. На ней можем менять энергию (количество света от источника освещения), установить небесное освещение. Не стоит устанавливать Солнце вертикально – сцена становится скучной. Лучше немного повернуть направление лучей.

Лампа Прожектор.

Отображается на сцене, как световое пятно. Направление лучей напоминает конус. С её помощью создаётся резкий контраст между светом и тенью.

Лампа полусфера.

Излучает свет в одном направлении в форме полусферы и эффект от её применения зависит от её поворота. На панели свойств мы с вами можем также, как и в других лампах поменять интенсивность света.

Лампа область.

Все лампы кроме этой излучают свет из одной точки, а она излучает из многих точек (из области). Это даёт эффект гладких теней.

Светом можно придать сцене настроение. Мало света даёт ощущение пасмурности и грусти. Хорошо освещённая сцена – радость. Чересчур большое количество света – раздражающе и неестественно. Освещение (не подсветка) снизу задаёт нагнетающую обстановку, ощущение страха.

Стоит учитывать, что увеличение количества ламп ведёт к увеличению времени визуализации. Но всё хорошо в меру.

07 июня 2021 г.

2191

Освещение является неотъемлемой частью любого 3D-проекта, и перед добавлением деталей и предметов в сцену, рекомендуется сделать хорошее освещение. После того как вы создадите стены для вашего интерьера, должна последовать настройка освещения.

GНастройка реалистичного освещения в Blender

1. 3D моделирование интерьера

Лучше моделировать базовую сетку для стен по чертежам. Если вы хотите создать что-то для портфолио, посетите сайт Archdaily, там часто можно найти готовые чертежи отличных домов.

Моделируем стены изнутри (простое выдавливание), вырезаем окна и используем параметр затвердевание с равномерной толщиной.

СОВЕТ: Когда вы работаете с чертежами, попробуйте SHIFT + A - импортировать изображение как плоскости вместо использования фоновых изображений. Вы должны работать в текстурном режиме, чтобы увидеть это, но в начале проекта это не должно быть проблемой. Огромным преимуществом является то, что вы видите свой фон, даже если вы не находитесь в ортографическом виде. Эта опция появляется после того, как вы отметите ее в пользовательских настройках (CTRL + ALT + U) в разделе Addons - Import Export: импортировать изображения как планы.

GНастройка реалистичного освещения в Blender

GНастройка реалистичного освещения в Blender

2. Настройка освещения в Blender

Для имитации реального освещения в Blender у вас есть несколько вариантов. Первое - добавить объект солнца в сцену (тут использована сила 10), и этот узел настроен ниже для мира в редакторе узлов. Текстура Node Sky служит черно-белой картой HDRI:

GНастройка реалистичного освещения в Blender

Если вам больше нравятся карты HDRI — их проще, а иногда и лучше использовать — единственная загвоздка — использовать текстуру среды узла вместо текстуры изображения в настройках мира редактора узлов (Node editor). В этом случае сила не должна быть низкой, вы можете настроить ее при тестовом рендерингом.

GНастройка реалистичного освещения в Blender

После того как вы настроили порталы и глобальное освещение - вставьте внутрь камеру, нажмите SHIFT + Z и проверьте свет. Вы также можете добавить оконные рамы без стекла для более быстрого тестового рендеринга.

GНастройка реалистичного освещения в Blender

Для интерьерных сцен в Blender рекомендуется использовать камеру с фокусным расстоянием от 17 до 30 мм, расположенную на высоте 110-150 см от пола. Снимки с более высокой или более низкой точки не будут выглядеть достаточно реалистично.

СОВЕТ: Старайтесь не вращать камеру относительно осей x и y. Лучше просто использовать опцию Shift в настройках камеры. (рисунок ниже)

Если в вашем случае кажется, что внутри недостаточно света в настройках мира, попробуйте поиграть с Ambient Occlusion.

Небольшой туториал, который расскажет как создать простейшую демонстрационную сцену в blender и карту освещенности для неё с использованием radiosity.

room01r | Карты освещенности в blender с использованием radiosity.

Приветствую, дорогой читатель. В этой статье я постараюсь описать от и до процесс создания в блендере простейшей демонстрационной сцены. А также генерации карт освещенности для неё с использованием radiosity.

Для начала пару слов о том, что такое radiosity. Radiosity - это алгоритм расчета освещенности, который относится к группе global illumination. Основное отличие этих алгоритмов от всех остальных - они принимают во внимание не только свет, который напрямую падает на поверхность от источников света (direct illumination), но также и тот свет, который отражается от других объектов (indirect illumination). Отличие же radiosity алгоритма от других GI алгоритмов в том, что он работает только с диффузным рассеиванием света и игнорирует другие виды рассеиваний и отражений. На примере radiosity очень удобно знакомится с global illumination, потому что достаточно просто написать его реализацию. И что не менее важно, освещенность по этому алгоритму считается достаточно быстро.

Начнем непосредственно урок. Обычно, новая сцена в blender'е начинается с куба, точечного источника света и камеры. Если у вас не так, придется создать вручную те объекты, которые нам необходимы. Выделите источник света и удалите его, он нам не понадобится. В конечном итоге у вас на сцене должны остаться только камера и куб. Первым делом настроим камеру, чтобы было приятно смотреть на картинку в будущем. Выделите камеру и перейдите на вкладку Editing (F9). Там в настройках Lens нужно нажать маленькую кнопочку D, чтобы значение параметра Lens предстало перед нами в угловых градусах. Установите это значение по своему усмотрению. Мне нравится FOV (field of view) 70-80 градусов.

camera1 | Карты освещенности в blender с использованием radiosity.

Теперь геометрия. Выделите куб и нажмите кнопку S (scale), далее нажмите цифру 5 и клавишу enter. Таким образом куб увеличится в 5 раз. Ещё раз нажимаем S, также нажимаем Z, ограничивая тем самым изменение пропорций куба только по оси Z. Введите значение 0.2 и опять enter. В итоге мы получим примерно такой приплюснутый параллелепипед.

paral2 | Карты освещенности в blender с использованием radiosity.

Следующим шагом нужно будет сделать две дырки в кубе. Для этого перейдите в режим редактирования (tab) и выставьте режим выделения в faces (ctrl+tab, 3). Теперь нужно выделить верхнюю и нижнюю грань куба. Сделайте это так, как вам удобно. Я перехожу в вид сверху (numpad 7) и пользуюсь инструментами выделения Border Select (B). После того, как вы выделили нужные грани, нужно нажать кнопочку W, откроется длинное меню всяческих модификаций, нам нужно выбрать Subdivide Multi (2). Появится окошко, в котором нужно выбрать сколько раз разрезать грань, значение 2 по умолчанию как раз то, что нам нужно. Нажимаем OK. Теперь наш сплюснутый параллелепипед выглядит так:

paral3 | Карты освещенности в blender с использованием radiosity.

Когда верхняя и нижняя грань разрезана на 9 квадов, нужно выделить средние квады снизу и сверху и удалить их. Опять же сделайте это так, как вам удобно. Чтобы удалить, нужно нажать клавишу Delete и циферку 3 (faces). Теперь параллелепипед стал дырявым параллелепипедом:

paral4 | Карты освещенности в blender с использованием radiosity.

На этот раз необходимо создать 4 новых грани внутри параллелепипеда, которые будут внутренними стенками. Для этого перейдите в режим выделения vertices (ctrl+tab, 1). Выберите вид сверху (numpad 7) и используйте Border Select (B), чтобы выделить нужные вершины. У вас должно получится что-то вроде этого:

paral5 | Карты освещенности в blender с использованием radiosity.

Чтобы создать нужные нам грани, нажмите F (make edge/face) и выберите Skin Faces/Edge-Loops (4). Должно получится вот так:

paral6 | Карты освещенности в blender с использованием radiosity.

И последний шаг редактирования. Нужно опять перейти в режим выделения граней (ctrl+tab, 3) и выделить все грани кнопкой A (select all). Дело в том, что нормали граней смотрят "наружу", а нам необходимо, чтобы они смотрели "внутрь" для правильного расчета освещенности. Смело нажимаем ctrl+shift+N (recalculate normals inside). С этим кубом мы закончили. Можно выйти из режима редактирования (tab).

Теперь предстоит создать источник света. Нашим источником света будет обычный куб с не совсем обычным материалом. Поставьте курсор где-нибудь внутри нашего сплюснутого дырявого параллелепипеда, переключитесь в вид сверху (numpad 7) и создайте куб. Я сделал вот так:

Читайте также: