Как я делала 3D-мультфильм в Blender, чтоб понять, кем хочу работать

Большая статья про мультфильм длиной в минуту

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

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

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

Мне показалось, что это хорошая идея, — и так я вписалась в одиночный проект, который растянулся на 9 месяцев.

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

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

История про Куб, который идет стричься и превращается в Сферу

Вот ссылка на vimeo на случай, если Youtube не работает.

Первый этап: идея и сторибординг

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

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

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

Второй этап: стиль

Стиль нужно выбирать до продакшена.

Да, это очевидно, но я про это плохо подумала, поэтому сразу отправилась делать блокинг в блендер. Постфактум могу сказать, что не выбрать стиль сразу == точно ошибка, но, так как мой процесс был максимально нелинейным, меня это не застопорило.

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

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

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

Постепенно стиль вылепился: я бы сказала, что это смесь ретро, фоток Киото, техники Smeg, капелька Уэса Андерсона, капелька Кубрика, немножко Баухауса. Некоторые образцы для мебели в парикмахерской я брала с сайта 1stdibs, так как многое оттуда подходило под мое ощущение пойманного стиля.

Постепенно все рефы, которые мне нравились, соединились во что-то одно
Постепенно все рефы, которые мне нравились, соединились во что-то одно

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

Постер с ножницами, возможно, немного выбивается, но мне нравится отсылка к монограммам — это тоже про ретро
Постер с ножницами, возможно, немного выбивается, но мне нравится отсылка к монограммам — это тоже про ретро

Третий этап: продакшен

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

  1. Сторибординг
  2. Поиск стиля, рефборды (то, что я пропустила)
  3. Блокинг, расстановка камер
  4. Персонаж и окружение (моделинг)
  5. Риг персонажа
  6. Блокинг анимации
  7. Анимация
  8. Свет, материалы
  9. Рендер
  10. Звук

Где предпродакшен = 1–2, а продакшен = 3–10. Куда-то еще впихивается set dressing (не уверена, как это правильно по-русски), я его размазала между 4 и 7 пунктами. Этап 10 я собиралась делегировать, а 5, 6 и 7 мне предстояло освоить, поэтому для начала я разбила время, которое могла тратить на мультик, следующим образом:

  • 50% я делала то, что знаю (моделила)
  • 50% я изучала то, что надо изучить (риг, анимацию, немного композицию)

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

Блокинг, расстановка камер, композиция

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

Дополнительный кадр, которого не было на сториборде. Я рассуждала так: раз машина двигается, глаз гарантированно окажется на месте, где было движение — и так можно быть уверенным, что персонаж сразу попадет в фокус общего плана.
Дополнительный кадр, которого не было на сториборде. Я рассуждала так: раз машина двигается, глаз гарантированно окажется на месте, где было движение — и так можно быть уверенным, что персонаж сразу попадет в фокус общего плана.

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

Моделинг: окружение и set dressing

После блокинга я прикинула, какие нужны объекты в ассеты, выписала их чек-листом и поочередно моделила. Моделить я научилась еще в 2022 году на первых двух блоках в школе BBC и с тех пор делаю это довольно бегло. Иногда моделить было жутко утомительно, поэтому я делала перерывы. Не знаю, что тут ещё рассказывать. Может быть, просто покажу модельки?

Ассет для парикмахерской. Кажется, что предметов мало, но когда моделила — мне так не казалось
Ассет для парикмахерской. Кажется, что предметов мало, но когда моделила — мне так не казалось
Уличный ассет. Тоже выглядит довольно скудно, но моделей хватило
Уличный ассет. Тоже выглядит довольно скудно, но моделей хватило
Ассет с домиками — мой любимый. Очень кайфовала, когда поймала скругленную форму здания, про себя называла этот дом “эирподсами”. Еще тут есть второплановые деревья, которые я скачала, — единственные модели, которые не сделала сама
Ассет с домиками — мой любимый. Очень кайфовала, когда поймала скругленную форму здания, про себя называла этот дом “эирподсами”. Еще тут есть второплановые деревья, которые я скачала, — единственные модели, которые не сделала сама

В мультфильме 2 локации: улица и парикмахерская. Я моделила их по очереди, поэтому расставляла объекты в локациях тоже по очереди.

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

Вид на парикмахерскую
Вид на парикмахерскую
Готовый дворик рядом с парикмахерской
Готовый дворик рядом с парикмахерской

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

Мне очень нравится этот прием
Мне очень нравится этот прием

Это идею я давно подсмотрела в статье про ведущие линии — очень ее рекомендую.

