Эта статья является переводом цикла из четырёх статей «Linear algebra for game developers», написанных David Rosen и посвящённых линейной алгебре и её применению в разработке игр. С оригинальными статьями можно ознакомиться тут: часть 1, часть 2, часть 3 и часть 4. Я не стал публиковать переводы отдельными топиками, а объединил все статьи в одну. Думаю, что так будет удобнее воспринимать материал и работать с ним. Итак приступим.
Farley Drunk @SH42913
Разработчик C#/Unity3D
Переход на UNIGINE с Unity: гайд для программистов
12 min
6.6KTutorial
Мы продолжаем цикл статей про безболезненный переход на UNIGINE с зарубежных движков: в третьем выпуске рассмотрим миграцию с Unity с точки зрения программиста.
Под катом: написание игровой логики, запуск скриптов в редакторе, триггеры, ввод, рейкастинг и другое.
+10
Поля расстояний Raymarching-а: объяснение и реализация в Unity
24 min
29KTranslation
Raymarching — это достаточно новая техника, используемая для рендеринга сцен реального времени. Она особенно интересна тем, что полностью вычисляется в шейдере экранного пространства. Другими словами, рендерер не получает доступа к данным мешей и сцена отрисовывается на одном четырёхугольнике, покрывающем всю область видимости камеры. Объекты в сцене задаются аналитическим уравнением, описывающим кратчайшее расстояние между точкой и поверхностью всех объектов сцены (поэтому полностью техника называется полями расстояний Raymarching-а). Оказывается, что даже при наличии только этой информации мы можем создавать поразительно сложные и красивые сцены. Более того, благодаря тому, что мы не используем полигональные меши (и вместо них применяются математические уравнения), здесь, в отличие от традиционного рендерера, можно задавать идеально плавные поверхности.
Snail Иниго Килеза была полностью создана при помощи raymarching. Другие примеры подвергнутых raymarching-у сцен можно найти на Shadertoy.
В этой статье мы сначала расскажем о фундаментальных понятиях и теории raymarching, а затем покажем, как реализовать простейший raymarcher в игровом движке Unity. Далее мы продемонстрируем, как на практике встроить raymarching в настоящую игру на Unity, позволив объектам с raymarching-ом перекрываться обычными GameObjects.
Полный код можно найти в этом репозитории Github.
+21
Заблуждения о космических сражениях
7 min
41KЗдравствуйте. Это перевод статьи "Misconceptions about Space Warfare" из блога создателя игры Children of dead Earth – наиболее реалистичного космического симулятора на данный момент.
Существует много заблуждений о космосе в общем и в особенности о боях в космосе, и я собираюсь развеять некоторые из них. А еще расскажу, как эти самые космические сражения происходят — шаг за шагом.
Нулевое заблуждение — нет, в космосе невозможно спрятаться, не говоря уже о том, чтобы использовать невидимость в бою. Это возможно с помощью некоторых гипотетических технологий, но по факту не имеет смысла из-за ограничений по массе и стоимости кораблей.
Зенитные орудия пытаются сбить подлетающие ракеты. Ракеты обозначены красными точками, так как они слишком далеко для того, чтобы разглядеть их невооруженным глазом.
Существует много заблуждений о космосе в общем и в особенности о боях в космосе, и я собираюсь развеять некоторые из них. А еще расскажу, как эти самые космические сражения происходят — шаг за шагом.
Невидимость в космосе
Нулевое заблуждение — нет, в космосе невозможно спрятаться, не говоря уже о том, чтобы использовать невидимость в бою. Это возможно с помощью некоторых гипотетических технологий, но по факту не имеет смысла из-за ограничений по массе и стоимости кораблей.
Зенитные орудия пытаются сбить подлетающие ракеты. Ракеты обозначены красными точками, так как они слишком далеко для того, чтобы разглядеть их невооруженным глазом.
+33
Оптимизируем производительность игры параметрами импорта звука Unity
12 min
23KTranslation
Разработчики обычно не до конца понимают параметры импорта звука в Unity, и на момент написания статьи я не смог найти ни одного подробного руководства по их использованию. В документации Unity хорошо описано то, что делают параметры импорта звука, но я хотел бы разобрать эти описания для более широкой аудитории, а также более детально объяснить, как применять эти параметры, чтобы выжать из игры максимум производительности.
Этот документ разделён на пять частей:
- Как звук влияет на производительность
- Разбираемся с параметрами импорта
- Рекомендуемые мной параметры для PC и консолей
- Рекомендуемые мной параметры для мобильных платформ
- Предостережения и замечания
Оптимизация параметров импорта звука Unity — один из простейших способов оптимизации. В случае небольшого проекта у вас может уйти меньше часа для достижения значительных улучшений во времени загрузки, занятой ОЗУ и других аспектах производительности. Надеюсь, это руководство окажется полезным для вас. Информация актуальна для Unity версии 2018.3
+28
Information
- Rating
- 2,473-rd
- Location
- Пермь, Пермский край, Россия
- Registered
- Activity
Specialization
Game Developer
Middle