Pull to refresh
1
@tron_lineread⁠-⁠only

User

Send message

Ричард Хэмминг: Глава 7. Искусственный интеллект — II

Reading time18 min
Views8.4K
«Цель этого курса — подготовить вас к вашему техническому будущему.»

imageПривет, Хабр. Помните офигенную статью «Вы и ваша работа» (+219, 2442 в закладки, 389k прочтений)?

Так вот у Хэмминга (да, да, самоконтролирующиеся и самокорректирующиеся коды Хэмминга) есть целая книга, написанная по мотивам его лекций. Мы ее переводим, ведь мужик дело говорит.

Это книга не просто про ИТ, это книга про стиль мышления невероятно крутых людей. «Это не просто заряд положительного мышления; в ней описаны условия, которые увеличивают шансы сделать великую работу.»

Мы уже перевели 23 (из 30) главы. И ведем работу над изданием «в бумаге».

Глава 7. Искусственный Искусственный интеллект — II


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

Давайте вернёмся к началу рассуждений и заново рассмотрим компоненты машины и человека. И машина, и человек состоят из атомов и молекул. И машина, и человек состоят из основных частей; у машин среди прочего есть устройства накопления и переключения (вентили), а человек состоит из органов. У машин есть большие структуры, арифметические блоки, память, блоки управления, устройства ввода-вывода, человек же состоит из костей, мускулов, кровяных сосудов, нервной системы и т.д.
Читать дальше →

Разработчик игр на Unity: как начать работать с востребованным игровым движком

Reading time6 min
Views21K

По данным сайта gamedatacrunch.com, в 2021 году 49,48% всех платных игр, вышедших в Steam, были сделаны на Unity. А в сфере мобильных игр этот показатель уже давно превысил 50%. В этом материале мы расскажем, почему движок стал настолько популярным, и объясним, почему начинающие разработчики и небольшие инди-команды предпочитают использовать Unity. 

Читать далее

Джентльменский набор программиста UE4, ч. 3

Reading time4 min
Views14K

Данный вопросник является дополнением и логическим завершением темы "джентльменского набора", поднятой ранее. Разработка игр — весьма комплексная индустрия, с очень широкими набором технологий и подходов, при этом базис у всех этих вещей на самом деле общий. Этот список создан в первую очередь для тех, кто хочет быть программистом Unreal Engine, а также позволяет оценить свой уровень тем, кто уже считает себя продвинутым программером под анрил.

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

Читать далее

Drift Game Tutorial

Level of difficultyMedium
Reading time7 min
Views4.9K

Давно хотел начать делать пет-проект про машинки, потому что я люблю машинки. А времени на то, чтобы заниматься автоспортом в реальности, у меня всё нет и нет.
Но ощущение, что можно сделать что-то более интересное в виртуальном дрифте, есть. А тут еще и потребность в таком проекте появилась.

Тема отлично подходила для открытого урока, потому что изначальная задумка была в достаточно простых механиках. Поэтому статья будет интересна как тем, кто впервые открывает для себя Unreal Engine, так и тем, кто знаком с движком, но не углублялся в cоздание автомобилей в нём.

Читать далее

10 идей применения искусственного интеллекта для бизнеса, маркетолога и фрилансера

Reading time6 min
Views72K

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

Читать далее

Анатомия игры: искусственный интеллект

Level of difficultyMedium
Reading time15 min
Views3.7K


Добрый вечер, дорогие хабражители! Практический материал все еще требует больших аппаратных мощностей, чем у меня есть, поэтому продолжим теоретическое ознакомление. Сегодня мы немножко поговорим об искусственном интеллекте в играх, его формах и проблемах.
Читать дальше →

Искусственный интеллект в DOOM

Reading time11 min
Views40K

DOOM — прародитель шутеров от первого лица, определивший целое поколение игр 90-х. Хоть это и не первая игра такого рода, и даже не первая игра id Software, но именно она изменила индустрию. Проект до сих пор изучают не только из-за его известности, но и потому, что он достиг высот в условиях сильных технических ограничений, задолго до появления большинства современных инструментов и стандартов. Под катом перевод статьи о работе искусственного интеллекта в Doom и трюках, которые использовали разработчики для создания интересных боевых ситуаций.

Читать далее

