Pull to refresh
4
0.8
Дмитрий Померанцев @pda0

User

Send message

Технология MIPS SIMD и процессор Байкал-Т1

Reading time42 min
Views17K

Коллеги из Байкал Электроникс предложили поработать с процессором Байкал-Т1 [L1] и написать о своих впечатлениях. Для них это способ рассказать разработчикам о возможностях и особенностях своего процессора. Для меня — шанс поближе познакомиться с системой на современном процессорном ядре и в будущем изобретать поменьше "велосипедов", добавляя, к примеру, новую функциональность в проект MIPSfpga-plus [L2]. Ну и обычное инженерное любопытство, опять же...


Сегодня речь пойдет о векторном расширении архитектуры MIPS SIMD, которое доступно в ядрах MIPS Warrior P-class P5600 [L3], а значит присутствует и в процессоре Байкал-Т1. Статья ориентирована на начинающих разработчиков.


Читать дальше →

Повороты экрана в Android без боли

Reading time8 min
Views37K
image

Важно!
Изначально в статье была реализация с ошибкой. Ошибку исправил, статью немного поправил.

Предисловие


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


Читать дальше →

Стресс-тест команды: как сделать GPU бенчмарк и не перегреться

Reading time19 min
Views36K
Привет, Хабр! Мы вернулись в блог с историей про свежий релиз. Команда UNIGINE в апреле выпустила новый GPU-бенчмарк Superposition с VR фичами. Мы набили новых шишек, изобрели пару десятков внезапных спасительных решений и новую технологию в 3D-графике.

Внутри поста много красивого рендера, несколько драм с техническим уклоном, 4,5 художника, злые модераторы Valve, расстроенные AMD, NVIDIA и Intel и коммиты из операционной. Заходите!


Лучшие приемы минималистичного дизайна

Reading time3 min
Views33K
Светлана Шаповалова, коммерческий автор и переводчик, специально для «Нетологии» адаптировала статью Ника Бабича — разработчика и фаната UI/UX, в которой он рассказал о лучших приемах минималистичного дизайна.

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


Читать дальше →

О возникновении спиралей в циклическом клеточном автомате

Reading time6 min
Views8.5K
О циклических клеточных автоматах было написано в этой статье. Целью данной статьи является рассмотрение условий возникновения спиралей, также известных как демоны. Средством достижения цели является изменение начальных условий и слежение за развитием клеточного автомата. В результате будут сделаны обобщающие выводы об условиях образования спиралей.

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


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


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



Как видно из рисунка выше, клеточный автомат проходит три этапа:

1. Случайное поле.
2. Цветные области.
3. Спирали, также известные как демоны.

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


Выберем несколько (например 12) случайных ячеек и рассмотрим изменение их состояний во времени.
Читать дальше →

Дизайн игрового процесса: как это работает в «больших» играх, и как повторить это в условиях инди

Reading time15 min
Views12K
В силу своего характера и темперамента, играя в игры, я всегда задаюсь вопросами:

  • Почему мне интересно?
  • Как авторы достигли такого эффекта?
  • Почему этот приём работает в этой игре, но выглядит лишним вон в той?
  • Почему игра вызвала такие обсуждения (плохие/хорошие)?
  • Что так (не) понравилось людям?
  • и т.п.

Ответы на подобные вопросы привели меня осознанию “закулисных” методов и приёмов создания игр. Здесь я имею ввиду механизмы, спрятанные за фасадом игры, которые управляют происходящим на экране. Делают игру целостной, гармоничной, глубокой и, следовательно, интересной. Именно об этом я сейчас попытаюсь рассказать.
Читать дальше →

Пост-эффекты в мобильных играх

Reading time8 min
Views27K


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

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

Помимо того, что пост-эффекты (точнее — их не очень грамотное использование) являются предметом ненависти среди игроков, они также едва ли не единственный способ быстро и дешево «оживить» и «освежить» картинку. Насколько качественным получится это «оживление» и не обернется ли оно в результате «свежеванием», зависит по большей части от художников.
Читать дальше →

Повесть о создании классической RTS в домашних условиях с нуля + разбор основных этапов разработки (AI, сеть и т.д.)

Reading time38 min
Views78K
image

В статье речь пойдет об одном очень не новом проекте, который создавался совсем в другое время и совсем в других условиях. Это моя старенькая RTS под названием Земля онимодов (Onimod land). Чтобы было сразу понятно, что она собой представляет, можно посмотреть коротенькое видео:
Читать дальше →

Реакция на пользовательские отзывы с целью повышения средней оценки

