Публикации по теме 'tutorial'


Кодируйте Арканоид с помощью Javascript и обработки JS
Наконец-то это последний эпизод Кода со мной — игра Building the Arkanoid вышла! (отметьте первую часть здесь , вторую часть , третью часть и четвертую часть ). В последнем эпизоде ​​мы заставляем кирпичи исчезать, когда в них попадает мяч. Для этого мы будем использовать Javascript и Processing JS . Вы можете посмотреть видео здесь… Код как всегда доступен на GitHub . Вы можете проверить плейлист YouTube, чтобы посмотреть все эпизоды по порядку. Если вам..

Учебник по собственным модулям Node.js с C ++. Часть 2 - Массивы, JSON и обратные вызовы
Господи Иисусе, это JSON Bourne ... Прочитав Часть 1 этой серии, вы, вероятно, подумаете: Черт побери, как легко написать и скомпилировать собственный нодовой модуль узла из кода C ++. Это все, что мне нужно знать? Что ж, для начала достаточно. В «Части 1 мы передавали только плоские значения и экземпляры нашего векторного класса туда и обратно. Однако в какой-то момент вы, вероятно, также захотите передать массивы, объекты JSON или функции в свой C ++ API. Поэтому пора..

Jelly Shader, часть 4: интеграция с Unity
Часть 4. Интеграция с Unity Это четвертая статья в нашей серии статей о разработке пользовательского шейдера для Unity. В этой статье мы будем модифицировать наш шейдер, чтобы он мог получать входные данные от скриптов в нашей сцене. Давайте начнем с замены встроенного значения _Time значением, которое мы предоставляем сами. Позволяет нам сбросить анимацию волны по желанию. Давайте назовем эту новую переменную _ControlTime и добавим ее в объявления переменных. Добавьте в..

Создание 3D-игры для веб-раннера № 8: Добавление пользовательского интерфейса
Давайте продолжим работу над нашей 3D-игрой-раннером и создадим некоторые элементы пользовательского интерфейса! ⬅️ Урок №7: Столкновение с объектами | ТОЦ | Урок №9: игра важнее логики ➡️ «В последнем эпизоде ​​мы увидели, как сталкиваться с нашими объектами на уровне (как с препятствиями, так и с бонусами), и мы подготовили очень простой набросок пользовательского интерфейса , чтобы показать текущее здоровье и значения очков в верхнем левом углу экрана. Но это не..

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

Особенность: Зигзагообразный враг
В этой статье мы создадим Врага, который движется из стороны в сторону по мере продвижения вниз по экрану, создавая зигзагообразное движение. Этот скрипт будет унаследован от абстрактного класса, в который мы преобразовали скрипт Enemy в предыдущей статье. Для типа врага ZigZag нам нужно изменить две вещи в скрипте врага. Во-первых, изменить доступность логического значения _isDead на protected. Во-вторых, создать новый защищенный виртуальный метод, который будет содержать код из..

Переменные за 60 секунд.
Если вы когда-либо упаковывали коробки для переезда, вы уже понимаете. Переменная ненамного сложнее коробки. То, как каждый язык обрабатывает переменные, немного отличается, но, в конце концов, все они в значительной степени просто коробки. Как и коробку для переезда, вы создадите ее один раз с намерением использовать ее много раз. (Эти коробки для переезда Home Depot дорогие!) Когда вы создадите эту «коробку», вы дадите ей имя. Это все равно, что написать «КУХНЯ — ХРУПКОЕ»..