Как сделать светящуюся текстуру в blender

Работа с материалами в Blender

Привет, меня зовут Сергей Мингулин, я — 3D-художник и преподаватель курса по созданию стилизованных 3D-персонажей в XYZ. Посмотреть на мои проекты можно здесь. Это — первая статья из цикла о визуализации в Blender.

Сегодня поговорим о том, как настраивать материалы, и какие дополнительные программы и расширения облегчат работу. А ближе к финалу я дам небольшой туториал по созданию интересного эффекта свечения на примере иллициев мутанта — выростов на голове для приманивания добычи.

Дополнительные программы для удобства

Substance Painter — программа для текстурирования 3D-моделей или создания текстур/текстурных карт для них. По ходу работы мы будем импортировать текстуры отсюда.

Node Wrangler — аддон, который содержит разнообразные инструменты для улучшения и ускорения воркфлоу, основанного на нодах (node-based workflow).

Активируется он следующим образом:

Переходим во вкладку «Edit», заходим в настройки «Preferences» и в «Add-ons» ставим галочку на соответствующей вкладке. Для удобства ищем аддон через поисковую строку.

Как работать в Material Editor

После того как портировали нужную модель в Blender, находим вверху вкладку Editor Type и выбираем Shader Editor. Нас перебрасывает в меню.

Material Editor имеет 2 режима:

1.Редактирование «мира» сцены.

Здесь есть две настройки:

Surface (поверхность) — сюда можем подключить обычный background (включен по умолчанию) и поменять его цвет или же добавить HDRI текстуру (удалить нод background и добавить Environment texture через Shift+A ). Я остановился на обычном бэкграунде.

Volume (объём) — здесь я добавил шейдер principled volume, который отвечает за «туман» или условную прозрачность атмосферы вокруг объекта.

2. Редактирование объектов, с которым мы и будем сегодня работать.

Чтобы создать нод, нажимаем Shift-A — этот хоткей вызывает панель с вкладками настроек. Мы можем как вручную искать во вкладках интересующую нас, так и ввести название в строку «search», после чего нод появится в меню.

Пример создания пустого материала

Чтобы создать новый материал без названия и настроек, нажимаем вкладку Material Properties и щёлкаем «+».

Здесь же нажимаем «new», и у нас появляются базовые ноды: Material Output и Principled BSDF, с помощью которых мы будем проводить изменения.

Важно: не забываем активировать Node Wrangler.

Выделяем базовый шейдер и нажимаем Shift+Control+T. Комбинация откроет нам меню выбора файлов. Выделяем нужные нам текстуры и подгружаем.

Если по умолчанию в названии файла текстуры есть приписка с её назначением, прога сама привязывает соответствующие файлы к параметрам.

Редактировать эти приписки (или суффиксы/тэги) можно в меню:

Если значение определилось неверно, изменить привязку можно самостоятельно, соединив мышкой output нода и input шейдера.

Кроме того, текстуру можно так же вручную перетянуть из окна в программу и прилинковать.

Назначить материал для модели можно, снова перейдя в 3D Viewport. Выделяем нужный объект, и пакет назначается автоматически. Если нам нужен другой, жмём крестик, а затем вкладку «new» или выбираем из уже имеющихся сохранённых.

Настройка материала высокополигональной модели

Стоит оговориться, что речь пойдёт о модели хайполи с высокой плотностью сетки, которая призвана проиллюстрировать навык дизайнера в рамках портфолио.

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

Metallic, Transmission и Transmission Roughness мы не используем на теле вообще.

Дальнейший процесс можно разделить условно на 2 этапа: работу над материалами для тела и зубов и настройку иллициев.

Тело и зубы

Для настройки материала тела мы используем обычный PBR-материал с Metal-Rough workflow или пайплайном. Карты экспортируем из упомянутого в начале статьи Substance Painter.

Наш материал состоит из следующих нодов: Albedo или Base Color, Roughness и Normal Map. Последний используется для мелкой детализации.

Что нужно знать при работе с материалом?

