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

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

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

Почему поиск по фото у Google и Apple не способен найти обезьян

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

В мае 2015 года Google выпустила отдельное приложение «Фотографии». Люди были поражены тем, что оно способно анализировать изображения, разбирать их на детали, а потом маркировать людей, места и вещи. Даже переводить текст!

Была только одна проблема. Google внедрил «категоризацию фотографий» — все фотографии автоматически размечались и организовывались в папках на основании того, что на них было. И через пару месяцев 22-летний программист-фрилансер Джеки Альсине обнаружил, что все фотографии, на которых был изображен он и его девушка, оба чернокожие, были помечены как «гориллы». Причем если на фотографиях был виден белый человек или человек со светлой кожей, Google маркировал их правильно — например, «выпускной» или «поход в бар». М-да.

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

Читать далее
Всего голосов 123: ↑117 и ↓6+145
Комментарии301

Культурный феномен клипа Bad Apple и мой BAD AON

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

Уже десять лет на демосцене существует довольно странная, но интересная традиция. Нет, в баню с друзьями ходят без неё, но очень многие делают конверсии популярного видеоклипа Bad Apple на различные маломощные платформы прошлых лет. Как-то: ZX Spectrum, Game Boy, Sega Genesis, БК-0011М, и чем дальше, тем страньше и страньше. Это одновременно и упражнение в реализации цифрового видео в условиях крайне ограниченных ресурсов, и в адаптации контента под возможности максимально хардкорных ретро-платформ.

Сегодня рассмотрим само явление Bad Apple — откуда оно взялось и какое отношение имеет к компьютерам, а также мою новейшую разработку в этой области, демонстрацию BAD AON. В прошлом я уже делал подход к этому снаряду с версией для 8-битной NES, а в этот раз сделал адаптацию для, смею надеяться, одной из наиболее необычных платформ. Разглядеть клип будет трудновато, но если хорошенько прищуриться (я серьёзно), он всё ещё вполне узнаваем.
Читать дальше →
Всего голосов 132: ↑132 и ↓0+174
Комментарии35

Нужны ли Unity разработчику проекты на гитхабе

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

Довольное большое количество собеседующих заглядывает на гитхаб. Первые хотят убедиться, что у вас есть в наличии хоть какой‑то написанный вами надеюсь код. Вторые хотят побольше в этот код повникать, чтобы посильнее вас потеребонькать на техническом собеседовании. Уже не знаю для чего… для поднятия собственного это, может быть. Или может хотят сбить с вас спесь вместе с денежными запросами) Хотя последняя категория собеседующих на моей практике попадалась всего два раза:

Читать далее
Всего голосов 6: ↑3 и ↓3+2
Комментарии5

Как сайты обнаруживают ботов по TLS

Уровень сложностиСредний
Время на прочтение3 мин
Количество просмотров7.5K

Порой случается так что несмотря на то что мы в точности повторяем запрос к сайту из своего любимого HTTP клиента в ответ мы получаем ошибку. Но ведь в браузере запрос проходит! В чём же дело? В этой статье мы с этим разберемся!

Читать далее
Всего голосов 20: ↑19 и ↓1+21
Комментарии6

Система рендеринга для космического симулятора в Unity

Уровень сложностиСредний
Время на прочтение20 мин
Количество просмотров6.3K

Несколько лет назад я работал над проектом по реализации на Unity реалистичного космического симулятора. Это достаточно нестандартное применение движка, и в ходе работы были решены разные специфические задачи, одна из которых - обеспечение корректного рендеринга объектов космических масштабов. Этим опытом я бы хотел поделиться с сообществом.

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

От «здравствуйте» до こんにちは: языки программирования не на английском языке

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

Существует огромное количество самых разных языков программирования, их насчитывается несколько тысяч. Какие‑то — идеальны для работы, другие же созданы just for fun. К слову, есть ЯП, представленные программистами из неанглоязычных стран, в них операторы, функции и т. п. — все на родном для автора языке. Кроме того, некоторые страны стремятся развивать свои собственные IT‑индустрии, и использование местного языка в программировании может быть способом поддержать эту инициативу. Мы выбрали самые интересные на наш взгляд non‑English языки программирования.

Читать далее
Всего голосов 34: ↑31 и ↓3+40
Комментарии34

Как спарсить любой сайт?

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

Меня зовут Даниил Охлопков, и я расскажу про свой подход к написанию скриптов, извлекающих данные из интернета: с чего начать, куда смотреть и что использовать.

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

Узнать как
Всего голосов 64: ↑55 и ↓9+60
Комментарии89

Создание шейдера травы в движке Unity

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

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

Статья описывает поэтапный процесс написания шейдера травы в Unity. Шейдер получает входящий меш, и из каждой вершины меша генерирует при помощи геометрического шейдера травинку. Ради интереса и реализма травинки будут иметь рандомизированные размеры и поворот, а ещё на них будет влиять ветер. Чтобы управлять плотностью травы, мы используем тесселяцию для разделения входящего меша. Трава сможет и отбрасывать, и получать тени.

Готовый проект выложен в конце статьи. В созданном файле шейдера содержится большое количество комментариев, упрощающих понимание.
Всего голосов 53: ↑50 и ↓3+47
Комментарии5

Квантовые компьютеры. С точки зрения традиционного программиста-математика. Часть 7 — Заключительная

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

Алгоритм Шора

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

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

Архитектура unity проектов

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

За всю карьеру удалось поработать на множестве игровых проектов в качестве лида. За более чем 5 лет удалось насмотреться на разные подходы к созданию проектов.

В данной статье я собрал выжимку статей и мыслей из своего блога о подходах, которые я использую в своих проектах. А так же поделился шаблоном пустого проекта, в котором отражена самая удобоваримая архитектура проекта в unity.

Не волнуйтесь, никаких SOLID и других изотерических практик. Коротко, по делу, подкрепленное использованием на нескольких проектах.

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

Godot — это не новая Unity. Анатомия вызова API в Godot

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

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

Апдейт: ведущий разработчик Godot Хуан Линьетски опубликовал ответ на этот пост.

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

Итак, вы решили перейти с Unity на Unreal Engine

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

Наверно, произошло что-то плохое, и теперь вы читаете эту статью. Сочувствую! Давайте начнём по порядку.

Меня зовут Джо Уинтергрин, я генералист Unreal Engine. Можете взглянуть на все мои ресурсы. В статье я приведу полезную информацию для новичков в Unreal, имевших опыт работы с Unity.

С чего начать?

• Прочитайте документацию по Gameplay Framework. Всю целиком! У Unreal есть Gameplay Framework. Прочитайте документацию и освойтесь в ней. Это правильное решение при разработке любого типа игры. Не пропускайте её. Держите её под рукой, чтобы перечитывать.

• Влейтесь в сообщество. Это учетверит вашу скорость обучения. Есть Discord для бывших Unity-разработчиков Алекса Роуза и есть мой Discord.

• Почитайте Epic Online Learning Library. Вот она. Делайте упор на статьи, написанные Epic Games.

• Скачайте последнюю версию Unreal Engine из Epic Games Launcher. На данный момент это 5.3. В общем случае всегда стоит начинать проект на самой новой версии. Кроме того, нет никаких причин больше пользоваться UE4 — UE5 лучше и имеет все возможности UE4.

• Изучите документацию «Unreal Engine for Unity Developers» компании Epic. Это хороший способ начать. Вот она.

• Прочитайте статью целиком. Я знаю, здесь много текста, но не ничего не пропускайте! Всё это очень важная и точная информация! В Интернете много некачественных сведений об Unreal, но не здесь. Здесь всё правильно.

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

Клонирование голоса, замена лица по фото, удаления объектов в видео и все в одном open-source проекте Wunjo AI

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

Привет, читатель! В этой статье вы погрузитесь в захватывающий мир новых возможностей для создания дипфейков и синтеза речи в Wunjo AI v1.5, проект полностью с открытым исходным кодом. Вы узнаете о последних фичах, которые позволяют помимо синтеза речи, теперь клонировать голос из аудиофайлов или даже в режиме реального времени, меняют лица на видео с использованием всего одной фотографии, удаляют объекты с видеороликов и значительно повышают качество дипфейков с помощью нейронных сетей для ретуширования. К тому же остается возможность создавать анимацию лица из обычных картинок и анимирования движение губ по аудио в Wunjo AI, Вы не только увидите и услышите результаты этих функций, но и окунетесь в мир приложения, которое делает это возможным.

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

Готовы? Погнали!
Всего голосов 30: ↑29 и ↓1+32
Комментарии37

Квантовые компьютеры. С точки зрения традиционного программиста-математика. Часть 1

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

Квантовые компьютеры. С точки зрения традиционного программиста-математика.
Часть 1. Основы. Квантовый регистр.

О чем эта публикация

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

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

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

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

Фотореалистичная графика на уровне ААА в Unity

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

До сих пор распространено мнение о том, что Unreal Engine превосходит Unity в графическом плане, но так ли это в действительности? (Спойлер: нет.)

Такое мнение сформировалось по ряду причин. Одна из причин отсылает нас к 2015 году, когда в Unity был доступен лишь встроенный конвейер рендеринга с рядом ограничений. На тот момент добиться сопоставимого с Unreal Engine визуала было очень сложно. Другой причиной является порог входа в Unity: он довольно низкий, а начинающим программистам и дизайнерам совсем не очевидна концепция компонентной системы Unity, что порождает довольно много слухов по сей день.

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

Всем под кат! Далее мы расскажем, как добиться фотореалистичной графики в Unity.

Читать далее
Всего голосов 11: ↑10 и ↓1+12
Комментарии18

10 полезных ИИ, которые облегчат вашу жизнь

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

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

Узнайте, как автоматизировать рутинные операции с помощью умных ассистентов. Читайте наш обзор и выбирайте самые полезные инструменты для себя!

Читать далее
Всего голосов 20: ↑15 и ↓5+14
Комментарии8

Фильтрация избыточных вершин в геометриях 3D моделей

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров2.5K

Всем привет! Меня зовут Евгений, я backend‑разработчик в компании Bimeister. Сегодня я хотел бы продолжить рассказ о нашем 3D движке Spatium. В статье речь пойдет еще об одном из алгоритмов оптимизации - поиске и удалении избыточных вершин из 3D моделей.

Материал может представлять интерес для инженеров, связанных с проектированием и разработкой в области 3D.

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

Скачиваем кусок видео с YouTube с помощью ffmpeg

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

Я выступил с докладом на WordCamp US 2023 и захотел скачать видео с ним. Я всегда стараюсь хранить собственные копии таких видео, потому что некоторые конференции в прошлом со временем закрывали к ним доступ.

Моя презентация в прямом эфире транслировалась через YouTube, однако получившееся видео длится 9,5 часа!

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

Читать далее
Всего голосов 6: ↑5 и ↓1+6
Комментарии8

Анатомия игры. Два притопа, три прихлопа или тонкости анимации

Уровень сложностиСредний
Время на прочтение15 мин
Количество просмотров3.3K

Блин, опять правки по проекту в 3 часа ночи прислали…

Добрый день, дорогие хабражители!

 
Много ещё тем отделяют нас от полного понимания мироустройства игр. Много тонкостей, подходов и нюансов. Однако с каждым шагом мы становимся чуть ближе к этой заветной цели. На очереди у нас ещё одна сложная тема, которую я попытаюсь изложить максимально доступно. Речь пойдет об анимациях.
Читать дальше →
Всего голосов 28: ↑28 и ↓0+28
Комментарии2

Быстрый рендеринг океанских волн на мобильных устройствах

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


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


В этой статье мы хотели поговорить о моделировании волн в открытом море и представить алгоритм, который позволил достичь достаточно интересные результаты при приемлемых 25-30Fps на среднем китайфоне.

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

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность

Специализация

Game Developer
C#
Game Development
Unity3d
.NET
OOP
Algorithms and data structures
Computer graphics