Эти люди создают искусственный интеллект — 4 истории специалистов по ИИ и ML

Reading time8 min
Views6.3K
Четыре опытных специалиста о том, как занялись искусственным интеллектом, с какими сложностями столкнулись и какие задачи решают.
Читать дальше →

Туториал по Unreal Engine. Часть 5: Как создать простую игру

Reading time13 min
Views164K
image

Если вы новичок в разработке игр, то логичнее всего начинать с создания простой игры. Она научит вас реализации простых механик и тому, как объекты взаимодействуют друг с другом.

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

  • Бесконечно перемещать игрока вперёд
  • Генерировать препятствия, которые игрок должен избегать
  • Рандомизировать препятствия для создания вариаций
  • Создавать кнопку перезапуска, которая отображается, когда игрок сталкивается с препятствием
Читать дальше →

Туториал по Unreal Engine. Часть 10: Как создать простой FPS

Reading time12 min
Views147K
image

Шутер от первого лица (first-person shooter, FPS) — это жанр, в котором игрок использует оружие и смотрит на мир глазами персонажа. FPS-игры чрезвычайно популярны, что видно по успеху таких франшиз, как Call of Duty и Battlefield.

Unreal Engine изначально был создан для разработки FPS, поэтому вполне логично использовать его для создания такой игры. В этом туториале вы научитесь следующему:

  • Создавать Pawn с видом от первого лица, который сможет двигаться и осматриваться вокруг
  • Создавать оружие и привязывать его к Pawn игрока
  • Стрелять пулями с помощью трассировки прямых (также известной как трассировка лучей)
  • Наносить урон акторам
Читать дальше →

От int main() до BeginPlay: как происходит инициализация Unreal Engine под капотом

Reading time16 min
Views20K

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

Но когда вы пишете игровой код на Unreal Engine, вы не имеете дело с игровым циклом напрямую. Вы не начинаете работать сразу с основной функцией — сначала вы определяете подкласс GameMode и переопределяете функцию под названием InitGame. Или пишете одноразовые классы Actor и Component и переопределяете их функции BeginPlay или Tick для добавления собственной логики. Это самый минимум того, что вам нужно сделать: обо всем остальном движок позаботится за вас.

Unreal Engine также предлагает вам как программисту мощный и гибкий инструментарий: конечно, он имеет открытый исходный код, но также возможно и расширение несколькими другими способами. Даже если вы только начинаете работать с этим движком, было бы не лишним получить представление о его GameFramework: о таких классах, как GameMode, GameState, PlayerController, Pawn и PlayerState.

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

Читать далее

Unreal Engine vs Unity vs GoDot. Что нужно знать, если ты не программист

Level of difficultyMedium
Reading time17 min
Views28K


Доброго времени суток, дорогие хабражители. Продолжаем разбор строения игр, игровых движков и их особенностей с точки зрения человека, которому никогда в жизни не говорили «тыжпрограммист». Сегодня на повестке дня выбор игрового движка из двух гигантов игростроя: Unity и Unreal Engine.
Читать дальше →

Статический анализ как часть процесса разработки Unreal Engine

Reading time13 min
Views10K
PVS-Studio & Unreal Engine

Проект Unreal Engine развивается — добавляется новый код и изменятся уже написанный. Неизбежное следствие развития проекта — появление в коде новых ошибок, которые желательно выявлять как можно раньше. Одним из способов сокращения количества ошибок является использование статического анализатора кода PVS-Studio. Причем анализатор также быстро развивается и учится находить новые паттерны ошибок, некоторые из которых будут рассмотрены в этой статье. Если вас заботит качество кода ваших проектов, то эта статья для вас.
Читать дальше →

Как работает физика в играх

Level of difficultyMedium
Reading time17 min
Views24K

В мире видеоигр игровая физика играет важную роль, определяя реалистичность и взаимодействие игрового мира с игроком. Что же происходит под капотом? Какие алгоритмы и подходы используются в современных движках? И что же значит «застрять в текстурах»? (спойлер: чушь полнейшая)

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

Читать далее

Level Up: Геймдев в эпоху искусственного интеллекта

Level of difficultyEasy
Reading time14 min
Views2.6K