Текстурные карты, которые не передают цвет материала, должны быть в линейном пространстве. Поэтому в Color Space текстур мы ставим:

sRGB — для Albedo

Non color, либо Liner — для Roughness, Normal и т.д. в зависимости от вашей сборки

Также, в зависимости от того, в каком пайплайне мы работали в Substance Painter и какой там пресет на экспорт текстур (под OpenGL или DirectX), может потребоваться «флипнуть» зелёный канал в Normal Map.

Для этого нажимаем Shift-A, находим Separate RGB и подключаем к нему output Color. Как понятно из названия, этот нод даёт нам провести необходимую манипуляцию с одним из каналов (Red, Green, Blue). Теперь, чтобы инвертировать зелёный канал (G), добавляем нод Invert со значением Fac «1.000» и подключаем обратно через Combine RGB.

Эту конструкцию мы затем подключаем к Normal в Principled BSDF. Roughness (чёрно-белая карта, не требует манипуляций с каналами) подключается в соответствующий слот шейдера, так же как и Albedo (Base Color).

Вот так выгладит готовая сборка материала:

Фиолетовое поле — это наш Normal Map. Не обращаем внимания на неприлинкованные окна.

В случае с зубами настройки всё те же. Также флипаем при необходимости зелёный канал в нормалке.

Пошаговое создание светящихся иллициев

Иллиций — особый ловчий вырост («удочка») на вершине головы у костистых рыб отряда удильщикообразные, служащий для приманивания добычи. Нечто похожее есть и у нашей модели.

Примеры в референсах.

Рассмотрим, как распределить свечение по всей длине иллициев, — от наибольшей интенсивности к наименьшей.

Наши «удочки» будут состоять из:

нижнего слоя — овалы внутри, дающие основное свечение на концах;

среднего слоя — так же светящиеся трубки;

верхнего слоя — внешняя оболочка иллициев.

a) Нижний слой

Material Output нижнего слоя состоит из Principled BSDF, который идёт в Surface объекта, и Principled Volume, подсоединённого к параметру «внутреннего объёма».

Так как геометрия объектов простая, Normal Map нам не нужен, и его значения мы оставляем «по умолчанию». Основные манипуляции будем проводить с названными выше нодами.

Первый — это Principled BSDF. Здесь мы задаём Base Color значением HSV (Hue, Saturation, Value), оставляем Roughness по умолчанию и переходим к настройке прозрачности. Так как наш объект будет скрыт под другими слоями, и основное свечение будет исходить из внутреннего объёма, ставим значение Transmission «1.000» — это даёт нам полностью прозрачный объект. А параметр Transmission Roughness позволяет выбрать, насколько матовой или глянцевой будет поверхность (чем больше значение, тем меньше глянца).

Переходим к работе с Volume. Здесь мы задаём цвет внутреннего «тумана» и его плотность, выставив значение Density на 10.000.

Настройки материала нижнего слоя.

Как настроить свечение?

На скриншоте выше мы видим, что Emission поверхности — чёрный. Это значит, что свечение будет исходить не от неё, а от Volume. Для этого мы и задавали максимальную прозрачность оболочки. Так как этот слой будет ещё под двумя, задаём большое значение в параметре Emission Strength («сила излучения») — «1700.000».

b) Средний слой

Ноды этого слоя те же, что и у предыдущего. В Principled BSDF значение Roughness мы выставляем меньше, примерно в 3 раза, что даёт нам более глянцевую поверхность. Значение IOR (индекса преломления) оставляем по умолчанию. Transmission, в случае второго слоя, у нас контролируется через Color Ramp и Layer Weight.

Настройки материала среднего слоя.

Layer Weight — нод, из которого мы берём значение Френелевского отражения.

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

Пример: рыба из референса. Мы видим, как поверхность всё больше теряет прозрачность и обретает цвет по краям.

Color Ramp — по своей сути, аналог уровней в Photoshop, с помощью которого мы можем:

1) инвертировать цвета — по умолчанию белый цвет справа, чёрный слева; перетягивая ползунки друг на друга, обращаем цвета.

2) настроить контрастность — чем меньше расстояние между ползунками, тем она больше.

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