Reading time6 min
Views14K
image alt

Статьи на Хабре не проходят даром! Уже десятки инди-разработчиков осознают, что работа только начинается после публикации игры, но лишь единицы понимают, как важно отвечать на отзывы пользователей…

Обычно я стараюсь писать живые материалы на примере своих личных проектов, но через три часа мне сдавать отчёт по «Социальным коммуникациям в профессиональной среде» и хотелось бы получить некоторый фидбек, чтобы придать тексту вес. Так что добро пожаловать в мою первую статью потока «Маркетинг»! Этот магистр рад поделиться с вами пятью годами своего опыта; пускай в непривычном формате и ожидает от Вас того же.
Читать дальше →

Южная Корея: что нужно знать любому разработчику, который хочет локализовать свою мобильную игру

Reading time5 min
Views11K


Мы уже говорили с Джошем Бёрнсом о том, какие возможности есть у разработчиков мобильных игр в Японии. Джош — консультант с огромным опытом, который помогает ведущим разработчикам мобильных игр выходить на азиатские рынки. На этой неделе он поделился с нами своими знаниями о рынке Южной Кореи — одном из самых больших рынков в мире.

Переведено в Alconost

Что самое привлекательное в рынке мобильных игр Южной Кореи?


По сравнению со многими другими странами в Южной Корее невероятно высокий уровень проникновения смартфонов — самый высокий уровень в мире, примерно 88 процентов, в отличие от других других стран Азиатско-Тихоокеанского региона.
Читать дальше →

Разработка для Sailfish OS: Особенности работы с датами и временными зонами

Reading time7 min
Views3.2K
Здравствуйте! Данная статья является продолжением цикла статей, посвященных разработке приложений для мобильной платформы Sailfish OS. На этот раз речь пойдет об особенностях работы с датами и временными зонами в QML. Начнем статью с описания самой проблемы, а потом перейдем способам её решения.
Читать дальше →

Шпаргалка по управлению сервисами CentOS 7 с systemd

Reading time7 min
Views345K
Systemd – менеджер системы и сервисов в операционной системе Linux. При разработке eго стремились спроектировать обратно совместимым со скриптами инициализации SysV init и предоставить полезные функции, такие, как параллельный запуск системных сервисов во время загрузки, активацию демонов по требованию, поддержку снепшотов состояния системы и логику управления сервисами, основанную на зависимостях. В CentOS 7 systemd заменяет Upstart как систему инициализации по умолчанию.

В этой статье мы рассмотрим процесс управления сервисами в systemd для пользователя CentOS 7. Эти знания будут полезны и в других дистрибутивах, ведь systemd уже давно используется в Fedora и планируется в Ubuntu 14.10 и Debian 8. Хорошо это или нет — оставим за кадром.

CentOS 7 Systemd Infobox

В процессе чтения статьи вы можете попробовать systemd на классических VPS и облачных VPS от Infobox. Мы стремимся своевременно добавлять поддержку современных ОС, чтобы вы могли использовать последние технологии для более эффективной работы. Сама идея написания статьи родилась после очередного вопроса пользователей об использовании сервисов в CentOS 7.
Читать дальше →

Типографика: процесс выбора шрифта

Reading time5 min
Views26K
Один из самых ценных навыков, которые может освоить дизайнер — это умение подбирать шрифты. Это объясняется тем, что текст является одним из основных способов коммуникации дизайнера с пользователем. Типографика имеет решающее значение для дизайна.


Типографика — вещь сложная и красивая. Некоторые посвящают работе с ней всю свою карьеру. К счастью для нас, они подробно описывают свой опыт, поэтому к нашим услугам имеется целая куча онлайн-ресурсов на тему типографики.

Эта статья замышлялась как небольшое введение для тех, кто хочет научиться правильно подбирать шрифты для дизайна. Она подтолкнёт вас к тому, чтобы расширять набор шрифтов и их сочетаний, которые вы используете в макетах, не ограничиваясь хорошо знакомыми вариантами.
Читать дальше →

Псевдотонирование изображений: одиннадцать алгоритмов и исходники

Reading time12 min
Views30K

Псевдотонирование: обзор



Про сегодняшнюю тему для программирования графики — псевдотонирование (дизеринг, псевдосмешение цветов) — я получаю много писем, что может показаться удивительным. Вы можете подумать, что псевдотонирование — это не то, чем программисты должны заниматься в 2012 году. Разве псевдосмешение — не артефакт история технологий, архаизм времён, когда дисплей с 16 миллионами цветов программистам и пользователям мог только сниться? Почему я пишу статью о псевдотонировании в эпоху, когда дешевые мобильные телефоны работают с великолепием 32-битной графики?

На самом деле псевдотонирование по-прежнему остаётся уникальным методом не только по практическим соображениям (например, подготовка полноцветного изображения для печати на чёрно-белом принтере), но и по художественным. Дизеринг также находит применение в веб-дизайне, где этот полезный метод используется для сокращения числа цветов изображения, что уменьшает размер файла (и трафик) без ущерба для качества. Он также используется при уменьшении цифровых фотографий в формате RAW в 48 или 64 бита на пиксель до RGB в 24 бита на пиксель для редактирования.

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

Алгоритм Джонкера-Волгенанта + t-SNE = супер-сила

Reading time9 min
Views32K
До:



После:



Заинтригованы? Но обо всем по порядку.

t-SNE


t-SNE — это очень популярный алгоритм, который позволяет снижать размерность ваших данных, чтобы их было проще визуализировать. Этот алгоритм может свернуть сотни измерений к всего двум, сохраняя при этом важные отношения между данными: чем ближе объекты располагаются в исходном пространстве, тем меньше расстояние между этими объектами в пространстве сокращенной размерности. t-SNE неплохо работает на маленьких и средних реальных наборах данных и не требует большого количества настроек гиперпараметров. Другими словами, если взять 100 000 точек и пропустить их через эту волшебный черный ящик, на выходе мы получим красивый график рассеяния.
Читать дальше →

Конкурсы инди-игр: 12 советов для разработчиков

Reading time5 min
Views16K


Шансов, что среди 5 миллионов мобильных приложений пользователи случайно заметят ваше, к сожалению, немного. Для привлечения внимания индустрии и игроков многие маленькие студии участвуют в конкурсах вроде Casual Connect Indie Prize или DevGAMM Awards.

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

Япония: как преуспеть на самом крупном рынке мобильных игр в Азии

Reading time4 min
Views9.8K


В сфере игр меня, среди прочего, увлекает то, насколько их потребление может отличаться в разных странах в зависимости от множества факторов, среди которых — размер рынка, вкусы потребителей и даже политика. Мы в Alconost перевели беседу с Джошем Барнсом — опытным специалистом, работавшим с ведущими компаниями-разработчиками мобильных игр, например Zynga, Ludia и многими другими студиями: Джош помогает совершать «стратегические набеги» на азиатские рынки. Он рассказал об индустрии мобильных игр в Японии, а именно о том, что делает ее настолько отличной от многих других рынков, и что понадобится издателю западной игры, чтобы добиться там успеха.

Что именно делает японский рынок мобильных игр таким интересным?


В первую очередь — огромные возможности: население Японии составляет менее половины (40 %) от населения США, однако рынок мобильных игр при этом не уступает американскому. Также известно, что средний доход на скачивание в случае японских пользователей невероятно высок: несколько лет назад он составлял более 5 долл. США для приложений любой категории (игровых и неигровых), а теперь он, скорее всего, еще выше.
Читать дальше →

Inkscape в действии: закат со звездами

Reading time4 min
Views13K
Исполнив ранее другой проект с закатом, мы не проявляем страхов, вызванных возвращением к подобному проекту. В нем звезды добавляются отличным образом, так что не будем упускать время и займемся им. На обложке нашего журнала в этом месяце возможно наблюдать картинку, нарисованную соответствующим образом.
Читать дальше →

Отслеживаем ресайзинг элемента без setTimeout и фреймов

Reading time3 min
Views18K
image
Наверно каждый WEB-разработчик когда-либо сталкивался с проблемой отслеживания события resize на странице. И если для window это сделать сможет любой новичок, то для остальных элементов эта задача принесет немало головной боли. Если вы относитесь к этой категории людей, то добро пожаловать под кат.
Читать дальше →

Выделение подпроекта в отдельный репозиторий на github

Reading time3 min
Views19K

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


Итак, что дано:


  • Есть большой репозиторий, содержащий множество папок. Каждая папка – это отдельный проект.

Что необходимо сделать:


  • Одну из папок перенести в отдельный репозиторий с сохранением ее истории коммитов.

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


Я использовал стандартный гитовый filter-branch. За основу я взял следующие статьи:



В этом посте я хочу немного адаптировать процесс для лучшего восприятия.

Читать дальше →

Information

Rating
2,642-nd
Location
Химки, Москва и Московская обл., Россия
Date of birth
Registered
Activity