Pull to refresh
7
0
Георгий @NorthernEyes

User

Send message

Технология быстрого создания фонов для 2D-игр на базе 3D-заготовок (48 часов разработки)

Reading time15 min
Views150K

Вместо предисловия


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

Перед тем как начать я хотел бы сделать акцент на двух положениях:
Первое. Мы исходим из того что читатель знаком с такими пакетами как 3D Studio MAX (либо любым другим пакетом трехмерного моделирования) и Photoshop (или любым его аналогом). В данном конкретном случае я собираюсь использовать терминологию этих двух пакетов. Однако, не смотря на это те же самые принципы можно использовать, пользуясь любым другим софтом.

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

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

Хочу также отметить, что я не причисляю себя к мастерам, которые делают шедевры. Данное примечание я делаю для тех злых людей, которые говорят (или скажут после публикации), что я заносчив, что меня занесло под небеса, и тех кто вместо того чтобы работать предпочитает злословить словно ябедник Кийр из моей любимой книги Оскара Лутса «Весна».

С преамбулами покончено перейдем к сути.

Я утверждаю и не беспочвенно, что хороший фон можно и нужно создавать не за неделю, не за пять дней и даже не за три. Чтобы сделать хорошую картинку для казуальной игры, без разницы i-spy это, match-3 или аркада, достаточно 48 часов. Разумеется, при условии того, что человек занимается работой, а не просиживанием штанов.

image

Читать дальше →
Total votes 293: ↑288 and ↓5+283
Comments102

Несколько полезных сервисов

Reading time2 min
Views125K
Хочу поделиться ссылками на несколько полезных сервисов. Некоторые из них помогут сэкономить время, другие — сделают за Вас незнакомую/нелюбимую работу. Список разбит по категориям, чтобы было легче ориентироваться.

Сервисы опросов
userreport.com (добавил Romanych)
simpoll.ru
webanketa.com (добавил mihass)

Кнопки постинга в социальные сети
Кнопка от Яндекса
addthis.com (добавил UksusoFF)
share42.com
Читать дальше →
Total votes 381: ↑355 and ↓26+329
Comments108

Памятка пользователям ssh

Reading time13 min
Views1.5M
abstract: В статье описаны продвинутые функций OpenSSH, которые позволяют сильно упростить жизнь системным администраторам и программистам, которые не боятся шелла. В отличие от большинства руководств, которые кроме ключей и -L/D/R опций ничего не описывают, я попытался собрать все интересные фичи и удобства, которые с собой несёт ssh.

Предупреждение: пост очень объёмный, но для удобства использования я решил не резать его на части.

Оглавление:
  • управление ключами
  • копирование файлов через ssh
  • Проброс потоков ввода/вывода
  • Монтирование удалённой FS через ssh
  • Удалённое исполнение кода
  • Алиасы и опции для подключений в .ssh/config
  • Опции по-умолчанию
  • Проброс X-сервера
  • ssh в качестве socks-proxy
  • Проброс портов — прямой и обратный
  • Реверс-сокс-прокси
  • туннелирование L2/L3 трафика
  • Проброс агента авторизации
  • Туннелирование ssh через ssh сквозь недоверенный сервер (с большой вероятностью вы этого не знаете)
Читать дальше →
Total votes 360: ↑352 and ↓8+344
Comments148

Памятка дизайнеру сайтов

Reading time10 min
Views244K
Вторая версия статьи, расширенная и дополненая.

Большая часть готовилась для моего выступления на «РИТ: Клиентские технологии», куда я, к сожалению, не доехал.

 

Памятка дизайнеру сайтов

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

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

Читать дальше →
Total votes 453: ↑444 and ↓9+435
Comments231

Интернет магазин — 15000 евро за первый месяц

