Как стать автором
Обновить
0
0

Пользователь

Отправить сообщение

Вороной, Манхэттен, рандом

Уровень сложностиПростой
Время на прочтение34 мин
Количество просмотров19K

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

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

Осторожно, очень много картинок!

Читать далее
Всего голосов 160: ↑160 и ↓0+160
Комментарии53

Портативная Bluetooth колонка «Ламповичок» на радиолампах 30-х годов

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров26K

Прочитав заголовок статьи, возможно, у вас возникли мысли: “Но зачем?!”, “КПД ламповых усилителей очень низкий!” или “Какой смысл подключать Bluetooth модуль к ламповому усилителю?!”и т.д. Нет никакого смысла. Устройство собирается ради устройства, развлечения ради. Я очень люблю ламповые радиоприёмники, мне нравится изучать их устройство, любоваться внешним видом и даже просто созерцать в сумерках магические огоньки за задней стенкой, излучающие тепло, уют, романтику и добрый душевный голос из громкоговорителя… Но к сожалению, в наше время возможно принимать в основном зарубежные станции и только ночью. Поэтому иногда я развлекался тем, что слушал музыку подключаясь к усилителю радиоприёмника. Так и возникла идея сделать портативную Bluetooth колонку в ретро стиле с ламповым усилителем без всяких претензий на High End.

Осторожно! Под катом много фото.

Читать далее
Всего голосов 103: ↑102 и ↓1+131
Комментарии58

2D магия в деталях. Часть третья. Глобальное освещение

Время на прочтение13 мин
Количество просмотров26K

Глобальное освещение, динамический свет и декали (да, есть такое слово :) ) в действии.


Я очень люблю смотреть на белые предметы без текстуры. Недавно в художественном магазине я долго рассматривал гипсовые фигуры, которые художники используют в качестве модельных объектов. Очень приятно видеть все эти плавные переходы света и мягкие тени. Позже, когда я вернулся домой и открыл Unity3D, пришло понимание, что свет в моём проекте по-прежнему скучный и нереалистичный.
С этого момента началась история глобального освещения, которую я сегодня расскажу.

Читать дальше →
Всего голосов 59: ↑58 и ↓1+57
Комментарии47

Устройство игрового движка для NES на примере игр «Capcom»

Время на прочтение11 мин
Количество просмотров33K
В моей третьей статье про NES-игры я покажу техники, используемые для создания игровых движков, а именно реализацию скроллинга экрана, переключение банков памяти, организацию списка объектов, устройство системы анимаций персонажей, функции обновления игровых объектов (и обработку столкновений), устройство главной карты. Чтобы не быть голословным в описаниях, я буду приводить дизассемблированный код из конкретных игр (любимый всем «Darkwing Duck», с отсылками к «Chip & Dale» и «Duck Tales»), без него в этой статье не обойтись. В качестве примера рассматривается движок от «Capcom», на модификациях которого работает как минимум пара десятков игр.

Некоторые из рассматриваемых тем не связаны между собой, поэтому статья будет разбита на несколько разделов. Также, из-за обширности, материала хватило бы на небольшую книгу, поэтому иногда я буду давать ссылки на статьи для желающих разобраться в деталях, а описывать только общие вещи, касающие архитектуры движков.
Читать дальше →
Всего голосов 74: ↑74 и ↓0+74
Комментарии6

Использование инструментов исследования NES-игр на примере разбора формата компрессии игры Felix The Cat

Время на прочтение9 мин
Количество просмотров7.3K
В этой статье я расскажу, как использовать описанные в прошлой статье инструменты для исследования игры Felix The Cat для NES. Моя первоначальная цель была, как обычно, разобрать формат уровней игры и добавить её в свой универсальный редактор уровней CadEditor, однако в ходе изучения игры обнаружилось, что описание уровней сжато (это редкость для NES-игр!), поэтому я также разобрал формат компрессии данных, и написал компрессор, позволяющий сжимать отредактированные уровни так же, как это делали разработчики игры.


Читать дальше →
Всего голосов 31: ↑31 и ↓0+31
Комментарии5

Устройство спецэффектов для игр под NES. Часть 1