От настройки поверхности переходим к свечению. Оно берётся из нода Principled Volume, который мы также подключаем к Material Output (Volume). Цвет тумана — красный, испускаемого света — оранжевый. Выбираем значение плотности — «1.000», и Emission — «400.000».

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

c) Верхний слой

Наконец, настройки внешней оболочки выглядят следующим образом:
Общий принцип остаётся тот же: Principled BSDF, к которому подсоединяем Bace Color с Color Space sRGB, и упрощённая настройка volume — Volume Absorption.

На последнем останавливаться нет смысла, затронем основные моменты настройки Principled BSDF.

Для Roughness была использована готовая текстура из Substance Painter.

Аналогично применяем готовый градиент к Transmission и миксуем его с уже описанным Layer Weight (откуда берём френель) + Color Ramp (инверт LW).

Чтобы смешать прозрачность по френелю и по градиенту, создаём нод MixRGB и выбираем вариант смешивания Multiply, линкуем их к нему (Color1 и Color2), после чего соединяем нод Multiply с Transmission.

И не забываем инвертировать зелёный канал в Normal Map при необходимости.

Так выглядит наша модель на рендере. В следующий раз поговорим о том, как выставить свет в соответствии с задачами, и правильно её подать.

Если хочешь научиться создавать стилизованных 3D-персонажей — записывайся на курс STYL. Стартуем 1 октября — если записаться сейчас, можно успеть получить скидку.
Все подробности по ссылке: https://www.school-xyz.com/styl


Источник

Настройка света в Blender

Привет, меня зовут Сергей Мингулин, я — 3D-художник и преподаватель курса по созданию стилизованных 3D-персонажей в XYZ. Посмотреть на мои проекты можно здесь. Сегодня мы продолжим говорить о визуализации в Blender — с первой частью гайда можно ознакомиться по ссылке.

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

Работа во Viewport и технические ограничения

Работать мы будем в трёх окнах. Первое — рабочее, без рендера, где будут отображаться все камеры и источники света. Второе — уже знакомый нам Material Editor. И третье — своего рода наглядная демонстрация: в нём будет отображаться уже отрендеренная картинка с ракурса выбранной камеры.

Для этого в правом углу окна в шейдинге viewport выбираем Rendered.

Для более быстрой итерации я обычно использую Eevee — рендер в реальном времени, который может работать в качестве финального рендера, либо в качестве движка, который управляет предпросмотром в реальном времени при создании объектов.

В нашей модели есть объекты с параметром volume. Это затрудняет работу, поскольку Eevee берёт bounding box, крайние точки по трём осям xyz, который и становится volume.

В нашей модели есть объекты с параметром volume. Это затрудняет работу, поскольку Eevee берёт bounding box, крайние точки по трём осям xyz, который и становится volume. Исправить этот эффект можно, поменяв шейдеры с volume, например, на базовый Principled BSDF с обычным emissive у каждого иллиция. Но это потребует отдельной настройки материала под eevee, — если мы хотим, чтоб свечение было похоже на то, которое было настроено под cycles.

Поэтому оставляем Principled BSDF без свечения, с упрощенными материалами выставляем свет в eevee, и уже перед финальными рендерами будем переключаться на cycles для корректного отображения всех наших материалов и света. Заходим во вкладку Render Properties и выбираем Cycles.

Здесь же назначаем девайс: CPU или GPU. Характеристики моего железа позволяют рендерить в CPU, что несколько медленнее, но обеспечивает более стабильную работу.

В этой же вкладке настраиваем количество сэмплов, которое можно установить отдельно для финального рендера и для вьюпорта.

Ещё один важный момент — коллекции. Для удобства организации сцены создаём отдельную коллекцию, которая будет состоять из камеры и подобранных для конкретного ракурса источников света. Это позволит быстро переключаться между кадрами и не тратить время на то, чтобы вспомнить, какой сетап источников света за какой кадр отвечает.

Как это сделать: в панели Scenes Collection нажимаем New Collection. Теперь, если нажать значок “папка” перед названием, все новосозданные объекты автоматически будут помещаться в выбранную коллекцию.