Reading time6 min
Views90K
В народе есть известная поговорка „Первый Блин Комом“, чего не могу сказать о своём свежем опыте интернет торговли. Скорее всего, это просто исключение подтверждающее правило, но, тем не менее, хочется рассказать о тех небольших выводах, что я сделал за последний месяц.

Итак, небольшая история о том, как можно довольно легко заработать за один месяц минимум 15 000 евро.

Мой профессиональный род деятельности — веб-разработка. Занимаюсь R&D в одной небольшой IT компании, пишу «навороченные» приложения для корпоративных интранетов и, в принципе, на жизнь не жалуюсь. Конечно, при таком раскладе хочется параллельно вести какой-нибудь интересный проект, чем неоднократно занимался в мире Open Source. Со временем, правда, захотелось на побочных проектах так же как-то зарабатывать, что с Open Source оказалось не так просто, как может показаться из статей на Хабре :) Потому и решил попробовать для себя что-то принципиально новое — открыть интернет магазин.

Читать дальше →
Total votes 517: ↑493 and ↓24+469
Comments389

12 приемов художников Disney для оживления анимации

Reading time1 min
Views74K


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

Стоит вспомнить, что эти принципы (в продолжении они все показаны) созданы группой аниматоров, ставших основой Disney. Эта группа даже получила название "9 стариков Диснея".

Читать дальше →
Total votes 100: ↑83 and ↓17+66
Comments79

Ближайшее будущее аккумуляторных батарей

Reading time33 min
Views107K
В последние годы все острее встает вопрос усовершенствования мобильных источников энергии — вопрос как глобальный, так и повседневный. Глобальная сторона заключается в том, что человечество, остро нуждаясь в энергии в любой её форме, выбрало в качестве свободноконвертируемой электрическую. Причина – относительно низкие потери при обратном переводе из электрической в любую другую, а так же низкие потери при передаче от точки выработки (электростанция) до стационарной точки потребления (э/розетка). Основным источником электроэнергии на сегодняшний день является сжигание на ТЭС невозобновляемого углеводородного топлива, которого с каждым годом все меньше, а цена всё выше. Основной вред окружающей среде наносят тем не менее не ТЭС, а двигатели внутреннего сгорания автомобилей, в виду компактности не столь эффективные и оснащенные не столь же хорошими системами очистки.
Все говорит, что работай автомобили на электротяге, наш мир стал бы намного чище, а жизнь со временем даже дешевле

Но вряд ли многие из нас, не считая борцов за зеленый мир, и даже считая оных, думают об этом каждый день. Гораздо чаще мы вспоминаем недобрым словом какой-нибудь значок на дисплее нашего ноутбука или телефона, увидев что пользоваться им осталось минут 20. И вопрошаем:”Ну когда же они сделают нормальную батарейку, а?”.
Читать дальше →
Total votes 269: ↑249 and ↓20+229
Comments141

Локализация с AngularJS

Reading time5 min
Views36K
imageДобрый день, уважаемые Хабражители.

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

Существует несколько способов локализации и мы рассмотрим несколько из них.
Рассмотрим...
Total votes 18: ↑18 and ↓0+18
Comments10

Функциональный Javascript. Пишем свои линзы, часть 1

Reading time7 min
Views28K
Привет, хабр.
В данной статье мы познакомимся с линзами, узнаем для чего они нужны, а также реализуем их на JavaScript.

Зачем нужны линзы


Начнем, пожалуй, с ответа на вопрос, зачем же нужны линзы.

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

В основе этого лежит тот факт, что при изменении какой-либо части неизменяемой структуры данных создается ее копия, отличающаяся от оригинала этой самой измененной частью. Полное копирование всей исходной структуры не эффективно, поэтому новая структура как правило использует ссылки на неизмененные части из оригинала.
Читать дальше →
Total votes 53: ↑48 and ↓5+43
Comments42

Как написать свой компонент для iOS

Reading time23 min
Views18K
image

Элементы управления — одна из самых важных составляющих любого приложения. По сути они являются графическими компонентами, которые позволяют пользователям тем или иным образом взаимодействовать с приложением и его данными. Этот урок посвящен созданию кастомного элемента управления, который в дальнейшем можно будет использовать в любом приложении.
Читать дальше →
Total votes 41: ↑35 and ↓6+29
Comments7

Ежемесячные расходы дизайн-студии на электроные сервисы

Reading time2 min
Views46K
Поговорим о ежемесячных тратах на электронные сервисы, которые необходимы для работы небольшой студии с удалённой командой, занимающейся дизайном в интернете. Давайте посмотрим, какими платными сервисами мы пользуемся в Genue.



50$. Basecamp



image

Простая и удобная система управления проектами от команды 37signals. Это основной инструмент взаимодействия как внутри студии, так и с заказчиками. Все задачи заводятся в виде простых списков и легко меняются местами друг с другом простым перетаскиванием. Каждая задача выглядит как публикация с комментариями. Любой может указывать, кто из команды получит уведомление на email о его комментарии. Можно ограничивать видимость некоторых задач для клиента.
Читать дальше →
Total votes 109: ↑100 and ↓9+91
Comments83

Резервное копирование на хардлинках под Windows

Reading time9 min
Views70K
Я, как и многие, задумывался о бэкапах. Неспешно думал-думал, рассматривал разные варианты, пока не сгорел винчестер на ноутбуке жены. Это печальное событие подстегнуло мою активность, результат которой хочу представить в этой статье.

Речь пойдет о резервном копировании. Я буду подробно обсуждать именно свою задачу. Возможно, у кого-то обстоятельства чем-то отличаются, но и таких как я должно быть достаточно много. Поэтому, надеюсь, мои советы окажутся полезными большому числу людей.
Читать дальше →
Total votes 44: ↑31 and ↓13+18
Comments81

Пишем красивый идиоматический Python

Reading time4 min
Views112K

Иногда сложно найти в Сети правильные, а главное актуальные «best practices» для языка. Документация, конечно же, содержит всю необходимую информацию, но отсеять нужную вещь в абзацах подробного (на то она и документация) описания довольно сложно. Но недавно мне улыбнулся поиск Google, и я наткнулся на очень полезные «паттерны» языка Python от одного из core разработчиков — Raymond Hettinger.

Примечание: Все рекомендации даны в нескольких вариантах: сначала идут самые «плохие» варианты, а дальше предлагается лучшая альтернатива. Актуально для версии языка 2.7, отличия для версии 3.3 читайте в примечаниях к конкретному «паттерну».
Читать дальше →
Total votes 125: ↑99 and ↓26+73
Comments71

Android In-app purchasing: платное отключение рекламы в своём приложении

Reading time6 min
Views41K
Много раз уже просили написать статью о том, как в приложении реализовать платное отключение рекламы. По In-app уже были статьи на хабре. Правда, они старую версию API рассматривали. В принципе, новая версия не особо то и отличается от старой. Была похожая статья, но там больше именно про отображение рекламы рассказывалось, а второй части статьи мы так и не увидели. Как оказалось, многим до сих пор интересен этот вопрос, решил написать как это реализовать в своём приложении.
Читать дальше →
Total votes 37: ↑29 and ↓8+21
Comments18

Программирование как образ жизни

Reading time5 min
Views79K
«Человек добился успеха, если он встает утром и ложится спать вечером, а в промежутке занимается тем, чем хочет»
— Боб Дилан

Я – программист по образу жизни. Я в одиночку работаю программистом, чтобы обеспечить себя интересной, полезной, гибкой и хорошо оплачиваемой работой. У меня нет инвесторов, я не собираюсь нанимать сотрудников, не говоря уже о том, чтобы стать следующим Google или Facebook. У меня нет личного самолета, и мое лицо вряд ли скоро появится на обложке Newsweek. Меня это устраивает.
Читать дальше →
Total votes 144: ↑137 and ↓7+130
Comments105

Подробное руководство по разработке мобильных приложений AngularJS

Reading time14 min
Views47K
Мобильные приложения, это не будущее разработки, это уже настоящее. В настоящее время пользователей мобильных приложений уже 1.2 млрд. человек, и это количество постоянно растет (Wikipedia). Вскоре количество мобильных устройств превзойдет количество людей на планете. Если скорость роста количества мобильных устройств останется неизменной, то к 2017 году ими будут пользоваться 5.1 млрд. человек.
Для нас, как для разработчиков приложений, важно разрабатывать свои приложение с учетом мобильных пользователей, если мы хотим чтобы они были востребованы. В AngularJS реализована поддержка мобильных устройств, написанная как командой AngularJS, так и сообществом.
В этой статье мы будем работать с двумя различными способами, чтобы дать читателям опыт в разработке мобильных приложений.
Читать дальше →
Total votes 39: ↑36 and ↓3+33
Comments9

Немного о независимых игровых разработчиках

Reading time8 min
Views50K
Так случилось, что я уже длительное время занимаюсь фултайм инди разработкой. Это значит, что единственный источник дохода — это игры, которые я делаю не на заказ. Никакого фриланса или удаленной работы. Параллельно явлюясь соведущим подкаста для инди разработчиков, где гости рассказывают каково это быть независимыми разработчиками в той или иной части рынка, используя определенную технологию и целясь на какие-то платформы. Эта статья — небольшой FAQ по частым вопросам, которые приходят.

Читать дальше →
Total votes 104: ↑99 and ↓5+94
Comments22

Dependency Injection в Objective-C с Магией и Кровью

Reading time5 min
Views16K

Разделения на MVC недостаточно


С каждым днем iOS приложения становятся все более громоздкими, в следствие чего одного MVC становится мало.

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

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

[[RequestManager sharedInstance] loadResourcesAtPath:@"http://example.com/resources" withDelegate:self];
// или
[[DatabaseManager sharedManager] saveResource:resource];

Этот подход используется во множестве проектов, но он имеет некоторые недостатки:

  • синглтон, который используется внутри тестируемого класса, тяжело заменить на mock-объект
  • по сути синглтон это глобальная переменная
  • с точки зрения SRP объект не должен контролировать свое Singleton'овское поведение

Первую проблему решить довольно просто — нужно использовать свойства:

@interface ViewController : UIViewController

@property (nonatomic, strong) RequestManager *requestManager;

@end

Но этот подход имеет другие минусы — теперь кто-то должен «заполнить» это свойство.
Магия Крови способствует решению этой проблемы.
О том как стать адептом
Total votes 15: ↑14 and ↓1+13
Comments23

Blur в iOS7

Reading time2 min
Views31K
С седьмой версией iOS многие элементы UI стали выглядеть привлекательнее (см. Session 226, Implementing Engaging UI on iOS).

Например, теперь поп-оверы, большинство баров и алерты имеют размытый фон.



Что делать, если хочется добавить блюр в свой контрол, подскажет эта статья.
Читать дальше →
Total votes 64: ↑52 and ↓12+40
Comments25

Xcode: управляем зависимостями собственных библиотек в проектах. Cocoapods advanced

Reading time5 min
Views21K
Cocoapods – это менеджер зависимостей библиотек в Xcode проектах. Я не буду рассказывать, как с его помощью подключить в проект уже существующую библиотеку, информации достаточно, в том числе и эта статья на Хабре. Я расскажу что делать, если вы не нашли нужную вам библиотеку в списке, или, что ещё хуже, вы хотите создать свою библиотеку и, как вариант, не делать её доступной.

Читать дальше →
Total votes 20: ↑19 and ↓1+18
Comments5
1

Information

Rating
Does not participate
Location
Челябинск, Челябинская обл., Россия
Date of birth
Registered
Activity