3D Battle CGEvent 2017. Разбор полетов (часть 1)

Как всегда, в этом году состоялся очередной баттл среди пользователей 3D-пакетов, который мы устраиваем на CGEvent. 3D Battle — это регулярное мероприятие, в котором участники соревнования выполняют одно и то же задание в своем любимом 3D-пакете. В этом году конкурсанты бились под знаменами 3DS Max, Maya, Blender.

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

В общем, дальше вас ждет анализ результатов и разбор ошибок.

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

Референсное изображение

В качестве задания был предложено референсное изображение ключа, которое было заранее опубликовано на сайте CGEVENT.
Задание на 3D Battle

Изначальное изображение было дано в произвольном виде, чтобы у участников была возможность потренироваться, но сохранялась небольшая степень неопределенности. При этом во время самого баттла участникам был предложен также выровненный вариант, поскольку в работе это намного удобнее:
Выровненное задание на 3D Battle

Формулировка задания

Смоделировать форму ключа по референсу. Полигонаж не ограничен (high-poly). Конечная модель ключа должна представлять собой только один конечный меш-объект. Никаких групп, и прочих иерархических сущностей.

Длина ключа должна смотреть в направлении оси +X. Центр локальной системы координат — в центре кольца под большой палец.

Меш может быть составным. Т.е. необязательно выполнять булевское объединение, можно просто выполнить Attach / Combine / Join к частям ключа, если таковые были смоделированы отдельно.

Меш должен находиться в положении X=0 Y=0 Z=0
Углы поворотов по всем осям также 0.
Масштаб единичный.
(Т.е. модель должна быть готова к экспорту, например, в игровые движки)

ВНИМАНИЕ! СЦЕНУ ВИЗУАЛИЗИРОВАТЬ НЕ НУЖНО.
Качество шейдеров (материалов) не оценивается.
Сдается только сцена модели и скриншот вьюпорта.

Полные правила читаем на сайте CGEvent

В чем прикол задания

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

  • Задание представляет собой законченную работу
  • Оно не должно занимать у среднего участника слишком много времени (в среднем предполагается 10-15 минут, верхний лимит 30 минут, иначе не все желающие смогут принять участие)
  • Желательно, чтобы существовало несколько путей решения задачи

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

Победитель был один (Ярослав Полянцев, Wargaming). Он разорвал всех остальных участников и временем и качеством.
Работа победителя на 3D Battle

Критерии оценки

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

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

1. Что сказал бы заказчик?

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

В данном случае, что является главным в высоко-полигональной модели? — Форма, Соответствие референсу! По этому критерию многие работы имели недочеты.

2. Качество модели

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

Типовые ошибки участников

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

1. Неумение реально оценивать время выполнения

Шапкозакидательские настроения царили среди участников. Тезисы типа «что тут делать», «тут работы на 2 минуты», «а что был кто-то кто меньше чем за минуту всё сделал?» изрекал каждый второй. Тем забавнее было смотреть на реакцию, когда ты сообщал человеку его время в районе 10 минут (на самом деле это хорошее время, свидетельствующее о неплохой подготовке, выше среднего).

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

2. Игнорирование референсов

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

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

Участникам были предложены два референса: исходный (криво расположенный) и повернутый (выровненный по оси X). Некоторые не удосуживались взять повернутый референс а шпарили по кривому (при том что обе картинки лежали в одной папке).

3. Отсутствие плана моделирования

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

Приведу конкретный пример. Многие моделировали кольцо с помощью симметрии. В 3ds Max если ты просто применяешь модификатор симметрии (Symmetry), то он проходит через центр локальной системы координат и часто мимо нужной линии, а если заранее выделишь вертекс на модели и применишь модификатор, то симметрия пройдет точно через выделенную вершину. Продуманное решение, позволяющее сэкономить время. Из таких микровыигрышей складывается победа.

4. Отсутствие тренировки

За редким исключением большинство участников моделировали задание впервые на самом баттле. Тренировки — для слабаков?
Причем абсолютно все действительно быстрые участники после выступления называли главным советом другим — потренироваться дома. Да кто их слушает…

Без тренировки дома невозможно ПОБЕДИТЬ в баттле!

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

5. Игнорирование времени подготовки

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

Я видел, как участники тратили почти минуту на сохранение сцены и выполнение скриншота.

6. Незнание правил

Если вы хотите победить, то нужно обязательно подробно изучить правила.
Например, в задании на баттл были мелкие требования типа расположения объекта строго в нуле (причем кольцом), с нулевыми поворотами и стандартными масштабами. Участники настолько лихо забили на эти требования, что чуть ли не единственным, кто это учел в работе был победитель. В любой спорной ситуации жюри использовало бы несоответствие требованиям как повод для вынесения штрафа. Представьте, огрести 20 секунд штрафа за то, что забыл объединить модель в единый меш, или что не «зафризил» объект на финише (Freeze Transformations — название операции в Maya, которой пользуются если нужно установить трансформации объекта в стандартные, отсюда странный термин «зафризил»).

Продолжение следует…

Что-то длинноват получился пост. Сначала я собирался разобрать ошибки на примерах работ баттла, но пока писал, получилась целая инструкция. Поэтому придется статистику и ошибки вынести в отдельную публикацию. Читайте 3D Battle. Разбор полетов (часть 2)…

Благодарность участникам

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

Александр Миловский, 3D Master
Организатор и член жюри 3D Battle
Куратор секции Opensource CGEvent

образец сертификата Autodesk студии 3D Master
Сертификат Autodesk выдается
по окончании авторизованных
курсов Autodesk. Подробнее…

Искусственный
интеллект