Также коллекции удобны тем, что мы можем в один клик отключить отображение целого сетапа во вьюпорте или на рендере (значки “глаз” и “камера” соответственно).

Совет: если хотите сделать “предвизуализацию” освещения, лучше всего выставлять источники при нейтрально серых объектах. Это позволит избежать ситуаций, когда картинка пересвечена либо наоборот недостаточно освещена.

Настройка камеры

Переходим непосредственно к работе. В самом начале у нас есть объект, к которому можно создать плоскость с помощью уже знакомого хоткея “Shift+A”.

Аналогичным образом создаём камеру. Чтобы настроить ракурс во втором окне, делаем её активной (жмём значок “камера” в панели справа), после чего над ней появляется чёрный треугольник — обозначение главной камеры.

Теперь жмём “0” на нампаде и смотрим через выбранную камеру. При этом, если мы попробуем сдвинуться, камера останется на месте. Чтобы менять ракурс камеры, а не своё положение, нажимаем N и выбираем в открывшейся вкладке View — Lock Camera to View. После этого рамка, которая определяет кадр подсвечивается красным пунктиром, и мы можем двигаться “изнутри” камеры. Выставляем таким образом нужный ракурс.

Закончив, снимаем галочку с Lock Camera to View. Камера выставлена. Теперь, чтобы во втором окошке отображался ракурс именно этой камеры, нажимаем на него и снова “0”.

Настройка источников света

Таким же образом (“Shift+A”) создаём источники света. Их у нас 4 вида на выбор:

Point — свет этого источника распространяется из одной точки равномерно во все стороны, с постепенным затуханием.

Sun — источник направленного света с параллельными лучами, без затухания.

Area — источник света, при использовании которого излучение происходит из плоскости, форму и размер которой мы можем настраивать.

Итак, создаём Spot, который автоматически добавляется в активную коллекцию. Изменяем положение источника света относительно модели, выбрав его мышью и нажав хоткей G для перемещения

Переходим во вкладку настройка света (значок “зелёная лампочка”). Здесь мы можем выбрать цвет и интенсивность света. По умолчанию значение последнего параметра (Power) — “10W”. Назначаем “1500W” и тут же видим в окошке, как это будет выглядеть на рендере.

Ещё один параметр источника света, который мы можем настраивать, — размер (в случае Spot). Чем он больше, тем мягче падающие тени. Следовательно, если мы хотим получить супержёсткие тени с чётким контуром, ставим значение «0».

На отображение теней в Eevee также влияет количество сэмплов. Из-за того, что у нас во Viewport стоит значение “16”, мягкие тени разбиваются на отдельные части. Чтобы это исправить, поднимаем значение. Однако, в этом случае мы несколько жертвуем производительностью, и скорость рендера замедляется.

В качестве примера, — скрин отображения при 256 сэмплах.

Как я уже говорил, в случае Spot и Area можно выбрать направление источника света. Чтобы изменить угол падения света, зажимаем жёлтую точку либо хоткей “Shift+T”. А взаимодействуя со стрелкой можно отрегулировать угол фонарика.

Таким образом можно, например, сконцентрировать свет на конкретной части тела, чтобы сделать акцент.

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

Говоря об Area, отметим один из параметров источника — габариты. Здесь мы можем выбрать форму источника: квадрат, прямоугольник, диск либо эллипс. Диск и квадрат имеют один параметр для изменения — радиус и сторону, соответственно. Прямоугольник — длину и ширину.

После того, как прикинули в Eevee базовое расположение источников, переключаемся в Cycles, чтобы получить более приближенную к итоговому рендеру картинку.

Как выставить свет

Теперь поговорим о принципах, в соответствии с которыми выставляется свет. И здесь большую роль играет определение задачи: должна ли модель максимально отражать наш навык или же перед нами стоит цель поставить сцену так, чтобы чётко считывалось настроение.

В зависимости от этого выделим условные 2 вида:

1. «Недраматичная» или скульптурная подача — когда нам нужно показать хорошо считываемые формы и детали.

