Наскільки "складніше" 3D, ніж 2D з точки зору:
- Кількість / складність коду
- Рівень необхідних математичних навичок
- Час, який займається створенням мистецьких цінностей
Оригінальна назва: Наскільки важко розвивати 3D-ігри проти 2D?
Наскільки "складніше" 3D, ніж 2D з точки зору:
Оригінальна назва: Наскільки важко розвивати 3D-ігри проти 2D?
Відповіді:
3D - на порядок складніше, ніж 2D:
Програмування:
Мистецтво:
Дизайн:
Багато складніше. Якщо вам не зручно робити 2D гру, вам дійсно не сподобається те, що потрібно зробити 3D-гру.
Хороша новина: 99% часу вам це дуже не потрібно. Придумайте будь-яку 3D-гру, яку ви можете. Візьміть камеру, зафіксуйте її на стелі, дивлячись вниз, щоб ви тепер дивилися на 2D площину. Дум стає Гонтлетом. Civ IV стає Civ I. Metal Gear Solid стає оригінальним Metal Gear. Жодна з цих ігор не є «поганою» лише тому, що вони 2D; вони ідеально відтворюються і, як правило, мають однаковий ігровий процес.
В основному, 3D буде створювати більше труднощів, ніж спрощення. Але мені просто хочеться додати кілька речей, які насправді можуть бути простішими в 3D-грі:
Це високо суб'єктивне питання, оскільки відповідь залежить від особистих уподобань / досвіду / знань / інтелекту.
Я спробую відповісти нейтрально, але оскільки я лише програміст, а не художник, я можу лише гіпотезувати за останню точку.
Складність коду не повинна бути такою різною, за винятком математики та, можливо, рендерінгу / фізики. Логіка гри не так сильно відрізняється, якщо ви приймаєте здоровий рівень абстракції (не надто багато - ви намагаєтеся зробити гру не двигуном, принаймні, я думаю, з вашого питання.) Очевидно, це набагато простіше обчислити рух у 2D, оскільки у вас обмежена перспектива. Фізику ШЛЯХО складніше, якщо мати справу в трьох осях. Крім того, завантажувати спрайт із растрової карти набагато простіше, ніж завантажувати 3D-модель (і, можливо, текстурувати).
Математика є складнішою для 3D (насправді без моніторів - кватерніони, вектори, матриці. 'Nuff сказати)
Щодо мистецтва, я думаю, що для 3D теж має бути складніше, оскільки вам потрібно створити мистецтво, яке добре виглядає з усіх можливих кутів огляду (або, принаймні, з широкого діапазону), і зазвичай ви хочете також текстурувати речі. Анімація сітки - це не пікнік, щоб зробити її реалістичною, і набути текстури не можна.
Інша річ, яку слід врахувати ... при 3D-грі ви, мабуть, хочете розглянути можливість використання наявного двигуна і сконцентруватися на тому, щоб гра не була двигуном. Це може призвести до скорочення часу і труднощів у 3D-грі (як чудово визначить чудовий).
Набагато простіше побудувати 2D ігрову гру. Але очевидно, що ви можете (і слід врахувати), використовуючи бібліотеки спрайт, звук, портативність. Немає сенсу винаходити колесо, крім освітніх цілей.
Здається, очевидно - але я вважав, що це варто сказати.
Дозвольте запропонувати один цікавий розгляд для мобільних пристроїв, де продуктивність 2D насправді може відставати від низькополімерних 3D-моделей:
1) Коефіцієнт заповнення може спричинити досить багато проблем із роботою при роботі з багатьма спрайтами на екрані в даний момент часу.
2) Вимоги до текстурної пам'яті для повноцінно розробленої 2D гри насправді набагато вищі, якщо ви використовуєте кадрову анімацію. Кожен кадр кожного символу лінійно викреслює ваш загальний бюджет текстури. Це означає, що якщо ви використовуєте просту анімацію для фліпбука, у вас фактично є більш обмежений бюджет анімації, ніж у 3D-анімації на основі скелета.
Інструментарій на зразок хребта допомагає трохи вирівняти це ігрове поле, створивши 2d деформації текстури.
Отже, враховуючи це та простоту доступу Unity та UDK, які обидва витягують велику складність розвитку ігор, що існували роки тому для 3D, відповідь не настільки прямо.
Це залежить від розробника ігор. Час, що займає багато часу, складає ігрові активи. Якщо ви вважаєте, що вам легше зробити ці активи за допомогою illustrator та Photoshop, тоді 2D вам простіше, але якщо ви знаєте 3D-моделювання, напевно, ви погоджуєтесь зі мною, що 3D набагато простіше, ніж 2D.
Що стосується анімації, то, безумовно, 3D легше, швидше і простіше в управлінні.
Наприклад, якщо в 3D ви можете зробити всю анімацію для персонажа за кілька годин на одній сцені, в 2d ви повинні намалювати персонажа з нуля для будь-якої діяльності, яку він, як передбачається, повинен робити і зберегти багато файлів, потрібно 2 дні в 2D проти годин у 3D.
Крім того, якщо ви щось зміните, вам доведеться переробити все в 2D, але вам не доведеться змінювати все, наприклад, якщо ви вирішили, що ваш персонаж не повинен мати капелюха. Вам не доведеться переробляти всю анімацію, яку ви просто видалили капелюх у 3D.
Якщо у вас є гуманоїдні персонажі, є тисячі безкоштовних мультиплікаційних анімацій. Більшу частину часу вам не потрібно робити анімацію для вашої гри.
Щодо складності та програмування різниці немає.
Але вам слід добре знати 3D, інакше ви можете опинитися в ігровому двигуні, що ваша анімація відрізняється від програми 3D або ваша голова персонажа обертається в зворотному напрямку, і ви не знаєте, як вирішити проблему та деякі інші збої.
Крім того, ви повинні ознайомитись з моделюванням ігор із низьким рівнем полірування та способом текстурування для гри, чим вона відрізняється від моделювання та текстурування для анімації.
До речі, всупереч поширеній думці, 3D менш вимогливі до апаратних засобів для мобільних пристроїв.