0

Как быстро сделать развертку 3d модели

Меня зовут Мария, мой проект с бесплатными развертками — Methakura

Pipeline (пайплайн) — это процесс разработки (подготовки, производства), программный конвейер.

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

Главное, что я хочу донести в этой статье — над моделью работаете вы, ваши руки и мозги, все программы, которые вы используете — лишь инструменты. Мне часто пишут с просьбой научить моделировать, подразумевая при этом навыки работы в программах, когда на самом деле для лоуполи моделирования нужны самые базовые знания любого подходящего 3д пакета, которые можно получить, просмотрев несколько уроков. Трёхмерный пакет — это ваш карандаш, он не подскажет вам откуда начинать моделировать, как соблюдать пропорции, как сделать модель интересной. Создание лоуполи моделей — это прежде всего про дизайн.

Именно поэтому я хочу рассказать в общем целом о пайплайне, а не учить вас тыкать по кнопочкам в 3ds max или Blender (впрочем, не исключаю, что я когда-нибудь доберусь и до таких уроков, но их на самом деле и так немало). Я буду упоминать различные программы, большинство из которых будут необязательными, но вы должны понимать, что само по себе создание полигонов не сложное. Так же я рассчитываю, что читатель этой статьи, вознамерившийся научиться делать лоупольки, умеет пользоваться гуглом. Эта статья — обзорная, а не полноценный урок, так что я буду выделять всё полезное жирным шрифтом, чтобы вы сами могли нагуглить необходимые уроки.

Дисклеймер: я тут описываю создание модели именно с нуля. Ретопология, десимейт и прочие полуавтоматические радости заслуживают отдельного гайда.

Как я говорила, лоуполи модели — это про дизайн. Это значит, что прежде чем начать делать модель, у вас уже должно быть некое представление о том ,как она должна выглядеть.

Что это за животное/персонаж и в какой позе?

Пропорции реалистичные или стилизованные?

Модель симметричная или нет?

Для того чтобы было легче ответить на эти (и другие, если появятся) вопросы, нужно подобрать референсы — картинки/фотографии, которые помогут вам изучить и понять форму объекта, который вы взялись воплощать. Так сказать, нужно наработать визуальную базу.

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

И это немного сложноватый подход для новичков, когда речь идёт о создании лоуполи модели, потому что наша задача — не повторить форму с фотографии в точности, а переработать её. Как правило, при таком способе используются всего пара проекций. Из-за этого модель может приобрести комичную «кубичность».

^ Тут дизайнер явно не интересовался тем как вообще выглядят медведи и собаки, а сделал модели по паре фотографий вида спереди ^

^ Собаке сломали анатомию ^

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

Как подобрать референсы?

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

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

Самые лучшие референсы – это фотографии скульптур. Они приносят большую пользу, потому что в скульптурах, как и в моделях лоуполи, идёт работа над упрощением формы. Особенно это актуально с объемными рыхлыми малопонятными формами, например, гривой льва. Для поиска референсов я использую Pinterest и Яндекс.Картинки.

^ Кот и скульптуры, которые были для него использованы в качестве примеров поз и пропорций (это основные референсы к нему, так же в процессе удобно искать фотографии определенных частей тела, которые вызывают сложности — отдельно лапы, уши, морды) ^

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

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

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

После того, как собраны референсы, можно начинать работу над самой моделью.

Это необязательный этап, который я нередко использую вместо метода проекций.

Для скульпта я использую программу Zbrush и делаю примерный набросок с помощью Z-sphere. Скульптить можно так же в бесплатных и простых Sculptris и Blender, но Z-sphere в Zbrush удобны тем, что с ними легко работать мышью.
Это — набросок белочки, которую я скульптила для своего проекта с помощью Z-sphere.

Как видите, она очень простая, я набросала только основные объемы и пропорции. Этого вполне достаточно для дальнейшей работы в лоуполи. Над мелкими подробностями лучше работать с помощью референсов.

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

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

Приступаем непосредственно к созданию сетки нашего объекта.

Вне зависимости от того, в каком пакете вы работаете (самые популярные — 3ds Max и Blender), вам нужно знать следующие вещи:

Читайте также:  Дом страха как собрать дракона

1. Интерфейс и навигация.

