Насколько «сложнее» 3D, чем 2D с точки зрения:
- Количество / сложность кода
- Требуется уровень математических навыков
- Время, затрачиваемое на создание художественных активов
Оригинальное название: Насколько сложна разработка 3D-игр по сравнению с 2D?
Насколько «сложнее» 3D, чем 2D с точки зрения:
Оригинальное название: Насколько сложна разработка 3D-игр по сравнению с 2D?
Ответы:
3D на порядок сложнее, чем 2D:
Программирование:
Искусство:
Дизайн:
Много сложнее. Если вам неудобно делать 2D-игру, вам ДЕЙСТВИТЕЛЬНО не понравится то, что нужно для создания 3D-игры.
Хорошая новость: 99% времени вам это не нужно. Подумайте о любой трехмерной игре, которую вы можете. Возьмите камеру, закрепите ее на потолке, глядя вниз, чтобы вы теперь смотрели на 2D-плоскость. Гибель становится Рукавицей. Civ IV становится Civ I. Metal Gear Solid становится оригинальным Metal Gear. Ни одна из этих игр не является «плохой» только потому, что они 2D; они отлично играбельны и обычно имеют почти одинаковый игровой процесс.
В целом, 3D создаст больше трудностей, чем упрощений. Но мне просто хочется добавить несколько вещей, которые на самом деле могут быть проще в 3D-игре:
Это очень субъективный вопрос, поскольку ответ зависит от личных предпочтений / опыта / знаний / интеллекта.
Я постараюсь ответить нейтрально, но так как я всего лишь программист, а не художник, я могу только предположить последний пункт.
Сложность кода не должна быть такой большой, за исключением математики и, возможно, рендеринга / физики. Логика игры не так уж отличается, если вы берете здоровый уровень абстракции (не слишком сильно - вы пытаетесь сделать игру не движком, по крайней мере, я предполагаю из вашего вопроса.) Очевидно, что намного легче вычислить движение в 2D, потому что у вас ограниченная перспектива. Физика намного сложнее, когда дело касается трех осей. Кроме того, загрузка Sprite из растрового изображения намного проще, чем загрузка 3D-модели (и, возможно, текстурирование).
Математика сложнее для 3D (на самом деле нет ничего сложного - кватернионы, векторы, матрицы. 'Нуфф сказал)
Что касается искусства, я думаю, что это должно быть более сложным и для 3D, так как вам нужно создавать искусство, которое выглядит хорошо при любом возможном угле обзора (или, по крайней мере, в широком диапазоне), и вы обычно тоже хотите текстурировать вещи. Анимация меша - это не пикник, чтобы стать реалистичным, а получить текстуру для игры - тоже нет.
Еще одна вещь, которую нужно учитывать ... в 3D-игре вы, вероятно, захотите использовать уже существующий движок и сосредоточиться на создании игры, а не движка. Это может как-то сократить время и сложность, затрачиваемую в 3D-игре (что отлично видно у muntiful).
Гораздо проще создать 2D игру. Но очевидно, что вы можете (и должны учитывать) использовать библиотеки спрайтов, звуков и переносимости. Нет смысла изобретать велосипед, кроме как в образовательных целях.
Кажется очевидным - но я думал, что это стоит сказать.
Позвольте мне предложить одно интересное соображение для мобильных устройств, где производительность 2D может отстать от низкополигональных 3d моделей:
1) Частота заполнения может привести к небольшим проблемам с производительностью при работе со многими спрайтами на экране в данный момент времени.
2) Требования к текстурной памяти для полностью проработанной 2D-игры на самом деле намного выше, если вы используете рамочную анимацию. Каждый кадр персонажа линейно уничтожает ваш общий бюджет текстуры. Это означает, что если вы используете простую анимацию флипбука, у вас на самом деле более ограниченный бюджет анимации, чем при использовании 3D-анимации на основе скелета.
Наборы инструментов, такие как Spine, помогают немного выровнять игровое поле, создавая двумерные деформации текстуры.
Итак, учитывая это и простоту доступа Unity и UDK, которые в значительной степени извлекают сложность разработки игр, существовавшую несколько лет назад для 3D, ответ не так прост.
Это зависит от разработчика игры. Часть времени занимает создание игровых активов. Если вы чувствуете, что вам легче создавать эти ресурсы с помощью иллюстратора и Photoshop, то 2D проще для вас, но если вы знаете 3D-моделирование, вы, вероятно, согласитесь со мной, что 3D намного проще, чем 2D.
Что касается анимации, безусловно, 3D проще, быстрее и проще в управлении.
Например, если в 3D вы можете сделать все анимации для персонажа за несколько часов в одной сцене, в 2D вы должны нарисовать персонажа с нуля для любого действия, которое он должен выполнять, и сохранить множество файлов, в 2D это займет несколько дней. против часов в 3D.
Также, если вы что-то измените, вам придется переделывать все это в 2D, но вам не нужно менять все, например, если вы решите, что у вашего персонажа не должно быть шляпы. Вам не нужно переделывать всю анимацию, просто удалите шляпу в 3D.
Если у вас есть персонажи-гуманоиды, есть тысячи бесплатных анимаций mo-cap. Большую часть времени вам не нужно делать анимацию для вашей игры.
Относительно сложности и программирования нет никакой разницы.
Но вы должны хорошо знать 3D, иначе вы можете оказаться в игровом движке, ваша анимация отличается от вашего 3D-приложения, или ваша голова персонажа вращается в обратном направлении, и вы не знаете, как решить проблему, и некоторые другие глюки.
Также вы должны быть знакомы с низкополигональным моделированием для игры и с тем, как делать текстурирование для игры, оно отличается от моделирования и текстурирования для анимации.
Между прочим, вопреки распространенному мнению, 3D менее требовательна к оборудованию для мобильных устройств.