Машинное обучение революционизирует игровую индустрию всё больше. Если играли, то знаете, что в играх теперь не просто бездумно бегают NPC, а ведут битву настоящие стратеги, которые адаптируются к вашему стилю игры и, так уж и быть, позволяют вам красиво выиграть, а себе — также красиво (или не очень) проиграть…

Как так происходит?

С помощью ML, конечно. 

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

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

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

Читать далее

Руководство по созданию собственных шейдеров в Unreal Engine

Reading time12 min
Views26K
image

Благодаря системе нодов редактор материалов является отличным инструментом для создания шейдеров. Однако у него есть свои ограничения. Например, там невозможно создавать циклы и конструкции switch.

К счастью, эти ограничения можно обойти с помощью написания собственного кода. Для этого существует нод Custom, позволяющий писать код HLSL.

В этом туториале вы научитесь следующему:

  • Создавать нод Custom и настраивать его входы
  • Преобразовывать ноды материалов в HLSL
  • Изменять файлы шейдеров с помощью внешнего текстового редактора
  • Создавать функции HLSL

Чтобы продемонстрировать все эти возможности, мы воспользуемся HLSL для снижения насыщенности изображения сцены, вывода различных текстур сцены и создания гауссова размытия (Gaussian blur).
Читать дальше →

Пишем компонент движения для RTS в Unreal engine 4

Reading time9 min
Views59K
image

Привет, меня зовут Дмитрий, я программист. Только что закончил рефакторинг компонента движения кораблей для проекта тактической игры в реальном времени, в которой игроки могут собрать свой собственный космический флот и повести его в бой. Компонент движения переписывался уже три раза, от релиза до начала разработки альфа версии. Было собрано множество граблей, как архитектурных, так и сетевых. Постараюсь подбить весь этот опыт и рассказать вам о Navigation Volume, Movement component, AIController, Pawn.
Читать дальше →

Создаём простейшую VR-демку с Unreal Engine

Reading time4 min
Views62K


По мере того, как виртуальная реальность становится мейнстримом, всё больше разработчиков игр изъявляют желание создавать новый контент для устройств вроде HTC Vive и Oculus Rift. Из доступных движков особенно выделяются два: Unreal Engine and Unity3D. В этой статье мы рассмотрим процесс разработки маленькой демки на основе Unreal Engine. Мы делаем уровень, по которому можно будет свободно перемещаться, а также брать или уничтожать объекты.
Читать дальше →

Туториал по Unreal Engine: Cel Shading

Reading time9 min
Views29K
image

Благодаря физически точному рендерингу в Unreal Engine 4 удобно разрабатывать реалистичные игры. Модель рендеринга имитирует взаимодействие света с материалами, что приводит к созданию реалистичной картинки. Однако если вы хотите разработать игру со стилизованным внешним видом, то вам придётся исследовать другие техники.

Один из способов создания стилизации — использование cel shading (также известного как toon-шейдинг). Эта техника подражает затенению, обычно используемому в мультфильмах и аниме. Примеры её использования можно увидеть в таких играх, как Jet Set Radio, The Legend of Zelda: The Wind Waker и Gravity Rush.

В этом туториале вы научитесь следующему:

  • Создавать и использовать материал постобработки
  • Создавать cel-шейдер
  • Изолировать cel-шейдер для отдельных мешей
  • Управлять цветовыми полосами с помощью таблиц поиска
Читать дальше →

Как рендерит кадр движок Unreal Engine

Reading time23 min
Views58K


Однажды я искал исходный код Unreal и, вдохновлённый отличным анализом того, как популярные игры рендерят кадр (перевод статьи на Хабре), я решил тоже сделать с ним что-то подобное, чтобы изучить, как движок рендерит кадр (с параметрами и настройками сцены по умолчанию).

Поскольку у нас есть доступ к исходному коду, мы можем изучить исходники рендерера, чтобы понять, что он делает, однако это довольно объёмная часть движка, а пути рендеринга сильно зависят от контекста, поэтому проще будет исследовать чистый низкоуровневный API (иногда заглядывая в код, чтобы заполнить пробелы).
Читать дальше →

Information

Rating
Does not participate
Registered
Activity

Specialization

Software Developer, Game Developer
Python
OOP
C++
Unreal Engine
Shaders
Game Development
AR and VR development