Время на прочтение19 мин
Количество просмотров14K
Существует несколько серий статей про программирование под NES, одна из них уже даже переведена на русский язык на Хабре. Однако ни одна из них не заходит дальше обзора базовых возможностей консоли – рассматривается общая архитектура консоли, основы ассемблера, вкратце рассказывается, как выводить спрайты на экран, упоминается что-то о музыке и мапперах, и цикл заканчивается.

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

Поэтому перед тем, как запрограммировать что-нибудь, предстоит разобраться с тем, как устроены те или иные эффекты для NES, и статья будет посвящена тому, как это сделать. Существует множество статей из разряда «Игры, выжавшие из NES максимум», попробуем разобраться в том, как сделаны все основные эффекты в этих играх, а также создадим инструменты, которыми можно найти другие игры, не менее технологичные по эффектам.
Всего голосов 45: ↑45 и ↓0+45
Комментарии14

Строим бюджетный умный домашний кинозал с управлением в HomeKit

Время на прочтение17 мин
Количество просмотров15K


Предисловие.

Давно хотел cделать кинотеатр в доме, так как являюсь большим поклонником кинематографа во всех его проявлениях. Наконец появилось время реализовать задуманное и я приступил к реализации.

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

Смотреть далее
Всего голосов 17: ↑17 и ↓0+17
Комментарии19

Освещение растений белыми светодиодами — расчет светильника и grow box

Время на прочтение3 мин
Количество просмотров25K

Тоже интересно, как сэкономить на фитолампе и бродят мысли что-то сделать своими руками? Здесь можно найти теоретический расчет эффективности использования светодиодных ламп на цоколе Е27, а также узнать, во сколько обойдутся материалы, если дело дойдет до эксперимента.

Читать далее
Всего голосов 20: ↑20 и ↓0+20
Комментарии37

Малышка на миллион. Сковиллей

Время на прочтение13 мин
Количество просмотров36K

Или, на что годятся монстрики Meklon'а?




Пишу эту заметку по мотивам инженерного мануала Гидропоника. Выращиваем сверхострый чили и заставляем всех его есть. Так получилось, что я один из тех, кого Meklon счел своим долгом «накормить и посмотреть что с ними станет». Я же, в свою очередь, считаю своим долгом рассказать об этом бесчеловечном эксперименте, на мой взгляд, в статье уделяется слишком мало внимания самому перцу. А он заслуживает большего!

Ко всему прочему, я совершенно в этом уверен, после его статьи должно появиться множество гидропонщиков-неофитов, ибо тема не менее интересная, чем профитроли, а это значит — что через несколько месяцев, в разных уголках земного шара, где читают Хабр, вырастет энное количество экстремально острого перца, с которым надо будет что-то делать. Проблема в том, что одна средняя семья не в состоянии самостоятельно употребить весь урожай Scorpion Trinidad. А это значит, что перцами будут интенсивно делиться, но не все будут понимать — для чего может пригодиться такой экзотический фрукт и что с ним делать.

Об этом — и будет мой рассказ, как приготовить из адских перчиков что-то съедобное и не сильно пострадать в процессе.
Всего голосов 104: ↑99 и ↓5+133
Комментарии220

Как создавать необычно красивые линии? Изучаем поле течений

Время на прочтение7 мин
Количество просмотров9.6K

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

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

Осторожно, много тяжелых красивых картинок
Всего голосов 37: ↑36 и ↓1+49
Комментарии9

Пересадочный узел для птиц: раскаты Волги посреди пустыни

Время на прочтение12 мин
Количество просмотров19K
Привет! На нашей офигенной планете есть такое место — низовья Волги. Если бы не Волга, там была бы натуральная пустыня, как в Монголии. Но там есть река, и течёт она не просто так, а по дну бывшего древнего моря.

В России далеко не все знают про это место, а вот для орнитологов всего мира это натуральная Мекка. Почему? Потому что тут огромный трансферный узел для птиц, и это роль места в планетарном масштабе. Птица, она как и самолёт, требует дозаправки. Если вы думаете, что они просто летят в тёплые края, то нет — им нужно где-то останавливаться, отдыхать, есть несколько дней (или даже недель) и лететь дальше. И обычное дерево на даче не подходит: нужно, чтобы было много места и много корма, и при этом хищники не особенно злобствовали. Чтобы вы понимали масштабы узла — просто знайте, что тут за год «пересаживается» около 20 миллионов особей.