2. Создание базовых объектов типа Plane и Box

3. Основные инструменты типа перемещения, вращения, масштабирования, локальные координаты объекта (Pivot point)

4. Работу с подобъектами, то есть вертексами, ребрами и полигонами. Самые популярные и нужные операции для работы с лоуполи: Extrude (выдавливание ребра/полигона), Weld (слить два вертекса в один, в Блендере это Merge), Connect (соединить две точки ребром, в Блендере это Join). Все эти инструменты (и другие нужные) можно увидеть в любом начальном уроке по полигональному моделированию в соответствующем пакете.

6. Slice или аналоги (для Блендера есть скрипты), чтобы делать плоские части у трофеев и дно у фигурок

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

Видеокурсы по Максу, если вы хотите найти на русском, лучше искать на трекерах. На ютубе ничего внятного лично я не нашла.

Нюансик, о котором вам в уроках не расскажут

Для создания моделей под бумагу важно сохранять полигоны плоскими. Неплоские полигоны называются нонпланарами (Non-planar). При склеивание модели такие полигоны гнутся, создают напряжение и даже могут деформировать модель. Треугольник планарен по умолчанию (три точки образуют плоскость, а вот четвертая, пятая и тд могут лежать и вне этой плоскости, поэтому такая поверхность не планарная). Pepakura designer (программа для создания и редактирования разверток) умеет бить непланарные полигоны в вашей модели на треугольники с заданным порогом в градусах, но это влияет на дизайн модели.

Для того чтобы в Максе увидеть нонпланарность полигонов, нужно включить режим отображения Facets.

Теперь, если в не-треугольном полигоне вы увидите лишнее ребро, при том что ребра там фактически нет — это нонпланар, гоните его ссаной тряпкой подвигайте вертексы, чтобы выпрямить его. Так же, если это входит в ваш дизайн, можно разбить такой полигон на треугольники, соединив вертексы. Я бы советовала делать это заранее в 3д редакторе, а не в Pepakura designer, потому что полигон может побиться не по той диагонали.

Желательно с самого начала моделить так, чтобы не создавать нонпланарные полигоны и выпрямлять их моментально, как только заметите лишние диагонали.

Ну что же мы ждём, начинаем

Первое что стоит сделать — «обвести» силуэт будущей модели полигонами. Это нужно для того, чтобы определиться с пропорциями на лоуполи и разобраться с необходимой плотностью сетки, созданные на этом этапе полигоны не окончательные, но они дадут отличный старт для дальнейшей работы, чтобы вам было на что опираться и из чего "растить" полигоны. Создайте Plane, состоящий из одного полигона, перейдите в режим редактирования ребер и экструдом наращивайте полигоны, описывая силуэт фигурки. Опираясь, естественно, на скульпт или картинку в проекции и референсы.

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

Ладно, конечно есть общие принципы, по которым можно выстраивать сетку.

Кого смотреть: Oxygami, Northpoly

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

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

Кого смотреть: Wintercroft, Methakura (куда без саморекламы-то)

Открываем референсы в любом редакторе и ищем плоскости

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

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

Рендер необязательный, вспомогательный, но очень неплохой способ посмотреть на модель «как есть». Я использую рендер Corona, он довольно простой, но если вы не хотите заморачиваться с обучением ещё и рендерингу, обратите внимание на Sketchfab — ресурс, куда можно загрузить модель, чтобы потом смотреть её прямо из браузера. Кроме того, что это очень удобно для презентации модели, вы можете подобрать естественное освещение и посмотреть на модель со всех углов. Так очень хорошо видно ошибки.

^ Изменения после рендеринга (поменялся изгиб шеи, наклон головы, геометрия носа, глаз и ушей ) ^

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

Известные скульпторы смотрели на тени, а мы просто зальём модель однотонным материалом и посмотрим со всех сторон (прежде всего с тех сторон, на которые чаще всего будут смотреть в реале, в бумаге)

Силуэт в большинстве поз должен быть интересный и узнаваемый.

Широкое понятие, которое я бы обобщила как "разнообразие". Проще показать на примере.

Читайте также:  Дмв антенна для цифрового телевидения своими руками