Персонаж

Финальная версия персонажа
Финальная версия персонажа

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

Слева — почти найденная форма кроссовок, справа — то, как кроссовки выглядят в финальной анимации
Слева — почти найденная форма кроссовок, справа — то, как кроссовки выглядят в финальной анимации

Риг

Риг оказался для меня самой большой болью. Когда я столкнулась с ним в первый раз, я настолько сильно ничего не понимала, что думала, что на нем мое увлечение 3D-графикой и работа над мультфильмом закончится — ну либо риг станет моим потолком в 3D и дальше него я не пойду.

"Я — элитарное знание для избранных"
Риг

К счастью, проблема оказалась не в риге, а в не говорящих со мной объяснениях. В какой-то момент я нашла рекомендацию на бесплатный курс Humane Rigging, и это меня возродило. Очень его советую. Курс отснят больше 10 лет назад, но в смысле логики в блендере вообще ничего не поменялось, поэтому он все еще актуальный. Для того, чтобы гарантированно разобраться, я стала делать конспекты.

Разобравшись, я даже зауважала риг
Разобравшись, я даже зауважала риг

Когда плюс-минус стало понятно, как что работает, я переключилась на риг своего персонажа. Я решила сделать его своими руками, без аддонов, чтобы закрепить знания. Персонаж простой, риг тоже, в итоге получилось сваять довольно быстро. Из сложностей разве что было непросто добиться приятного сгибания конечностей, и в итоге я остановилась на решении c bending bones.

Из аддонов тут только custom shapes

Анимация: блокинг, тайминг, полишинг

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

Когда я анализирую свои решения, то самой близкой аналогией мне кажется жанр over complicated life hacks, где для простых задач придумывают очень сложные решения (типа сделать расческу из линейки и пластиковых вилок вместо того, чтобы купить новую). Примерно так же я поступала, когда анимировала. Где я нагородила себе сложности — в самом начале:

  1. Я посмотрела небольшую часть курса Alive! (про мячик и половину про белку) и сразу стала анимировать. В смысле информации курс топ, но в смысле подачи — прям сложно, надо быть очень мотивированным, чтоб смотреть. У автора сильный французский акцент и повышенное внимание к деталям, новичков это может утомлять. Я пока так и не досмотрела, и, хотя испытываю большую благодарность к курсу за полученные знания, рекомендую с осторожностью.
  2. Потом я посмотрела примерно 0,7 от бесплатного туториала по NLA Editor и сразу стала его использовать.

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

Полный бардак в экшенах: куча дубликатов и ни намека на правила наименования. Больше я так не буду
Полный бардак в экшенах: куча дубликатов и ни намека на правила наименования. Больше я так не буду

Дополнительной проблемой стало то, что, хотя в курсе Alive! разбирается анимация не только белки, я прервала просмотр на белке. Общие правила в курсе были применимы к персонажу, но мне хотелось более близких обучающих примеров.

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

В смысле последовательности у меня получилось поработать нормально. Сначала я брала сцену и делала блокинг анимации. Потом, собрав блокинг нескольких сцен, я сводила их вместе в видеоредакторе и оценивала, насколько нормально работает общий тайминг. После этого я переходила к полировке анимации. Работала поочередно: сначала первая уличная сцена, потом сцена в парикмахерской, потом снова улица.

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

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

Покраска и работа с фокусом

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

Кадры финальной анимации: готовое движение, готовый set dressing и абсолютно никакой мир
Кадры финальной анимации: готовое движение, готовый set dressing и абсолютно никакой мир

Я знала, что в крупных продакшенах есть колорборды, которые делают на предпродакшене, — как сториборды, только прорисованные верхнеуровнево для главных сцен.

Например, я видела такой колорборд в книге The Art of Incredibles. Но тогда я подумала, что это какая-то роскошь, которой занимаются преисполненные художники в больших продакшенах
Например, я видела такой колорборд в книге The Art of Incredibles. Но тогда я подумала, что это какая-то роскошь, которой занимаются преисполненные художники в больших продакшенах

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

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

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

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

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

На варианте слева создается явный перевес, кадр как будто заваливается на бок. Справа эта проблема решена
На варианте слева создается явный перевес, кадр как будто заваливается на бок. Справа эта проблема решена

Таких моментов было много и в основном они касались мелочей.

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

Как я делала 3D-мультфильм в Blender, чтоб понять, кем хочу работать

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

Финальная покраска. Выглядит довольно цельно
Финальная покраска. Выглядит довольно цельно