Нормальные реки разбиваются на 2-3 протока, а вот Волга разбивается сначала на сотни, а потом вообще превращается в огромную водную поверхность глубиной около метра. Представьте: взяли кусок пустыни размером в полтора Кипра (13 900 км2) и залили его водой. Получилось вот так:



Глубина там небольшая, растительность спокойно торчит над водой, в местах, где ещё можно различить рукава — куча островков и чего-то похожего, а ниже уже всё это постепенно переходит в Каспийское море. Конвергентные вещи можно увидеть в дельте Меконга и в мангровых рощах на островах Микронезии. Поэтому да, в Астрахани, проплывая протоками, можно словить много вьетнамских флешбеков.



Вокруг птиц построили астраханский биосферный заповедник. На его примере я хочу показать, как офигенно работает наука с местными жителями. А то я прошлый раз прямо восхищался, как в Намибии дружат со слонами и леопардами, а у нас под носом происходят не менее интересные вещи.
Всего голосов 87: ↑86 и ↓1+113
Комментарии53

Солнце в коробке

Время на прочтение17 мин
Количество просмотров25K
«Это мой лучший друг: всегда в хорошем настроении и не задаёт лишних вопросов» — Леон о растении.


Не секрет, что зеленые друзья расползлись по подоконникам многих из нас, вот и мне захотелось вырастить у себя что-нибудь. Да не просто «что-нибудь», а что-нибудь плодоносящее. К сожалению, в квартирных условиях обеспечить необходимые для этого условия весьма непросто. Однако попытаться стоит. Так, и взбрела мне в голову мысль разработки устройства для решения этой задачи — умного гроубокса. Конечно, идея не нова, но найти что-нибудь интересное, да еще и настольного формата среди готовой продукции мне не удалось и захотелось соорудить кое-что своё. Дело дошло до версии 2.0 и вот, я готов поделиться полученными результатами.
Всего голосов 66: ↑66 и ↓0+66
Комментарии110

Процедурная гидрология: динамическая симуляция рек и озёр

Время на прочтение15 мин
Количество просмотров8.3K
Примечание: полный исходный код проекта выложен на Github [здесь]. В репозитории также содержится подробная информация о том, как читать и использовать код.

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

Я исследовал уже существующие методики процедурной генерации рек и озёр, но найденные результаты меня не устроили.

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

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

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

В своём методе я стремлюсь одновременно и к простоте, и к реализму ценой небольшого повышения сложности базовой системы эрозии. Рекомендую прочитать мою предыдущю статью об этой системе [здесь, перевод на Хабре], потому что новая модель строится на её основе.
Всего голосов 22: ↑22 и ↓0+22
Комментарии4

20 платформ для заработка на тестировании

Время на прочтение7 мин
Количество просмотров283K
Чтобы протестировать веб-сайты из дома, вы должны быть знакомы с интернетом и хорошо говорить по-английски. Вам также понадобится базовое оборудование, такое как компьютер с микрофоном и камерой и стабильное подключение к Интернету. Большинство тестов занимает от 5 до 25 минут, и в среднем компании платят 10 долларов за тест.


Читать дальше →
Всего голосов 14: ↑13 и ↓1+13
Комментарии17

Как я данные с BLE-градусника от Xiaomi забирал

Время на прочтение6 мин
Количество просмотров42K
Предыстория: в качестве одного из хобби у меня случился «Умный дом». Хочется красивых устройств, но при этом ещё хочется свободы и приватности. Поэтому занимаюсь скрещиванием ужика Xiaomi с ёжиком Home Assistant.

Для поддержания комфортных условий нам нужно знать, а что вообще у нас дома происходит. Короче говоря, нужны сенсоры. Их у Xiaomi есть много разных, но больше всего мне понравился квадратный градусник на электронных чернилах. Вот только он совсем не умный, в том смысле, что не предоставляет вообще никаких интерфейсов, кроме графического – ни тебе WiFi, ни BLE, ни ZigBee. Зато батарейки CR2032 хватает на несколько лет. Есть ещё версия с блютусом, но она чуть менее изящная – эдакий толстый блинчик.

И вот в начале весны был анонсирован новый датчик температуры/влажности, на электронных чернилах, с BLE, да ещё и с часами. Часы мне не особенно-то и нужны, а вот всё остальное немедленно подавило все рациональные доводы и градусник был заказан на одном из популярных интернет-магазинов, по предзаказу. Ехало оно ехало, и наконец приехало.