За хорошими примерами контраста я бы рекомендовала смотреть именно автора Waste paperhead. Я знаю, что многие сборщики плюются от их мелких глаз, но в визуальном плане это хороший пример использования "колбасы" с разницей в детализации. В некоторых моделях она очень интересно разбита на диагонали.

Вообще это понятие для аниматоров, но его отлично можно использовать, чтобы делать интересные позы. Если ваша фигурка не статичная или с асимметрией, вам будет полезно прочитать этот материал: petrick.ru/line-of-action

Если модель вас устраивает, можно топать разворачивать.

Задавайте вопросы в комментариях, я постараюсь ответить 🙂 Так же делитесь ссылками на хорошие уроки по Blender и 3ds max для новичков, было бы неплохо собрать такую базу под паперкрафт, без лишнего.

В этом уроке мы рассмотрим процесс создания развёртки (unwrapping) сложной модели в 3ds max. Постараюсь показать всю важность сохранения координат UV ровными и без растяжений при максимально простой технике, не теряя контроля над конечным результатом работы.

Скачайте архив max_scene.zip [47.91 Kb], в нём вы найдёте папку с названием "Max Scene". Внутри папки есть два файла формата 3ds max – стартовая и конечная сцены урока. Урок можно проходить либо в предложенной мной сцене, либо использовать для этого свою собственную 3D модель.

Что ж, давайте приступим. Запустите 3ds max и откройте файл "unwrap_Start.max". Запустив сцену, вы увидите модель настенной полки. Данный объект не является суперсложным, но он имеет достаточно граней и разнообразных форм, которые позволят мне показать различные техники и методы создания развёрток и их применение.

1. Процедурная карта Checker
Мы начнём с настройки шаблона закрашивания модели шахматной клеткой (паттерн Checker). Шаблон закрашивания модели шахматной клеткой? Да где же такое можно увидеть в реальном мире?! Ну, на самом деле этот шаблон станет очень значимой частью процесса создания развёртки (unwrapping). С использованием шаблона шахматной клетки мы можем наглядно увидеть растяжения на наших картах и легко исправить эту проблему.

Идём дальше. Запустите Material Editor (Редактор материалов), перейдя сверху в меню Render > Material Editor, или же просто нажав клавишу М.

Находясь в редакторе материалов, выделите слот материала (на скриншоте обозначен цифрой 1), в котором мы создадим шаблон Checker. Далее, в свитке Blinn Basic Parameters (Основные параметры по Блинну), вы увидите три свойства, называемых Ambient, Diffuse и Specular.
Нам нужно добавить карту Checker в свойства Diffuse. Кликните по квадратику рядом Diffuse (обозначен цифрой 2).

2. Установка карты Checker
Кликнув по маленькому квадрату рядом с Diffuse, мы вызовем окно Material/Map Browser. В появившемся списке выберите карту Checker.

3. Настройка координат карты Checker
Теперь, когда карта Checker загружена в материал, необходимо настроить тайлинг, чтобы нам было яснее видно места с растяжениями. В разделе Coordinates найдите параметры U и V Tiling и измените установленные там числа с 0 на значения повыше, скажем, 20.

4. Применение материала с картой Checker к 3D модели
Кликните и перетащите созданный нами материал на 3D модель в сцене.

5. Отображение материала на 3D модели
Даже не смотря на то, что мы перетащили материал на нашу модель в сцене 3ds max, она всё ещё отображается серым цветом. Чтобы сделать нашу карту Checker видимой, нам следует включить ещё одну настройку. С выделенным материалом кликните кнопку Show Standart Map in Viewport (Отображать стандартную карту в окне проекции). Теперь шаблон закрашивания Checker стал видимым во вьюпорте.

Растяжения текстуры на 3D модели

Взглянув на нашу 3D модель, мы можем заметить, что на ней присутствуют очень нехорошие растяжения. Сейчас мы это исправим!

7. Модификатор Unwrap UVW
В первую очередь нам придётся добавить к нашей модели модификатор для создания развёртки. Для этого перейдите в выпадающее меню Modifier и выберите модификатор Unwrap UVW.

8. Вызов окна Edit UVW
После того как мы добавили модификатор, мы можем редактировать координаты развёртки UV нашей модели. В разделе Parameters модификатора Unwrap UVW есть большая кнопка под названием Edit. (показана внизу). Кликните по этой кнопке для вызова окна Edit UVW.

Окно Edit UVW

Это окно содержит всю информацию по координатам UV вашей модели. Как видно, разметка координат UV сделана как попало, и очень сложно сказать, что есть что (см. скриншот внизу).

Попытка текстурирования по разметке вроде этой приведёт к ужасным результатам и сильно вас разочарует. Поэтому мы должны привести её в порядок, чтобы было предельно ясно, где что расположено. Это очень облегчит вам жизнь при текстурировании 3D моделей.

10. Делаем грани (фейсы) плоскими
В 3ds max есть замечательная возможность автоматического выравнивания каждой отдельной грани 3D модели, что будет идеальным отправным пунктом при разметке координат UV сложных поверхностей модели. Чтобы начать работу с плоским маппингом, в выпадающем меню модификатора Unwrap выделите грань (face) (показано внизу), или просто нажмите клавишу 3.

11. Выделяем всё в Edit UVW
Когда закончите с этим, подвиньте окно Edit UVW и выделите в нём всё мышью, либо нажатием комбинации клавиш Ctrl+A.

12. Выравниваем маппинг
Далее, перейдите к верхней панели инструментов и кликните Mapping > Flatten Mapping.

13. Окно Flatten Mapping
Этим мы вызовем окно Flatten Mapping. В этом окне вы найдёте несколько свойств, однако я склонен оставлять их по умолчанию при использовании этого метода, поскольку они используются только в качестве отправной точки. Оставляем эти настройки как есть и кликаем ОК.

14. Результат работы Flatten Mapping
Как видим, наша разметка UV уже стала гораздо чище, чем была ранее, и теперь можно распознать отдельные области модели. Хотя она всё равно не идеальна, и нам надо расставить всё на свои месте немного получше для оптимизации пространства координат UV насколько возможно.

15. Команда Stitch Selected
Перед тем как мы продолжим работать с нашим развёрткой (unwrapping), давайте зададим горячую клавишу для команды Stich Selected (Сшить выделенное), которая способна очень упростить нам жизнь на протяжении этого процесса. Сверху в меню 3ds max кликните Customize > Customize User Interface.

Читайте также:  Инженерное меню китайских кнопочных телефонов

16. Назначение горячей клавиши в Customize User Interface
В окне Customize User Interface найдите в списке Stitch Selected (отмечено цифрой 1 на скриншоте). Теперь мы зададим для этой команды клавишу быстрого вызова. В поле Hotkey добавьте какую хотите клавишу быстрого вызова команды. Лично я выбрал букву S просто потому, что она имеет смысл (отмечено цифрой 2 на скриншоте). После добавления горячей клавиши, кликните кнопку Assign, чтобы сделать её служебной (отмечено цифрой 3 на скриншоте).

17. Проверка назначениея горячей клавиши в 3ds max
Чтобы убедиться, что горячая клавиша была назначена, снова отыщите в списке Stitch. Добавленная нами клавиша быстрого вызова должна отображаться напротив команды.

18. Зачем нужен Stitch
Так что же делает этот Stitch? Всё просто. Сперва выберите режим работы с рёбрами (edge) в модификаторе Unwrap. Теперь, если выделить любое ребро на UV карте, будут выделены синим цветом все другие связанные с ним рёбра на 3D модели. Для примера на изображении внизу выделенное красное ребро соединено с верхним синим ребром на нашей модели. Команда Stitch перераспределяет координаты UV так, чтобы эти два ребра корректно расположились на карте UV, а затем они вместе сшиваются.

19. Сшиваем рёбра при помощи Stitch
Начните выделять рёбра, выискивая рёбра, выделенные синим, в несвязанных сегментах UV. Когда найдёте такое, нажимайте Stitch. После того как проделаете эту операцию несколько раз, у вас должно выйти примерно так, как на скриншоте. На нём единственные выделенные рёбра уже присоединены к одному сегменту UV и не нуждаются в применении команды сшивания Stitch. Это значит, что можно переходить к следующей области.

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

21. Результат нашей работы
После того как полностью обойдёте весь объект и посшиваете все несвязанные участки воедино, у вас должно получиться, как на скриншоте внизу:

22. Осмотр 3D модели
Сейчас, глядя на нашу модель, можно сказать, что выглядит она значительно лучше, чем прежде. Однако всё равно есть некоторые растяжения, проходящие по координатам UV, но это легко исправить.

23. Инструменты масштабирования Edit UVW
На панели инструментов окна Edit UVW располагаются несколько инструментов масштабирования Scale. На скриншоте внизу цифрой 1 отмечен инструмент, с помощью которого объект можно масштабировать равномерно по осям, 2 – масштабирование объекта по горизонтали, и 3 – по вертикали.

24. Масштабирование UV сегментов
Пройдитесь по своей модели в поиске областей, в которых произошло растяжение, и, с помощью инструментов масштабирования, приведите в порядок связанные сегменты UV. На заметку: Выделяйте сегменты целиком, а не просто отдельные полигоны, потому что так вы лишь ещё больше исказите карту!

25. Правильные квадраты – хороший знак
Закончив масштабирование всех сегментов, шахматные клетки на карте Checkers должны стать максимально приближенными по пропорциям к правильным квадратам. Если вы видите правильные квадраты, то это очень хороший знак – у вас почти или совсем нет растяжений текстуры.

26. Финиш уже близко
Мы почти закончили! Единственное, что нам осталось сделать, – это упорядочить отдельные координаты UV, чтобы они заполнили собой пространство координат UV насколько возможно. Чем больше пространства они собой заполнят, сохраняя при этом квадратную форму клеток, тем более высокого разрешения текстуры мы сможем добиться. Впрочем, сейчас наши участки расположены повсюду.

27. Развёртка сложной 3D модели готова!
Вернёмся к работе и, с помощью упомянутых ранее инструментов для масштабирования, разместим все участки внутри границы UV, насколько это возможно.

В зависимости от ваших нужд, масштаб может быть больше или меньше, но внимательно отнеситесь к соблюдению размеров клеток карты Checker – они должны оставаться такими же. Этим вы обеспечите равномерное распределение качества/разрешения при добавлении текстуры на 3D модель. Если одна область будет забирать на себя намного больше пространства, выглядеть она будет гораздо резче на финальной визуализации, чем остальные сегменты.

Главное здесь – слаженность, поэтому прилагайте усилия по размещению сегментов на максимально близком друг к другу расстоянии без их наложения.

После того как вы расставите всё на свои места, можно приступать к текстурированию модели!

Надеюсь, что показанная техника создания развёрток была вам полезна, если возникли вопросы – комментируйте!

PS: также рекомендую почитать уроки по схожей теме: Создание UVW развёртки для текстурирования в 3ds max, Что такое развёртка Unwrap UVW и как с ней работать в 3ds max, Unwrapping в 3ds max: урок по созданию развёртки персонажа (монстра)

Начинающим косплеерам и любителям моделирования зачастую непонятно, каким образом получить развертку нужной 3D модели. В этой статье на простейшем примере я покажу, как создать модель в Google Sketchup, экспортировать ее в Pepakura Designer и получить ее развертку. Вы можете использовать любое доступное вам средство для создания 3D моделей, которое поддерживает экспорт в форматы: 3ds, obj, stl, kmz, dae и т.д.

Скачать Google Sketchup Make можно здесь: https://www.sketchup.com

Скачать Pepakura Designer можно здесь: https://tamasoft.co.jp

1. Открываем Google Sketchup.

Открываем Google Sketchup

2. Создаем нужную модель. Для простоты и наглядности я создал модель куба (рисуем квадрат с помощью инструмента «Прямоугольник» и вытягиваем его вверх инструментом «Вдавить-вытянуть).

3. Экспортируем модель куба в файл с расширением *.dae (Файл — Экспорт — 3D модель).

4. Открываем экспортированный ранее файл в программе Pepakura Designer (Файл — Открыть).

5. Чтобы получить развертку модели нужно нажать на кнопку «Unfold». Если настройки по умолчанию нас устраивают, нажимаем «Ok» и получаем развертку модели.

6. Сохраняем получившуюся развертку в формате *.pdo (Файл — Сохранить).

Вот и вся наука! Конечно, это самый простой пример, но он дает общее представление о процессе создания 3D моделей и их развертке.

Создаем 3D модель в Sketchup и делаем её развертку в Pepakura

admin

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

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