Рендер

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

Если вкратце, то я не умею нормально рендерить, вернее, у меня есть подозрение, что я делаю это поразительно коряво. Что я делала неправильно в процессе рендера, согласно мнению опытных людей:

  1. Я не рендерила слоями (отдельно персонажа, отдельно окружение), а рендерила сразу картинку целиком.
  2. Почти для каждой новой камеры мне нужно было немного менять условия в сцене, включать/выключать какие-то коллекции. Например, добавить или убрать источник света, переставить немного стену и тому подобное, стандартная история. Но вместо того, чтобы создавать отдельные view layers для каждой новой камеры, — как я понимаю, это классический способ, — я писала себе инструкции на каждый кадр и вручную включала и отключала коллекции. Каждый раз.
Инструкции на каждый кадр: что из коллекций включить, а что выключить. Сверху написано: везде проверять моргание. Это легаси, которое тянулось с этапа ошибок в экшенах. Я коряво настроила трек, поэтому везде нужно было проверять, работает ли моргание
Инструкции на каждый кадр: что из коллекций включить, а что выключить. Сверху написано: везде проверять моргание. Это легаси, которое тянулось с этапа ошибок в экшенах. Я коряво настроила трек, поэтому везде нужно было проверять, работает ли моргание

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

В результате получилось такое собрание:

Вот так собраны финальные рендеры. Да, я работаю на mac os, m1 pro не бегает, но нормально справляется
Вот так собраны финальные рендеры. Да, я работаю на mac os, m1 pro не бегает, но нормально справляется

Звук (и как персонаж стал итальянцем)

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

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

Когда я показала мультик папе, он сначала решил, что эта тема из мультфильма Wallace & Gromit, и я тоже сразу заметила огромное сходство. В детстве я смотрела этот мультик очень много раз.

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

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

Слева: панорама улицы, которая навела меня на мысли про сходство окружения с Италией, справа — рендер улицы, который был на тот момент уже готов
Слева: панорама улицы, которая навела меня на мысли про сходство окружения с Италией, справа — рендер улицы, который был на тот момент уже готов

Выводы

В этой части я бы хотела ответить на вопрос, который поставила в самом начале, —

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

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

Однако я подтвердила свои подозрения про то, какие из производственных этапов мне нравятся меньше, — это риг и рендер.

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

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

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

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

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

В результате всего этого опыта я поняла, что, на самом деле, меня больше всего интересует не производство, а история. Ровно то, к чему я за эти 9 месяцев не прикоснулась вообще. Можно ли было прийти к этому выводу другим путем? Понятия не имею. Но я точно знаю, что это довольно популярный трек: сначала поработать в производстве, чтобы потом перейти к истории. Так что я не вижу противоречий, не расстраиваюсь и пока продолжу развиваться в производстве.

Еще

Если вы дочитали, то спасибо огромное. Тут я просто хочу оставить свои соцсети:

1. Мой телеграм-канал про 3d >>>

Там я в свободной форме делаю посты про проекты, над которыми сейчас работаю, делюсь какими-то находочками. Конкретно сейчас делаю комнату Мей из “Я краснею”. Буду очень рада людям, которые тоже интересуются тридэ и блендером!

2. Behance >>>

3. И мой инстаграм — @marfa.out

я и он
я и он

217217
2020
55
22
11
11
64 комментария

Ах****ть, что же это? Тематическая статья на сайте? Не щитпост?
Браво, и очень круто. Сам занимаюсь разработкой и приходил изначально на сайт за такими статьями.
Хотелось бы, чтобы весь сайт наполнял именно такими статьями и никакими больше. (разработка, 3д и прочие, а не я покакал, киньте донат)

36
Ответить

Хахах) очень приятный коммент! Спасибо

3
Ответить

Очень клевая история и описание процесса! :) Особенно зацепила идея, как вычленить ненавистные процессы в сфере, которая нравится.

Ну и мультик милый.

5
Ответить

Спасибо 💔

1
Ответить

Комментарий недоступен

5
Ответить

I heart Blender

1
Ответить

В этот список с оговоркой я могу добавить анимацию — она, в отличие от рига и рендера, мне сильно нравится и затягивает, но, на мой взгляд, требует огромного мастерства. Мастерство — это всегда крупная инвестиция во время (а еще это ставка), и конкретно сейчас я не могу себе это позволить

В результате всего этого опыта я поняла, что, на самом деле, меня больше всего интересует не производство, а история. Ровно то, к чему я за эти 9 месяцев не прикоснулась вообще.

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

4
Ответить