В этом случае мы берём в качестве основного источника Area, выставляем значение Size “5м”. Получаем эффект, схожий с освещением в пасмурную погоду: равномерное освещение, мягкие тени, плавный переход от света в тень.

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

Помимо основного источника мягкого света, можно также использовать дополнительный, который будет расположен за объектом либо вне кадра, подсвечивая саму тень. Таким образом удаётся подчеркнуть детали и выставить “студийный” свет.

Я предпочитаю пользоваться минимумом источников, но при желании можно добавить и третий — дело вкуса. Главное — не переборщить и избежать засвета модели со всех сторон, иначе мы потеряем ощущение объёма модели.

Совет: не забываем о свете, который отражает «пол». Порой достаточно лишь изменить его тон, чтобы добавить или убрать рефлексы.

Вот так выглядит готовый turntable со скульптурной подачей:

2. “Драматичная” подача — противоположна скульптурной и предполагает, что мы готовы пожертвовать некоторым уровнем детализации ради достижения эмоционального эффекта.

Чем больше контраст между светом и тенью, тем большей “драматичностью” обладает кадр.

Добиться максимального эффекта можно, расположив источник света за объектом напротив направления взгляда камеры.

Ниже — наглядный пример. Эти сетапы я рассматривал в процессе работы.

В конечном итоге я хотел добиться ощущения случайной фотографии, поэтому подал модель в “драме”: жёсткие тени, источник света расположен не намного левее камеры, чтобы отчасти сохранить детализацию и в то же время создать эффект вспышки камеры. Общее настроение кадра: тревога от встречи с монстром в темноте, ощущение неизвестности и напряжение.

Так выглядит наш кадр уже после рендера и обработки. О них поговорим в следующий раз.

Если хочешь научиться создавать стилизованных 3D-персонажей — записывайся на курс STYL. Стартуем 1 октября — если записаться сейчас, успеешь получить скидку.

Источник

Узел «Текстура шума»

Как сделать светящуюся текстуру в blender. Смотреть фото Как сделать светящуюся текстуру в blender. Смотреть картинку Как сделать светящуюся текстуру в blender. Картинка про Как сделать светящуюся текстуру в blender. Фото Как сделать светящуюся текстуру в blender

Узел «Текстура шума» 

The Noise Texture node evaluates a fractal Perlin noise at the input texture coordinates.

Входы

The inputs are dynamic, they become available if needed depending on the node properties.

Texture coordinate to evaluate the noise at; defaults to Generated texture coordinates if the socket is left unconnected.

Texture coordinate to evaluate the noise at.

Scale of the base noise octave.

Number of noise octaves. The fractional part of the input is multiplied by the magnitude of the highest octave. Higher number of octaves corresponds to a higher render time.

Blend between a smoother noise pattern, and rougher with sharper peaks.

Свойства

The dimensions of the space to evaluate the noise in.

Evaluate the noise in 1D space at the input W.

Evaluate the noise in 2D space at the input Vector. The Z component is ignored.

Evaluate the noise in 3D space at the input Vector.

Evaluate the noise in 4D space at the input Vector and the input W as the fourth dimension.

Higher dimensions corresponds to higher render time, so lower dimensions should be used unless higher dimensions are necessary.

Выходы

Value of fractal noise.

Color with different fractal noise in each component.

Примеры

Как сделать светящуюся текстуру в blender. Смотреть фото Как сделать светящуюся текстуру в blender. Смотреть картинку Как сделать светящуюся текстуру в blender. Картинка про Как сделать светящуюся текстуру в blender. Фото Как сделать светящуюся текстуру в blender

Текстура шума с высокой детальностью 

Примечания

While the noise is random in nature, it follows a certain pattern that might not evaluate to random values in some configurations. For instance, consider the following configuration where a grid of objects have a material that evaluates a noise texture at their locations. One might expect the objects to have random values since they have different locations, but this is not the case.