В приложение MiHome датчик добавился без проблем (у меня англоязычный интерфейс везде, с русской версией MiHome, говорят, были трудности перевода). Показывает текущие значения и историю изменения показаний.

А вот с интеграцией в Home Assistant приключились сложности. Имеющийся компонент для датчика температуры ни в какую не хотел забирать данные с устройства и жаловался на неверный формат данных. Ну, делать нечего, достаём лопату и начинаем копать.

Первой мыслью было ознакомиться с устройством протокола BLE, но оценив размер документации, было принято решение переходить к методу народного тыка.
Читать дальше →
Всего голосов 68: ↑67 и ↓1+66
Комментарии42

Моноколесо: два сезона опыта

Время на прочтение10 мин
Количество просмотров44K
2300 пройденных километров, один серьезный ремонт, зимовка, четыре достойных упоминания падения — таковы численные результаты двух моих сезонов на моноколесе. А еще это опыт, которым я бы хотел поделиться. Может быть, несколько не вовремя рассказывать о нем в первый день зимы. Действительно, я хотел подготовить материал к годовщине знакомства, но, увы, постоянно находились более важные дела. Впрочем, есть своя логика в том, чтобы готовить сани летом, а моноколесо — зимой.


Всего голосов 35: ↑34 и ↓1+33
Комментарии85

Сверхбыстрое распознавание речи без серверов на реальном примере

Время на прочтение10 мин
Количество просмотров332K

В этой статье я подробно расскажу и покажу, как правильно и быстро прикрутить распознавание русской речи на движке Pocketsphinx (для iOS порт OpenEars) на реальном Hello World примере управления домашней техникой.
Почему именно домашней техникой? Да потому что благодаря такому примеру можно оценить ту скорость и точность, которой можно добиться при использовании полностью локального распознавания речи без серверов типа Google ASR или Яндекс SpeechKit.
К статье я также прилагаю все исходники программы и саму сборку под Android.

Прикручиваем Pocketsphinx к своему Андроиду
Всего голосов 185: ↑182 и ↓3+179
Комментарии87

Полезные книги о разработке мобильных игр на Android и iOS

Время на прочтение8 мин
Количество просмотров42K

image


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


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


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

Читать дальше →
Всего голосов 24: ↑22 и ↓2+20
Комментарии3

Самодельный Bluetooth усилитель АБ класса с автоматизацией управления питанием

Время на прочтение7 мин
Количество просмотров26K
Всё началось с лени.
А точнее, с Веги 50у-122с, доставшейся в наследство вместе с акустикой Электроника 25ас-033. И вначале всё было хорошо. А потом, споткнувшись за провод, был убит ноут. После этого, в Веге появился BT модуль, а сама Вега научилась включаться по подключению устройств к этому модулю.

Время шло и качества стало мало. Тогда был проведён Веге первый апгрейд. Потом второй. Потом акустике. Потом… Потом пришло понимание что надо делать что-то качественно новое. Ну а когда Вега стала хрипеть и замаячила перспектива полной перепайки всех электролитов…

И началось строительство…
Кому лень читать технические подробности и хочется просто посмотреть как это работает — можно прокрутить в конец, там сокращённая видео версия для моего канала.

image

Далее много текста и фото
Всего голосов 26: ↑25 и ↓1+24
Комментарии64

Делаем трехосевой фрезерный станок с числовым программным управлением

Время на прочтение10 мин
Количество просмотров35K
Идея сделать станок дома руками не нова. Каждый кто задумывается над реализацией такого оборудования в домашних условиях, должен руководствоваться своим мотивом создания. Мне это необходимо, потому, что от природы у меня не на столько ровные руки, чтобы сделать хорошие, даже более или менее габаритные, детали, а часто возникает задача изготовить точную сложную деталь, с чем станок хорошо справится. Всегда хватает новых идеи и задумок для реализации, а времени не очень много.


Читать дальше →
Всего голосов 44: ↑44 и ↓0+44
Комментарии71

Информация

В рейтинге
Не участвует
Откуда
Тюмень, Тюменская обл. и Ханты-Мансийский АО, Россия
Зарегистрирован
Активность