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

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

55 голосов | спросил Shuvo Sarker 4 J0000006Europe/Moscow 2017, 19:08:20

7 ответов


94

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

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

 введите описание изображения здесь>> </a> </p>

<p> Некоторые из наших опций: </p>

<p> 1 Поместите круг на рекламный щит, напишите скрипт, чтобы повернуть рекламный щит. </p>

<p> 2 Используйте анимированный gif как источник. </p>

<p> 3 Проделайте все это в шейдере, который позволяет использовать два разных варианта: </p>

<ul>
<li> Поверните рекламный щит в вершинном шейдере </li>
<li> Нарисуйте вращающийся круг в шейдере фрагмента. </li>
</ul>
<p> В 1. кому-то нужно написать этот скрипт, который является своего рода задачей программирования, которая связана с графикой. Для 2. нам не нужен программист, если только движок - как и большинство - не поддерживает импорт анимированных gif, и в этом случае кому-то нужно запрограммировать эту часть. В 3. кто-то должен программировать шейдер, который может быть художником или программистом. </p>

<p> EDIT для адресации вниз: </p>

<p> Кажется, что downvotes - это потому, что эффект слишком прост и, следовательно, не будет реализован «реальным» графическим программистом. Я не знаю, кто еще это будет реализован, если в команде есть выделенный графический программист, и я иногда реализую такие эффекты вращения в шейдерах, хотя обычно вращение является лишь частью большего целого, как в <a href= этот пример .

ответил Peter 4 J0000006Europe/Moscow 2017, 20:45:38
65

Игровые движки похожи на кухни, а разработчики (т. е. программисты) похожи на поваров.

Игровые движки предлагают возможности, в то время как программисты используют эти возможности для нужд игры.

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

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


Обратите внимание, что, хотя они позволяют вам изменять используемое искусство, игровые движки some не предлагают возможности адаптировать другие графические аспекты к потребностям игры. Я думаю, что RPG Maker был таким: он позволил вам изменить art , но вы были ограничены в плане того, как вы могли бы настроить свою игру, чтобы придать ей очень отличительный штрих. Возможно, это изменилось за последние годы, поскольку я некоторое время не касался этого программного обеспечения.

ответил Alexandre Vaillancourt 4 J0000006Europe/Moscow 2017, 19:16:56
21

Конкретное значение большинства наименований в игровой индустрии сильно варьируется от студии к студии, поэтому имейте это в виду. То, что составляет «графическое программирование» в одной студии, может действительно означать только создание шейдерных или материальных настроек, где в другой студии это может означать работу относительно низкоуровневой оптимизации рядом с базовым графическим API и т. Д.

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

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

Кроме того, есть много случаев, когда студия захочет интегрировать дополнительное промежуточное программное обеспечение, связанное с графикой. Существуют пакеты промежуточного уровня, такие как Granite, Enlighten и TrueSky, которые предлагают различные функции, связанные с графикой (потоковая передача текстур, глобальное освещение, имитация и рендеринг неба и т. Д.). Все эти пакеты промежуточного программного обеспечения интегрируются с Unreal, но для их интеграции требуется работа. Некоторые из них могут конфликтовать друг с другом или нуждаться в некоторой настройке, чтобы хорошо работать вместе, поскольку все они разработаны разными компаниями. Графические программисты, вероятно, будут вовлечены в такую ​​работу.

ответил Josh Petrie 4 J0000006Europe/Moscow 2017, 19:20:49
7

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

  1. Оптимизация

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

  2. понимание и обучение

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

  3. настройки и эффекты

    Некоторые эффекты могут потребовать программирования. Большая часть рендеринга Bound является обычным явлением.

Это ничем не отличается от фильмов. С 100-летним программистом, большим бюджетом и плохим письмом вы можете получить Star Wars: The Phantom Menace. Без программистов и хорошего письма вы можете получить Primer. Программисты (или другие технические люди) могут позволить новые вещи. Программисты принесли CG-грязь Шреку, CG-волосам в Monsters Inc, Bullet Time to the Matrix и т. Д. Но в фильмах они не об эффектах, и вполне возможно сделать потрясающие фильмы без эффектов или новых пользовательских технологий.

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

ответил gman 5 J0000006Europe/Moscow 2017, 08:22:33
4

Много раз игровые движки не удовлетворяли бы 100% требований и характеристик игрового проекта. Это особенно справедливо для трехкратных заголовков, которые всегда подталкивают границы игровой технологии. Если часть графической части движка игры не соответствует тому, что художники и дизайнеры хотят получить из коробки, они могут нанять графического программиста /специалиста, который может помочь им понять, возможно ли их ожидание, и если это так, как его достичь. Это может включать в себя настройку активов шейдера /искусства или переработку частей рендеринга или даже использование промежуточного программного обеспечения. Или их комбинация.

ответил EZzyPEZzy 5 J0000006Europe/Moscow 2017, 12:01:28
3

Большинство стандартных методов будут реализованы в любом приличном коммерческом движке, таком как FXAA, освещение, закрашивание cel, нормальное сопоставление и т. д., но не все.

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

ответил Ian Young 5 J0000006Europe/Moscow 2017, 11:35:21
-8

Определите движок, затем определите графический движок. Если вы используете существующий движок для создания игры, то это не то же самое, что писать игру с нуля в коде. Если через код можно определить, что такое графика или движок, не имеет значения, что вы называете, если ваш код силен. Создание игр в указанном двигателе, его ограничения и его сильные стороны основаны исключительно на способности программистов. Использование чего-то вроде Unity или даже Unreal или любого другого про-мотора не определяет вашу способность, игровые движки - это просто абстракции, кодирующие в чистом виде C ++. Вы можете, например, нанять программистов ада, даже художников, но вы будете ограничены видением или ограничениями двигателя. Так что лучше закодировать с нуля, а затем использовать что-то уже существующее. Проблема в том, что вы не найдете ответы онлайн, как Stackexchange. Я сомневаюсь, что многие люди даже потрудились закодировать игру, не говоря уже о завершении проекта 2d. Я просто откладываю немного, а это означает, что не многие ответы на самообслуживание объясняют это. Лучший способ - изучение и практика!

ответил Meeps 4 J0000006Europe/Moscow 2017, 20:12:09

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132