Как сделать светящуюся текстуру в blender. Смотреть фото Как сделать светящуюся текстуру в blender. Смотреть картинку Как сделать светящуюся текстуру в blender. Картинка про Как сделать светящуюся текстуру в blender. Фото Как сделать светящуюся текстуру в blender

An example configuration where the noise evaluates to a constant value. 

It seems all objects have a value of 0.5. To understand why this happens, let us look at the following plot of a 1D noise texture.

Как сделать светящуюся текстуру в blender. Смотреть фото Как сделать светящуюся текстуру в blender. Смотреть картинку Как сделать светящуюся текстуру в blender. Картинка про Как сделать светящуюся текстуру в blender. Фото Как сделать светящуюся текстуру в blender

A plot of a 1D noise with zero details and zero distortion. 

The horizontal line denotes a value of 0.5 and the vertical lines denotes whole numbers assuming a noise scale of 1. As can be seen, the noise always intersects the 0.5 line at whole numbers. Since the aforementioned objects were distributed on a grid and have whole number locations, they all evaluate to 0.5. Which explains the issue at hand.

Generally, any discrete evaluation of noise at integer multiples of the reciprocal of the noise scale will always evaluate to 0.5. It also follows that evaluations closer to that will have values close to 0.5. In such cases, it is almost always preferred to use the White Noise Texture.

Regardless, one can mitigate this issue in a number of ways:

Adjust the scale of the noise to avoid aligning the noise with the evaluation domain.

Add an arbitrary offset to the texture coordinates to break the alignment with the evaluation domain.

Evaluate the noise at a higher dimension and adjust the extra dimension until a satisfactory result is achieved.

Как сделать светящуюся текстуру в blender. Смотреть фото Как сделать светящуюся текстуру в blender. Смотреть картинку Как сделать светящуюся текстуру в blender. Картинка про Как сделать светящуюся текстуру в blender. Фото Как сделать светящуюся текстуру в blender

Constant value issue. 

Как сделать светящуюся текстуру в blender. Смотреть фото Как сделать светящуюся текстуру в blender. Смотреть картинку Как сделать светящуюся текстуру в blender. Картинка про Как сделать светящуюся текстуру в blender. Фото Как сделать светящуюся текстуру в blender

Mitigating the issue by adjusting the scale. 

Как сделать светящуюся текстуру в blender. Смотреть фото Как сделать светящуюся текстуру в blender. Смотреть картинку Как сделать светящуюся текстуру в blender. Картинка про Как сделать светящуюся текстуру в blender. Фото Как сделать светящуюся текстуру в blender

Mitigating the issue by adding an arbitrary offset. 

Как сделать светящуюся текстуру в blender. Смотреть фото Как сделать светящуюся текстуру в blender. Смотреть картинку Как сделать светящуюся текстуру в blender. Картинка про Как сделать светящуюся текстуру в blender. Фото Как сделать светящуюся текстуру в blender

Mitigating the issue by evaluating at a higher dimension. 

Similarly, in other configurations, one might experience some banding patterns in the noise, where there are bands of high contrast areas followed by banding of low contrast areas. For instance, planar surfaces that are slightly tilted along one of the axis will have such a banding pattern.

Как сделать светящуюся текстуру в blender. Смотреть фото Как сделать светящуюся текстуру в blender. Смотреть картинку Как сделать светящуюся текстуру в blender. Картинка про Как сделать светящуюся текстуру в blender. Фото Как сделать светящуюся текстуру в blender

An example configuration where the noise have a banding pattern. 

This happens because the slight tilt along one of the axis causes values along the perpendicular axis to change very slowly making the grid structure of the noise more apparent. The easiest way to mitigate this issue to rotate the coordinates by an arbitrary amount.

Как сделать светящуюся текстуру в blender. Смотреть фото Как сделать светящуюся текстуру в blender. Смотреть картинку Как сделать светящуюся текстуру в blender. Картинка про Как сделать светящуюся текстуру в blender. Фото Как сделать светящуюся текстуру в blender

Mitigating the issue by rotating the coordinates by an arbitrary amount. 

© Copyright : This page is licensed under a CC-BY-SA 4.0 Int. License. Обновлено: 12/22/2021.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *