У розділі кредитів ігор, в які я граю, є назви графічних програмістів . Якщо вони використовували ігровий движок, навіщо їм графічний програміст ? Хіба ігровий движок не виконує свою роботу?
У розділі кредитів ігор, в які я граю, є назви графічних програмістів . Якщо вони використовували ігровий движок, навіщо їм графічний програміст ? Хіба ігровий движок не виконує свою роботу?
Відповіді:
Навіть за допомогою двигуна пропонувати щось на екрані так, як вам хочеться, це не завжди банально. Буде багато випадків, коли для правильного графічного відображення потрібен хтось із знаннями програмування. Ці люди можуть називатися графічними програмістами в кредитах (графічний програміст не є сертифікованим або захищеним заголовком, і різниця між різними заголовками може залежати в залежності від компанії).
Наведемо конкретний приклад. Нам потрібен анімований обертовий круг:
Деякі з наших варіантів:
1 Покладіть коло на рекламний щит, напишіть сценарій, щоб обертати рекламний щит.
2 Використовуйте як джерело анімований gif.
3 Робіть все в шейдері, що дозволяє 2 різних варіанти:
У 1. комусь потрібно написати той сценарій, який є якимось завданням програмування, що має відношення до графіки. Для 2. нам не потрібен програміст, якщо двигун - як і більшість - не підтримує імпорт анімованих gif-файлів, і в цьому випадку комусь потрібно програмувати цю частину. У 3. хтось повинен запрограмувати шейдер, який може бути художником чи програмістом.
EDIT для вирішення проблем з низовими потоками:
Очевидно, що ефект є таким, що ефект занадто простий і тому не реалізується «справжнім» графічним програмістом. Я насправді не знаю, за ким би це було реалізовано, якщо в команді є спеціальний графічний програміст, і я іноді реалізую такі ефекти обертання в шейдерах - хоча зазвичай обертання є лише частиною більшого цілого, як у цей приклад .
Ігрові двигуни схожі на кухні, а розробники (тобто програмісти) - як кухарі.
Ігрові двигуни пропонують можливості, в той час як програмісти використовують ці можливості для потреб гри.
Таким чином, ігровим компаніям потрібні графічні програмісти для адаптації графічних можливостей двигуна до потреб гри.
Якби ігровий движок мав керувати всім, не підробляючи, всі ігри, вироблені цим двигуном, виглядали б так, як вони виходять із однієї форми: художники можуть створювати різні 3D-моделі та 2D-мистецтво, пристосоване до бачення дизайнерів, але Налаштування в грі під цю графіку буде обмежено тим, що пропонує двигун поза коробкою.
Зауважте, що, хоча вони дозволяють вам змінити використовуване мистецтво, деякі ігрові двигуни не пропонують можливості пристосувати інші графічні аспекти до потреб гри. Я думаю, що RPG Maker був таким: він дозволив вам змінити мистецтво, але ви були обмежені з точки зору того, як ви могли налаштувати свою гру, щоб надати їй дуже характерний штрих. Це, можливо, змінилося за останні роки, оскільки я певний час не торкався цього програмного забезпечення.
Конкретне значення більшості заголовків в ігровій індустрії значно варіюється від студії до студії, тому майте це на увазі. Те, що являє собою "графічне програмування" в одній студії, може насправді означати створення шейдерів або виправлення матеріалів, де в іншій студії це може означати виконання відносно низького рівня оптимізації роботи поблизу базового графічного API та ін.
Однак, у більших студіях досить рідко брати деякі програмні засоби для двигунів і використовувати його, не змінюючи жодних модифікацій. Більшу частину часу конкретні аспекти двигуна потрібно буде виправити, оскільки він не зовсім відповідає вимогам, або тому, що в цій версії є помилка, і компанія ще не може оновити до нової версії, яка може виправити помилку, тощо просвітники.
Графіка є однією з таких областей, де люди, як правило, роблять неабиякі настройки. Це може не включати переписування використання Direct3D або подібного в двигуні, але все ж може включати роботу з налаштування або оптимізацію шейдерів, вдосконалення керування графічними ресурсами для кращого врахування профілів використання конкретної гри, додавання нових функцій чи параметрів візуалізації, впорядкування конвеєр графічних активів краще відповідає робочому процесу студії та ін.
Крім того, є багато випадків, коли студія захоче взяти інтеграцію додаткових програм, пов'язаних з графікою. Є пакети проміжного програмного забезпечення, такі як Granite, Enlighten та TrueSky, які пропонують різні функції, пов'язані з графікою (потокове передача текстур, глобальне освітлення, моделювання неба та візуалізація тощо). Усі ці пакети проміжного програмного забезпечення інтегруються з Unreal, але для їх інтеграції потрібна робота. Деякі з них можуть конфліктувати між собою або потребувати певних налаштувань, щоб добре працювати разом, оскільки всі вони розроблені різними компаніями. Графічні програмісти, ймовірно, будуть задіяні і в такій роботі.
Ігри без графічного програміста ви можете доставляти досить просто зараз, адже всі двигуни. Зазвичай вам потрібен графічний програміст
оптимізація
Графічний програміст знає та / або дізнається, як працює певний двигун, і зможе направляти виконавців, модифікувати матеріали чи зливати моделі або використовувати інші методи тощо, щоб отримати кращі показники роботи двигуна.
розуміння та повчання
Художник хоче досягти певного ефекту. Графічний програміст, який розуміє, як працює двигун, може пояснити, як досягти цього ефекту.
налаштування та ефекти
Певні ефекти можуть вимагати програмування. Значна частина візуалізації Bound є звичайною.
Це нічим не відрізняється від фільмів. При 100-ти програмістах, великому бюджеті та поганому написанні ви можете отримати Star Wars: The Phantom Menace. Без програмістів і гарного написання ви можете отримати буквар. Програмісти (або інші технічні люди) можуть дозволити нові речі. Програмісти привезли Crek-грязь у Shrek, CG-волосся до Monsters Inc, Time of Bullet - The Matrix і т.д.
Це ж більш-менш вірно для ігор зараз. Графічні програмісти можуть дозволити рідини в Pixel Junk Shooter або всю динамічну геометрію Bound, але багато ігор можна зробити за допомогою стандартних технологій двигуна і без графічних програмістів.
Багато разів ігрові двигуни не виконували б 100% вимог та специфікацій ігрового проекту. Особливо це стосується потрійних заголовків A, які завжди розсувають межі ігрової технології. Якщо частина графічної частини ігрового двигуна не відповідає тому, що художники та дизайнери хочуть досягти нестандартно, вони можуть найняти графічного програміста / фахівця, який допоможе їм зрозуміти, чи можливо їх очікування здійснено, і якщо є, як цього досягти. Це може включати налаштування шейдерів / художніх активів або переробку частин візуалізації або навіть використання проміжного програмного забезпечення. Або поєднання їх.
Більшість стандартних методів буде впроваджена в будь-якому пристойному комерційному двигуні, наприклад FXAA, освітленні, затіненні кераміки, звичайному картографуванні тощо, але не у всіх.
У випадку, коли дизайнер ігор вказав, що певний ефект має відбутися, ви або будуєте його з того, що вже є, або кодуєте новий шейдер, або модифікуєте графічний движок, щоб це дозволило. В обох сценаріях потрібен графічний програміст.
Визначте двигун, а потім визначте графічний движок. Якщо ви використовуєте існуючий движок для гри, то це не те саме, що писати гру з нуля в коді. Якщо за допомогою коду можна визначити, що таке графіка чи двигун, не має значення, як ви його називаєте, якщо ваш код сильний. Створення ігор у зазначеному двигуні, його межі та / або його сильні моменти базуються виключно на здатності програміста. Використовуючи щось на кшталт Unity, навіть Unreal або будь-який інший професійний механізм, не визначає ваші здібності, ігрові двигуни - це лише абстракції, що кодують, наприклад, чистий C ++ - це не так. Наприклад, ви можете найняти програмістів в пекло навіть художників, але вас обмежують бачення чи обмеження двигуна. Тож краще кодувати з нуля, а потім використовувати щось, що вже існує. Проблема в тому, що ти виграв ' не можу знайти відповіді в Інтернеті, як Stackexchange. Я сумніваюся, що багато хто навіть потрудився кодувати гру, не кажучи вже про закінчений 2d проект. Я просто трохи зволікаю, це означає, що не так багато відповідей, які подають себе. Найкращий спосіб - це навчання та практика!