Как стать автором
Обновить
2
0
Тимофей Трофимов @TuMoXEP

Уверенный пользователь ЭВМ

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

«Галоп пикселя — часть первая» — базовые понятия, этапы взросления, прикладные упражнения

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


«Галоп пикселя», часть I — базовые понятия, этапы взросления, прикладные упражнения (линк)
«Галоп пикселя», часть II — перспектива, цвет, анатомия и прикладные упражнения (линк)
«Галоп пикселя», часть III — Анимация (линк)
«Галоп пикселя», часть IV — Анимация света и тени (линк)
«Галоп пикселя», часть V — Анимация персонажей. Ходьба (линк)
«Галоп пикселя», часть VI — Анимация персонажей. Бег (линк)

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

В данной публикации мы не рассматриваем программы, но копаем нечто большее. Сами пиксели. От истоков, начав с четырехцветной CGA-эры, вплоть до эпохи ренессанса. В публикации мы не рассматриваем игры, не поем дифирамбы художникам прошлого (разве что самую малость), занимаясь именно процессом создания простейшего пиксель-арта. Данный материал будет интересен начинающим артистам и интересующимся. Статья практически не содержит теории, нудных умозаключений и представляет сторонний взгляд на мир пиксель-арта со стороны некоего самоучки, который предпочел открыть каждую из Америк самостоятельно, не оглядываясь на официальных, общепризнанных и задокументированных Колумбов. Статья снабжена обильным количеством поясняющих иллюстраций, примеров, и советов.

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


Лопатить пиксели
Всего голосов 190: ↑185 и ↓5+180
Комментарии86

Что нужно знать, чтобы хорошо рисовать?

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


Давид Ревуа — прекрасный художник, работающий со свободным программным обеспечением, постоянный член сообществ Krita Foundation и Blender Institute, концепт-художник анимационных проектов Gooseberry Open Movie Project, Mango Open Movie Project (Tears of Steel) и Durian Open Movie Project (Sintel). В этой статье он делится с начинающими художниками списком знаний, которые необходимо приобрести, чтобы работы получались реалистичными. Он обращает внимание, что для рисования «в цифре» следует обзавестись теми же навыками, что и в традиционной технике. Итак, приобщимся к его опыту.
Читать дальше →
Всего голосов 134: ↑128 и ↓6+122
Комментарии113

Преобразование Фурье в действии: точное определение частоты сигнала и выделение нот

Время на прочтение12 мин
Количество просмотров234K
последняя редакция статьи доступна на сайте makeloft.xyz

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

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

image

Читать дальше →
Всего голосов 74: ↑72 и ↓2+70
Комментарии49

Arduino за 1$

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


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

Скажу за себя — мне Arduino нравится. Тем, что можно быстро что-нибудь работающее соорудить. По сути, мне не нравятся только цены. Ну, дорого же. Модуль на порядок дороже использованного в нем микроконтроллера. Такие размышления неоднократно подталкивали меня к тому, чтобы «соскочить», но потом я открывал Aliexpress и заказывал очередную порцию. Китайская версия Arduino Nano — 3-4$. Pro Mini (без USB) — 2-3$.

Потом стало интересно — а где предел минимальной розничной (или микрооптовой) цены. Но так, чтобы можно было работать, а не искать хаки с целью сэкономить пару байт. Пара вопросов к всемирному разуму, кратчайшее изучение матчасти, решение: «Буду ковыряться с ATTiny, но чтобы с Arduino».
Стоя и в гамаке
Всего голосов 95: ↑83 и ↓12+71
Комментарии128

Из дневника призера первой Всероссийской олимпиады по программированию для школьников 1989 года

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

(из личного архива Даниэля Алиевского: «Второй слева — Илья Жильцов, светлая ему память. Я стою за ним, моя голова третья слева»)

(про саму олимпиаду Первая Всероссийская олимпиада школьников по программированию (информатике) 1989 года)

По моей просьбе Даниэль (http://algart.net) поделился воспоминаниями:

«Мы, т.е. свердловская „команда“ из 2 человек — первые два места с областной олимпиады, Максим Стацюк и я — вылетели в Красноярск ночью с 18 на 19 марта 1989 года. Рано утром мы наконец добрались до гостиницы. В гостиницах до той поры я никогда не был, только читал про них в книжках, и впечатление от советской гостиницы получилось довольно тяжелое. Но жить можно было. Даже был туалет и душ в номере, а вообще номер был рассчитан на двоих. Не так плохо, по советским временам! (Позже, на Всесоюзной, я понял, что бывает и хуже.)

Первый день был потрачен на сон (4 часа) и, конечно же, на карты, в которые мы резались со Стацюком и ребятами из других городов до полтретьего ночи. 3.40 — все же отбой.

Выспаться, впрочем, не получилось, поскольку с 9 утра, после завтрака, следовало снова заняться делом, а именно картами. Ну а после 3 дня мы все пошли по магазинам. Красноярск — большой город, интересный для новичков. С семи вечера и до 0.30 — снова карты, пока нас не разогнала наша руководительница, которая и привезла нас с Максимом из Свердловска. Кстати, очень милая девушка, звали, если не ошибаюсь, Виктория Викторовна.
Читать дальше →
Всего голосов 60: ↑46 и ↓14+32
Комментарии26

Ractiv Touch+: перспективный аналог Leap Motion

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


На Хабре не раз и не два упоминали систему сенсорно-жестового управления ПК, получившую название Leap Motion. Само собой, такая интересная технология не могла не вызвать появление аналогов, и недавно на рынке появилась система Ractiv Touch+.

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

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

ECS LIVA: мини-ПК с Intel Bay Trail за 180 долларов США

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


Различные производители создают все более интересные мини-десктопы, и на днях появился еще один представитель этого семейства, ECS LIVA. Производительной систему назвать вряд ли можно, система основана на Intel Bay Trail процессоре, плюс 2 ГБ ОЗУ, плюс 32 ГБ внутренней памяти (eMMC).

Но система очень небольшая по размеру, 4.6″ x 2.8″ x 2.2″, плюс производитель просит за свой мини-ПК всего 180 долларов. Предустановленной ОС нет.

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

Молекулярный компьютер 3000000 вековой давности

Время на прочтение5 мин
Количество просмотров44K
Говорят, что все изобретения человечества были «подмечены» у природы, или хотя бы имеют природные аналоги; например, у самолёта в природе есть аналог — птица. А есть ли аналог компьютера и компьютерных программ?
Это — биологическая клетка, которая и будет рассмотрена в этом посте с точки зрения программиста, как молекулярный компьютер. Вы узнаете, что многие современные способы и алгоритмы обработки информации появились не в 1980-х годах, а на многие миллионы лет раньше.

Читать дальше →
Всего голосов 125: ↑117 и ↓8+109
Комментарии73

Простые догмы при работе с цветом в интерфейсах

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

Привет, username!

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

Читать дальше →
Всего голосов 149: ↑131 и ↓18+113
Комментарии128

Выразительный JavaScript: Введение

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


Перевод книги Marijn Haverbeke "Eloquent JavaScript". Лицензия Creative
Commons attribution-noncommercial license
. Код предоставляется под лицензией MIT.


Содержание



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

Всё, что вы хотели знать об областях видимости в JavaScript (но боялись спросить)

Время на прочтение8 мин
Количество просмотров82K
У JS есть несколько концепций, связанных с областью видимости (scope), которые не всегда ясны начинающим разработчикам (и иногда даже опытным). Эта статья посвящена тем, кто стремится погрузиться в пучину областей видимости JS, услышав такие слова, как область видимости, замыкание, “this”, область имён, область видимости функции, глобальные переменные, лексическая область видимости, приватные и публичные области… Надеюсь, по прочтению материала вы сможете ответить на следующие вопросы:

— что такое область видимости?
— что есть глобальная/локальная ОВ?
— что есть пространство имён и чем оно отличается от ОВ?
— что обозначает ключевое слово this, и как оно относится с ОВ?
— что такое функциональная и лексическая ОВ?
— что такое замыкание?
— как мне всё это понять и сотворить?
Читать дальше →
Всего голосов 57: ↑47 и ↓10+37
Комментарии38

Исследователи восстановили звук из колебаний предметов на видеозаписи

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


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

В работе Эйб Дэвис, Майкл Рубинштейн, Нил Вадхва, Гаутам Майсор, Фредо Дуранд и Уильям Фриман использовали камеру, записывающую видео с частотой несколько тысяч кадров в секунду, и такие распространённые и подверженные вибрациям предметы, как фольга пакета чипсов, листья комнатного растения, грань коробки с салфетками или стакан с водой. Найти подобную видеокамеру в быту будет достаточно сложно, но их другая техника показала, что восстановление звука возможно и с помощью обычной записи частотой 60 кадров в секунду.

Качество восстановленного звука позволяет разделять отдельные слова и имеет относительно высокие показатели отношения сигнал-шум. Восстановленные аудиозаписи даже позволяют смутно различать речь человека или использовать сервисы распознавания музыки.
Читать дальше →
Всего голосов 58: ↑57 и ↓1+56
Комментарии42

Платформер на Three.js

Время на прочтение6 мин
Количество просмотров38K
На днях мистер Дуб принял мой первый pull request с примером в Three.js, и на радостях я решился написать о нём хабропост. Если вам вдруг захочется написать трёхмерный платформер на Three.js, но вы не особо представляете себе, как это сделать, этот пример — для вас:



Весь код примера занимает менее 300 строк, щедро разбавленных переносами, разобраться в которых самостоятельно не составит особого труда. Однако, чтобы ещё больше облегчить вашу участь, я напишу немного ниже пару слов о ключевых моментах.
Почитать, что ли...
Всего голосов 81: ↑76 и ↓5+71
Комментарии7

Пять способов выгореть для программиста

Время на прочтение4 мин
Количество просмотров113K
imageОт переводчика
Выгорание в жизни программиста может случиться по самым разнообразным причинам; если задаться целью перечислить все пути, которыми оно подкрадывается к нам, то одно лишь это перечисление займет немало времени. Это еще один повод, по которому не стоит недооценивать процесс выгорания — иначе однажды вам придется искать дорогу обратно, и стоить это может очень дорого. Последняя строка вовсе не голословна — мне самому однажды смогла помочь лишь любовь к коду — когда уже, казалось бы, все осточертело и ничего не хотелось, чтение подвернувшегося Макконнелла навеяло воспоминания о том, как же когда-то мне нравилось программировать. И сегодня мне нравится делать это снова.
А теперь — слово автору.

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

1. Думать о проекте и только о нем


Признайтесь себе: бизнес хочет, чтобы вы создавали наилучший продукт «для наших клиентов». Вы откладываете в долгий ящик какой-либо функционал из-за того, что не успеваете к дедлайну. Вы планируете проект и анализируете его со всех сторон для того, чтобы разбить на несколько «перевариваемых» частей, которые затем должны быть воплощены одним из кодеров (в роли обезьянки, или code monkey, кстати говоря, можете быть и вы один). Вы создаете рабочий прототип, затем получаете обратную связь и делаете еще одну итерацию. И все это — без единой мысли о себе любимом.
Читать дальше →
Всего голосов 170: ↑150 и ↓20+130
Комментарии149

Как «открыть» микросхему и что у неё внутри?

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

Эту завесу тайны мы сегодня и приподнимем, и поможет нам в этом — серная и азотная кислота.

Внимание! Любые операции с концентрированными (а тем более кипящими) кислотами крайне опасны, и работать с ними можно только используя соответствующие средства защиты (перчатки, очки, фартук, вытяжка). Помните, у нас всего 2 глаза, и каждому хватит одной капли: потому все что тут написано — повторять не стоит.
Читать дальше →
Всего голосов 227: ↑222 и ↓5+217
Комментарии99

Вы можете развить свой интеллект: 5 способов максимально улучшить свои когнитивные способности

Время на прочтение17 мин
Количество просмотров509K
Не стоит преследовать цели, которые легко достичь. Стоит нацеливаться на то, что удается сделать с трудом, приложив немалые усилия — Альберт Эйнштейн

Несмотря на то, что Эйнштейн не был нейробиологом, он точно знал все, когда говорил о способности человека добиваться чего-либо. Он интуитивно догадывался о том, что лишь сегодня нам удалось подтвердить с помощью данных, а именно: что заставляет когнитивные способности работать на максимально высоком уровне. По существу: То, что тебя не убивает, делает тебя умнее.
Читать дальше →
Всего голосов 167: ↑135 и ↓32+103
Комментарии108

Квантовый парадокс Зенона

Время на прочтение4 мин
Количество просмотров59K
image
Картинка для привлечения внимания, но относящаяся к теме.
Привет, хабр!
Хотите немного размять свои мозги? «Жили-были древние греки. Хорошо жили, потому что вместо них трудились рабы. И было древним грекам очень скучно: работать не привыкли, заняться нечем. Смастерили лиру для музицирования, придумали театр, геометрию, математику, философию и прочие науки, а развлечений всё равно не хватало.
И тут на помощь страждущим пришёл Зенон Элейский с его так называемыми апориями — парадоксами, предназначенными для изрядной нагрузки на мозги современников.

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

В самом деле, если движения не существует в принципе, то зачем зря стараться, куда-либо идти и что-то делать, достаточно просто лежать на травке под акациями и мудрствовать лукаво над тайнами Вселенной.
Заинтересовало? Добро пожаловать под хабракат (привёл несколько ссылок на учебники квант.физики).
Читать дальше →
Всего голосов 67: ↑52 и ↓15+37
Комментарии45

Истинное могущество регулярных выражений

Время на прочтение16 мин
Количество просмотров94K
Как частый посетитель тэга PHP на StackOverflow, я очень часто встречаю вопросы о том, как распарсить какие-то конкретные аспекты HTML, используя регулярные выражения. Самый распространённый ответ на это:
«Ты не можешь парсить HTML с помощью регулярных выражений, потому что HTML не является регулярным. Используй XML парсер, и будет тебе счастье»

Это утверждение — в контексте вопроса — находится где-то между сильно вводящим в заблуждение и абсолютно неправильным. Что я хочу попытаться продемонстрировать в этой статье, так это то, насколько могущественны современные регулярные выражения на самом деле.
Читать дальше →
Всего голосов 182: ↑172 и ↓10+162
Комментарии39

SimplePHPEasyPlus: Складываем числа на PHP

Время на прочтение2 мин
Количество просмотров39K
На ранних стадиях развития интернета, разработчикам приходилось использовать бедные, убогие языки программирования. Приходилось использовать только функции и операторы. Никаких объектов, никаких интерфейсов, никакого dependency injection!

Скажем, чтобы выполнить простую операцию сложения, нашим отцам приходилось писать: 1+1. Да, серьезно.

Но теперь-то у нас есть PHP 5.3 с отличной имплементацией ООП! Представляем библиотеку SimplePHPEasyPlus! SimplePHPEasyPlus позволит вам складывать два числа современным способом, с использованием ООП. Он быстрый, простой, гибкий и оттестированный. Чтобы добавить 1 к 1, нужно всего лишь выполнить следующее:
Читать дальше →
Всего голосов 219: ↑173 и ↓46+127
Комментарии69

Немного о создании демок, часть 1

Время на прочтение8 мин
Количество просмотров17K
Здравствуйте!
Эта статья, прежде всего для новичков, тех, кто только решил заняться демосценой, если статья будет положительно принята сообществом, то я сделаю цикл из нескольких статей о создании демок. Каждая статья будет короткой, но в конце каждой статьи будет вполне рабочий пример.
Сразу предупрежу, эта статья не о том как делать Demo с помощью OpenGL, DirectX, и миллионов шейдеров, об этом есть много хороших статей, я буду писать о рисовании в памяти.
Подробности
Всего голосов 41: ↑38 и ↓3+35
Комментарии19

Информация

В рейтинге
Не участвует
Откуда
Чебоксары, Чувашия, Россия
Дата рождения
Зарегистрирован
Активность