Графические вычисления: что стоит за Unity, что делает его таким мощным? - PullRequest
0 голосов
/ 12 ноября 2018

Я некоторое время изучал Unity, но мне всегда было любопытно немного больше узнать о том, как все работает ... координаты, источники света, трехмерные многоугольники и, в конце концов, невероятные результаты ... Как это работает на низком уровне? Как концепции компьютерной графики применяются движком Unity? Кто-нибудь знает, чтобы объяснить или порекомендовать мне книгу?

1 Ответ

0 голосов
/ 13 ноября 2018

Я учусь в магистратуре по графическому программированию, поэтому могу пролить свет на эту тему.

Во-первых, если вас интересует программирование на движке и графике, я настоятельно рекомендую прочитать 2 книги:

  • Архитектура игрового движка Джейсона Грегори
  • Рендеринг в реальном времени. Томас Акенин-Меллер (и др.)

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

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

  • Фиксированные и программируемые конвейеры
  • Шейдеры (в основном вершинные и фрагментные шейдеры, большая часть освещения и постобработка выполняется в шейдерах)
  • Растеризация (барицентрическая система координат, глубина и Z-буфер)
  • Геометрия (точки, векторы, нормали и матрицы)
  • Больше математики! (Однородные координаты, кватернионы, метод Эйлера)

Дополнительный совет: исчисление является корнем всей низкоуровневой графики, вам нужно знать, как сделать 5-кратные вложенные интегралы для моделирования освещения в реальном времени (хорошо, только если вы хотите моделировать каждый фотон!)

Этот материал поможет вам начать рендеринг. Книга «Архитектура игрового движка» познакомит вас с большей частью этого, а также со всем остальным (аудио движки, физика и т. Д.). Удачи!

...