Как войти в IT?
Цель раздела — это попытка донести, что оценивать перспективы и возможности нужно трезво.
Обращение к тем, кто идет ради денег. Есть множество других способов их заработать. В IT есть потолок по зарплате, а достичь его не просто.
Важно понимать, что IT не для всех. Но как говорится, чужой двор всегда зеленее. Например, почему-то многие думают, что тестирование — легко и пытаются войти в IT через тестирование. Сидишь и что-то там нажимаешь, ну вроде работает, пытаешься ввести абракадабру в поле для номера телефона и смотришь, что все ок или не ок. Это далеко не так, глупо идти с такими мыслями. В программировании также не все просто, одного курса какой-нибудь онлайн платформы скорее всего будет недостаточно.
Знаю, что многие пытаются войти в IT через онлайн курсы, которые агрессивно рекламируются. Там обещают высокую зарплату и перспективное будущее, и все что хочет услышать человек. Но все не так просто как кажется.
Если вы все же хотите войти в IT, не важно по каким причинам, то стоит осознать, что вам предстоит конкурировать:
- С ежегодным потоком выпускников ВУЗов. Любой студент из IT направления как минимум на голову выше человека, который решил войти в IT. Я считаю с этим глупо спорить, но ниже я попытаюсь объяснить почему.
- С такими же людьми, которые тоже решили сменить профессию.
Люди окончившие ВУЗ как минимум четыре года изучали компьютерные и смежные науки, программирование и множество дополнительных профильных предметов:
- Фундаментальные вещи в компьютерных науках. Архитектуру ЭВМ, ассемблирование/дизассемблирование, операционные системы, компьютерные сети, базы данных, теорию информации, алгоритмы, структуры данных и т.д. и т.п.
- Разные языки и парадигмы программирования, паттерны проектирования. Разные фреймворки, технологии.
- Высшую математику(как минимум теорвер, мат. статистику, дискретную математику). Эта штука реально прокачивает мозги.
- Системный анализ, проектирование и тестирование ПО.
- Другие дисциплины и курсы, которые они проходили дополнительно.
Помимо программы ВУЗов есть тенденция к тому, что локальные IT-компании проводят курсы по разным дисциплинам у студентов. И все это начинается с первого курса. Летом преуспевающие студенты попадают на стажировки в эти самые компании. Лично в моей группе больше половины на четвертом курсе уже работало по профессии.
Также IT-компании и финтехи проводят хакатоны, CTF и разные мероприятия в ВУЗах, где студентов также берут себе на заметку, после приглашают на собеседования для дальнейшего трудоустройства.
Студенты, которые прошли всю эту программу выпускаются каждый год.
У работодателя есть выбор:
- Взять выпускника ВУЗа, который четыре года трудился, чтобы получить диплом. Ему в среднем 22 года. Скорее всего нет семьи, финансовые запросы еще не выросли. Он еще не зарабатывал денег, у него нет психологического барьера пойти на менее оплачиваемую работу. Многие начинают с 30к-60к рублей. Я не видел, чтобы где-то платили больше начинающему спецу, а если и платят, то скорее всего и требования будут выше.
- Взять выпускника курса, которому за 6-12 месяцев непонятно что давали изучать. Навряд ли за такой маленький период вы обгоните выпускников ВУЗов.
Я думаю, что выбор очевиден.
Помимо выпускников ВУЗов. Вам предстоит пройти стресс курсов и конкурировать с такими же людьми как вы. Придется совмещать текущую работу и обучение. Если повезет, и вас куда-нибудь возьмут, то коллеги будут обучать вас еще несколько лет, передавая вам свой опыт и давая вам направления для развития. Это конечно, если повезет с первой командой, что очень важно в начале карьеры.
Если у вас есть возможность пойти учиться в ВУЗ, то идите. В долгосрочной перспективе вы выиграете. Помимо учебной программы, и всего того о чем я написал выше, у вас будут связи т.к. ваши одногруппники будут работать в разных компаниях, и в будущем будет гораздо проще в случае чего.
Всегда есть исключения из правил, но не нужно считать, что именно вы тот самый человек. Не хотел задеть чьи либо чувства или порушить мечты.
Небольшой roadmap для разработчика
Цель раздела — это показать, что учиться можно бесплатно, помочь понять что IT ваше или нет тоже.
Если вы все еще настроены войти в IT, то надо сперва подготовиться, я составил небольшой список того, что считаю необходимо знать каждому разработчику. Мое мнение такое: «Если вы решили войти в IT, то входите качественно». Помните, что этот roadmap — верхушка айсберга. Учиться придется всегда, самостоятельно.
Постарался добавить в список бесплатные курсы, точнее их не обязательно оплачивать, чтобы проходить. Если хочется получить сертификат, то можно заплатить.
- Первое, что нужно научиться делать — искать информацию. В интернете колоссальное количество данных, но информацией считаются исключительно полезные данные. Научитесь фильтровать данные, понимать как применить найденное. Следовательно, во время обучения поисковик — ваш лучший друг. Вопросы, которые появятся у вас — не уникальны, их уже задавали на разных форумах, соизвольте поискать и внимательно почитать. Чтобы получать ответы, нужно уметь задавать вопросы. Чем более развернуто задан вопрос, тем выше вероятность того, что вам на него ответят. Полезная ссылка How To Ask Questions The Smart Way. Уметь искать информацию, задавать правильные вопросы — это мета навыки, которые полезны более чем в одной сфере, прокачайте их.
- Вся актуальная информация будет на английском языке. На русский язык просто не успевают переводить, либо вообще не переводят. Так что деньги, которые вы бы понесли в какую-нибудь платформу, лучше потратьте на репетитора по английскому языку. Даже если у вас в итоге не получится с IT, будет хоть что-то и возможно для вас откроются новые перспективы с изучением английского языка. Ну а если у вас все-таки получится войти в IT, то у вас будет возможность релокации в другую страну, где в обиходе английский язык или же просто устройство на работу в иностранную компанию на удаленке. Знание английского языка — это мета навык, который будет полезен более чем в одной сфере деятельности, изучайте английский.
- Стартовая точка будет курс This is CS50x. Его можно проходить бесплатно, есть автоматическая проверка практических и лабораторных работ. Лекции в открытом доступе, каждые полгода обновляются, материал всегда в актуальном состоянии. Эти лекции читаются первокурсникам в Гарварде. Будем считать этот курс порогом вхождения (но не в IT). Он поможет понять сможете ли вы дальше изучать все необходимое, чтобы войти в IT. Для начала рекомендую пройти только первые пять недель, где заканчивается работа с языком Си.
Продолжайте практиковаться на Codeforces. Решение задач помогает научиться думать, излагать свои мысли с помощью написания программ. Спортивное программироване хорошо подходит для этих целей. Решайте хотя бы одну задачу в день. Можете отсортировать задачи по сложности и идти просто по списку.
У каждого обучение займет разное время. Все зависит от того, сколько времени вы будете уделять учебе. После вы можете спокойно идти на собеседования. Запоминайте или делайте заметки себе во время собеседования. После делайте работу над ошибками. Если проходите онлайн, то можете записывать, чтобы потом спокойно посмотреть и поработать над собой.
В список к сожалению не вошли такие вещи как:
- Работа с базами данных. Системы баз данных. Полный курс | Ульман Джеффри Д., Уидом Дженнифер. SQL Tutorial.
- Параллельное и конкурентное программирование.
- Работы с сетью.
- Разные фреймворки.
- Что-то еще.
Вам придется найти материал для изучения самостоятельно в процессе разработки своих PET проектов.
Непосредственно во время обучения у вас будут появляться вопросы, или ситуации, которые будут вводить вас в ступор. Так как вы обучаетесь самостоятельно, то у вас нет преподавателя или ментора, который помог бы вам. За ответами вы можете обращаться на разные тематические форумы, где люди помогут вам, если правильно задать вопрос, показать, что у вас имеется на руках и что не получается. Если поиск в интернете вам не помог, то можно спрашивать на [ENG] Stack Overflow, [RU] Киберфорум
- учебный процесс
- как войти в IT
- roadmap
Чем пиксели отличаются от вокселей, и как в современных играх создают графику ретро-стиля
Художник Матеуш Retro Ян, рисующий в стиле пиксель-арт, написал для издания Retronator Magazine статью, в которой попытался ответить на вопрос, в чём разница между пикселями и вокселями, но при этом рассказал намного больше.
Ян объяснил, чем игры девяностых отличаются от современных 2D и 3D-игр в пиксельной стилистике, а также изучил разные варианты такого подхода к созданию графики.
Редакция DTF публикует перевод материала.
Предупреждение: в тексте много картинок и GIF-анимаций, поэтому он может долго прогружаться. Особенно с мобильных устройств.
61K открытий
Ранее в этом году мне задали такой вопрос: в чём разница между пикселями и вокселями?
Иногда бывает сложно удержаться, поэтому вместо прямого ответа я написал по этому поводу целую статью.
Вопрос вполне логичен. Общество вываливает на вас что-то вроде постера к фильму «Пиксели», и вы не понимаете, что происходит. Это вот пиксели? Или это воксели? Это птица? Самолёт? Никто вам ничего не объясняет.
Я до сих пор не могу решить, должен ли я из своей любви к старым играм посмотреть этот фильм, или наоборот НЕ смотреть его.
Но не бойтесь, пока я с вами, всё будет хорошо. К моменту, как вы прочитаете этот материал, вы будете знать всё про пиксели, воксели и всё, что находится между ними. Расслабьтесь, заварите чаю.
Начнём с основ, иначе вы не сможете понять общей картины. Есть два основных способа представления компьютерной графики: векторный и растровый.
Математическая точность векторной графики (слева) против дискретной природы растровой (справа).
Векторная графика описывает изображение с помощью математических формул, обычно с помощью таких вещей как прямые, кривые и различные геометрические формы.
Растровая графика представляет изображение как массив цветных точек, расположенных друг за другом по сетке.
Второе различие — способ представления компьютерной графики в двумерном и трёхмерном пространстве. Если разделить их, а заодно векторную и растровую графику, то мы получим такую таблицу:
Все любят таблицы
Векторная графика
В двумерной векторной графике каждая точка на линии или фигуре описывается вектором с двумя составляющими (x и y). В общем, именно поэтому двумерная графика так и называется.
Именно так двухмерная векторная графика строит изображение с помощью двухмерных векторов.
А вот пример низкополигонального двухмерного векторного изображения.
Uluru the Mighty Dreamer, Автор: Эн Тран
Оно построено исключительно из двумерных полигонов (в данном случае — треугольников). Изображение называется низкополигональным из-за сравнительно небольшого числа составных элементов. Именно поэтому треугольники легко заметны.
Добавим ещё одно измерение. В трёхмерной векторной графике всё работает так же, но добавляется ещё одна компонента — z. Три компоненты — три измерения.
Концепт игры Racetrack для iOS, Автор: Тимоти Рейнольдс
Разница между двумерным изображением Улуру и трёхмерной моделью гоночного трека в том, что на трек мы можем посмотреть под любым углом.
Чтобы отобразить трек на вашем экране (то есть на двумерной поверхности), мы выбрали несколько углов и отобразили трёхмерную геометрию на плоском изображении.
Преображение из 3D в 2D называется проекцией.
Так и получается двумерное изображение.
Но есть одна хитрость, позволяющая показать трёхмерную геометрию в 2D. Просто измените угол угол обзора или повращайте объект.
Машинка. Автор: Тимоти Рейнольдс
Да, действительно, перед нами трёхмерный объект. И даже очки не нужны!
Растровая графика
Так, немного разогрелись. Теперь разберёмся с тем, как растровая графика работает в 3D и 2D.
Растровое двумерное изображение представляется массивом с определённым количеством столбцов и строк.
Спрайт Turbo Esprit, Автор: Матеуш ‘Retro’ Ян
Каждая клетка в таком массиве называется пикселем (от слов picture element — pixel). Помимо его координат в массиве пиксель определяется цветом.
Мы уже узнали, что низкополигональное векторное изображение состоит из заметных полигонов. Если мы сделаем то же самое с растровой графикой и заметными пикселями, то получим пиксель-арт.
Пиксель-арт, Матеуш «Retro» Ян
На двумерной пиксельной сетке можно изобразить трёхмерные объекты вроде автомобиля Lotus Esprit или X-Wing из «Звездных войн», но для изображения они не трёхмерны. Их нельзя покрутить и рассмотреть с разных сторон, как гоночный трек или машинку. Точно так же мы не можем вертеть рисунок Улуру — изображение состоит из полигонов, но они располагаются не в трёхмерном пространстве, а в двумерном.
Итак, мы поговорили о двумерной и трехмерной векторной графике и 2D-растровой графике. Не хватает только 3D-растровой графики.
Вот сейчас будет круто!
В трёхмерной растровой графике всё пространство разделено на колонки и строчки по всем трём направлениям (высота, ширина и глубина). В результате трёхмерное пространство становится набором разноцветных кубов-вокселей (volume element — voxel, элемент объёма). Каждый воксель определяется цветом и расположением.
Мы уже знаем, как выглядит пиксель-арт. Воксель-арт выглядит похожим образом.
Звёздные войны, Sir Carma
Похоже на LEGO, не правда ли?
Так как теперь мы смотрим на трёхмерное изображение, сцену можно рассмотреть с разных сторон. Вот так выглядит воксельный Татуин под другим углом:
Звёздные воины, Sir Carma
Можно даже делать анимации. Вот это, например, анимированный воксельный персонаж от Sir Carma:
Бегущий рыцарь, Автор: Sir Carma
Сравните его с двумерным пиксельным персонажем:
Спрайт из Final Element, Glauber Kotaki
То есть в воксельном изображении анимация изменяет цвет (или расположение) определённых маленьких кубов, а в пиксельном — меняется цвет квадратов-пикселей.
Теперь вам известна разница между пикселями и вокселями (и много чего ещё… прошу прощения).
Но давайте пойдём ещё дальше. Не время останавливаться. Я рассказал это всё потому, что на современных мониторах любая графика в конечном итоге отображается на двумерной растровой сетке.
Для нас это интересно потому, что люди, увлекающиеся пиксель-артом, создают его с помощью всех возможных видов графики.
«Я что, могу превращать воксели и трёхмерные модели в пиксель-арт?» — спросите вы. Именно так. С помощью особых техник рендеринга и шейдинга можно создавать совершенно уникальный пиксель-арт.
Векторные дисплеи и проекция
Схема наверху отображает не совсем полную картину. Двумерное векторное изображение можно отображать и сразу, без преобразований. Но всё не так просто.
Двумерное векторное изображение может отображаться напрямую только на векторном мониторе. Они, например, использовались на некоторых аркадных автоматах Atari.
Вот как оно бы выглядело на осциллографе.
Игра Space Rocks
Похожим образом иногда отображается трёхмерное векторное изображение.
Как я уже говорил, сначала трёхмерное изображение нужно отобразить на плоскости. Так получается двумерное векторное изображение, которое можно вывести на векторный монитор.
Настоятельно рекомендую глянуть трейлер аркадной игры VEC9:
Растрирование
В наши дни вы вряд ли найдёте векторный монитор где-нибудь за пределами музея. Люди используют мониторы, на которых отрисовываются… пиксели!
RGB матрица
Современные ЖК-дисплеи окрашивают каждый отдельный пиксель в определённый цвет, включая или выключая маленькие красные, зелёные и синие жидкие кристаллы на каждую клетку. Если что, в старых ЭЛТ-мониторах работал похожий механизм: на каждый пиксель три разноцветных трубки зажигались под воздействием луча электронов.
Фосфорные точки на ЭЛТ дисплее
Итак, что же мы делаем, если нам надо отобразить векторное изображение на растровом мониторе? Для этого используется техника растрирования. Каждый полигон (чаще всего треугольник) отображается на массив пикселей.
Растрирование с помощью технологии сэмплинга
Трёхмерная графика прорисовывается на плоском мониторе так: сначала трёхмерные треугольники отображаются на плоскость и становятся двумерными полигонами, а затем полигоны растрируются и становятся набором пикселей.
Star Fox, Nintendo
Триангуляция
Но что насчёт вокселей? Сегодня они чаще всего представляются как трёхмерные векторные кубы. Мы создаём трёхмерную модель с треугольниками по каждой стороне воксельного куба.
Лучшая 3D модель в мире, Матеуш ‘Retro’ Ян
Так же, как и в прошлый раз, трёхмерные треугольники затем отображаются на плоское пространство, после чего растрируются в двумерное изображение.
Крутящийся куб
Сегодня практически весь воксельный арт создаётся таким образом, чаще всего с помощью бесплатной программы MagicaVoxel.
Ray casting
Есть ещё один подход. Каждый воксель можно представить как точку в трёхмерном пространстве, то есть как кусочек объёма. Можно отрисовать воксель на плоском пространстве, если расположить пиксель в том же месте. Или наоборот: взять пиксель с экрана и отыскать в пространстве воксель, находящийся на том же месте.
Обратный подход называется ray casting («бросание лучей»). Луч направляется прямо в трёхмерное пространство, и летит, пока не наткнётся на воксель. На практике в пространство «бросается» столько лучей, сколько надо, чтобы покрыть все необходимые точки.
Простой вариант рейкастинга с коррекцией
Впервые эта техника была использована в игре Wolfenstein 3D. В ней комнаты целиком состояли из вокселей. Рендеринг работал довольно быстро, потому что один луч отображал целую колонку пикселей на экране. Результат, по сути, получался двумерным, поэтому такую 3D-графику иногда называют 2.5D (потому что третье измерение вроде как не настоящее).
Wolfenstein 3D, id Software
Сейчас Wolfenstein обычно не называют воксельной игрой, но именно она дала толчок к развитию воксельных движков девяностых.
Comanche: Maximum Overkill, NovaLogic
Поначалу воксели использовались только для создания локаций. Из-за нехватки ресурсов разработчики не могли хранить информацию о каждой клетке пространства, но могли записывать высоту расположения вокселей на плоской карте (также известной как карта высот).
Карта высот (слева) показывает насколько высоко поднимаются колонки вокселей (чёрный – низкие колонки, белый — высокие).
Так как вся информация о вокселях могла содержаться только в картах высот, то игры не могли создавать нависающие над игроком скалы. Но, господи, насколько же детализированными получались локации!
Конец вокселей
Ray casting был не единственной технологией воксельного рендеринга в девяностых. Существовали и другие. Каждая с собственными сильными сторонами: разрушаемое окружение, поддержка обработки моделей машин и персонажей и так далее. Это было что-то невероятное! Но, что иронично, именно такое разнообразие в итоге и привело к закату технологии.
Vangers, K-D Lab
В 2000 году началась эпоха графических карт или графических процессоров. Специальные встроенные в компьютер устройства, которые сейчас называются GPU, отлично справлялись с обработкой 3D-полигонов. Они делали это очень быстро, но больше ничего не умели. К несчастью, различные алгоритмы рендеринга вокселей (включая ray casting) остались за бортом.
Воксельные движки переехали на центральный процессор, но и у него хватало собственных проблем. Процессор думал о таких важных вещах, как физика, геймплей и игровой ИИ. Графические карты создавались для того, чтобы «переселить» рендеринг на отдельную микросхему. В результате рендеринг значительно ускорился, а у процессора освободились ресурсы на выполнение других задач. Воксельные движки не смогли угнаться за полигональной графикой. Так они и умерли.
С тех пор прошло 10 лет, и вдруг воксели вернулись. Помощь пришла с неожиданной стороны. Появилась игра, которая нашла к вокселям совершенно новый подход. Воксель – это куб, верно? И теперь эти кубы уже могли спокойно обрабатываться видеокартой. А дальше вы и сами всё знаете.
Minecraft пришёл и всех победил
Определение
Давайте вспомним всё, о чём я рассказал, и попытаемся ответить на вопрос, с которого всё началось. Что же такое пиксели и что такое воксели?
Пиксель — мельчайший элемент двумерного пространства, разделённого дискретно на множество равных частей.
Каждый пиксель определяется вектором с двумя целыми числами X и Y. Именно поэтому пиксельное пространство дискретно, в то время как в векторной графике координаты определяются вещественными числами.
Соответственно, воксель — мельчайший элемент трёхмерного дискретного пространства, где все элементы имеют одинаковый размер.
Ну что, на этом всё? А вот и нет!
Как видите, определение довольно общее, а потому пиксели и воксели могут быть очень разными. Давайте попробуем соединить все четыре элемента таблицы вместе: растровое/векторное, а также 2D/3D.
Чистая 2D-графика
В прежние времена для отображения 2D-спрайта на экране приходилось напрямую копировать биты из памяти, в которой хранились цвета спрайта, в память, хранящую данные об отображенных на экране цветах. Эта технология называется bit blit или bit BLT — bit block transfer (перенос блоков битов). Сейчас почти никто не рендерит двухмерную графику именно так.
Виртуальная консоль PICO-8 — один из немногих современных движков, работающих на блиттинге, но в прошлом двумерная графика не могла отображаться иначе.
PICO-8, Lexallofle Games (а также авторы показанных игр)
Текстуры в 3D-графике
Сейчас большинство графических движков работает с векторами, потому что видеокарты заточены именно под них. В таких условиях, чтобы отобразить изображение на плоском экране, его нужно нанести на полигон с помощью карты текстур.
Текстуры — двумерные растровые изображения, размещённые на трёхмерном полигоне.
Если не вдаваться в подробности, то именно так и работает трёхмерная графика.
Вот, например, как выглядит высокополигональная 3D-модель без текстуры и с текстурой высокого разрешения:
Благодаря шейдингу и картам текстур нам даже не нужно слишком много полигонов, чтобы получить приятно выглядящего персонажа.
Вот низкополигональная трёхмерная модель с качественной текстурой:
Низкополигональная модель, Mark Henriksen
А если взять текстуру с низким разрешением, то получится приятная на вид низкополигональная модель с текстурами в стиле пиксель-арт:
Drift Stage
Снова можно вспомнить Minecraft. Её блоки — воксели по определению (мельчайшие дискретные элементы игры), и по сторонам они покрыты пиксельными текстурами. Однако, обратите внимание, что не все блоки в игре — простые кубы.
Minecraft, Mojang
Итак, мы разобрали все примеры для трёхмерных моделей (как мне кажется, высокополигональные модели с текстурами низкого разрешения не особо кому-то нужны, но можете меня поправить, если я вдруг ошибаюсь).
Mirror’s Edge (слева-сверху), Max Payne (слева-снизу) и Minecraft (справа-снизу)
Текстуры в 2D-графике
А теперь разберёмся с 2D. Если натянуть текстуру на плоский прямоугольник, мы получим современную 2D-графику. На современном железе каждое 2D-изображение (чаще всего в данном контексте мы называем его спрайтом) отображается на прямоугольнике, состоящем из двух треугольников. Два треугольника (их пара называется квадом) рендерятся с натянутым на них спрайтом. И так изображение оказывается на своём месте.
Элементы персонажа
С изображениями высокого разрешения всё понятно.
Но вот с текстурами в стиле пиксель-арта всё становится немного сложнее. Всё зависит от разрешения экрана, на котором отображаются спрайты.
Braid (слева-сверху), Path to the Sky (справа-сверху), Kingdom (снизу-справа)
Мы уже знаем, что пиксельные текстуры без проблем наносятся на трёхмерные низкополигональные модели даже на экранах с большим разрешением. Снова подумайте о Minecraft. Ведь низкополигональные кубы всё равно рендерятся на дисплеях с разрешением 1920×1080.
Minecraft, Mojang
То же самое можно сделать и с полигонами на плоскости. Возможно взять пиксель-арт, нацепить его на 2D-квад и отреднерить результат на мониторе с высоким разрешением. Тогда каждый пиксель на исходном изображении окрасит несколько пикселей на дисплее в определённый цвет.
Hotline Miami, Dennaton Games
Это называется пиксель-артом с большими пикселями. Каждый пиксель на спрайте увеличивается в размерах и становится большим квадратом на изображении.
Каждый пиксель на спрайте занимает квадрат в 3 на 3 пикселя на экране.
Если спрайт вдруг наклоняется или поворачивается, то сразу становится заметно, что квадраты на экране состоят из нескольких пикселей:
Path to the Sky, Johannes ‘Dek’ Märtterer
Посмотрите на листву на этом изображении и сравните с вращающимся спрайтом при низком разрешении:
Обратите внимание, что пиксели на колесе остаются на одной линии и горизонтально, и вертикально, а на гифке из Path to the Sky большие пиксели на листве, птице и мосту заметно искажаются при движении.
Чтобы достичь этого, Kingdom полностью рендерится при низком разрешении и растягивает пиксели только на итоговом изображении. В то же время Path to the Sky, Hotline Miami и Moonman рендерят спрайты на монитор напрямую.
Снова к 3D
Kingdom — двумерная игра, но такой же подход можно применить и в трёх измерениях.
Если нацепить пиксель-арт текстуры на трёхмерные модели и отрендерить их при низком разрешении, получится что-то такое:
Техническое демо Pixel Art Academy, Matej ‘Retro’ Jan
С тенями всё нормально. Хотя на первый взгляд кажется, что перед вами пиксель-арт, на самом деле это полноценная 3D-сцена в низком разрешении с пиксельными текстурами.
Техническое демо Pixel Art Academy (под другим углом)
Анимации, основанные на векторах (со скелетным ригом), могут использовать пиксельный стиль себе на пользу:
Риг анимации
И если запустить рендер на низком разрешении, то анимация ещё сильнее начнёт напоминать пиксель-арт, почти как в случае с Kingdom.
Может быть, эта анимация и не кажется слишком качественной, но у неё есть свой стиль. Почти как в старых добрых играх девяностых.
Prince of Persia
А теперь снова поговорим о высоком разрешении. Существует игра, которая по полной использует свою трёхмерную природу, сохраняя двухмерный стиль. Это The Last Night от студии Odd Tales.
The Last Night, Odd Tales
Их модели нарисованы в 2D, но наложены на трёхмерный мир со всеми современными графическими эффектами: динамическим освещением, bloom, depth of field, кинематографичными ракурсами камеры, отражениями и так далее.
Таким образом, разработчики создали трёхмерный мир, на который можно посмотреть с разных углов.
Создание 3D сцены в The Last Night
А вот ещё один пример качественного динамического 3D-освещения. Невероятно атмосферная игра с печальной судьбой — Confederate Express:
Все модели отрисованы в 2D, но каждый объект хранит данные по шейдингу для света, идущего с любого угла. Свет обрабатывается модулем Sprite Lamp, и благодаря ему кажется, что лучи попадают на трёхмерные объекты.
Пиксель-арт из вокселей
Проблема в том, что с таким подходом мы получаем только шейдинг для спрайтов, но тени всё равно не отобразятся корректно без трёхмерной геометрии объекта. А что может дать нам трёхмерную геометрию? Правильно. Воксели!
Отличным примером такого подхода является недавно анонсированная игра Pathway:
Pathway, Robotality
Кажется, словно графика состоит исключительно из плоских спрайтов, но на самом деле модельки в игре полностью объёмные. Разработчики девяностых пытались сделать свою графику максимально реалистичной и современной. Но разработчики из студии Robotality не собираются заходить так далеко, им достаточно, чтобы воксель на экране соответствовал размеру пикселя на мониторе. В результате графика выглядит как очень приятный для глаза пиксель-арт, но у движка есть вся необходимая ему 3D-информация.
В подходе к отображению вокселей в стиле пиксель-арта нет ничего инновационного. Впервые такая технология была использована в игре FEZ. Авторы называли кубики, из которых состояла игра, трикселями (3D-пикселями). Триксель — это куб со сторонами в 16 вокселей.
В каждый отдельный момент времени игрок видит FEZ только с одного угла, и поэтому ему кажется, что он видит мир в 2D. Именно поэтому FEZ выглядит как пиксель-арт, но мир всё равно может вращаться.
Как попасть в мир пикселей
Встречают по обложке, а покупают билет. Рассказываем, как создать событие на Timepad, на которое точно захочется прийти.
Страница события — это самое важное в продвижении мероприятия. В этой статье расскажем, на что обратить внимание при создании страницы мероприятия на Timepad и что сделать, чтобы на него захотели прийти.
Представьте: вы запустили таргетированную рекламу, подключили блогеров, оплатили анонсы в СМИ — люди переходят по ссылке на ваше событие, а там один абзац текста и непонятное описание. То, что может показаться вам очевидным, может быть совсем непонятно для пользователя. Представьте, что у вас есть лишь 30 секунд, чтобы заинтересовать человека изучить ваше мероприятие и побудить его к покупке билета на ваше событие.
Во всем нужен баланс
У пользователя, который слабо знаком с вами, есть буквально несколько секунд, чтобы ознакомиться со страницей и заинтересоваться. Если плохо оформить лендинг события — человек закроет страницу и забудет о нём.
Хорошая страница событий выполняет две функции: рассказывает о самом мероприятии и вызывает желание купить билет.
Как правильно оформить мероприятие на Timepad
Шаг 1
Придумайте название мероприятия и краткое описание:
Название мероприятия
Укажите формат и название вашего мероприятия. Например: «Мастер-класс по созданию событий на Timepad».
Не используйте Caps Lock и другие приемы для привлечения внимания пользователя — зачастую это делает название только хуже.
Краткое описание
Расскажите о самых интересных особенностях вашего мероприятия: ключевые спикеры, необычная локация или основные темы обсуждения. Главное — уложиться в 500 символов.
Хороший пример заполнения:
Шаг 2
Опишите себя и ваше мероприятие:
Основное описание
Напишите подробно про себя и ваше мероприятие. Чем вы или ваша компания занимаетесь, что будет происходить на мероприятии, кто будет выступать, во сколько начало и как добраться до места проведения.
Блок про спикеров
Это особенно важно, если ваш ведущий медийная или известная личность. Если ваш спикер является экспертом в своей области, расскажите о его заслугах и пользе, которую он может дать вашей аудитории.
Фотографии или видеоролики
Добавьте фотографии с ваших предыдущих событий или фото спикеров. Постарайтесь не использовать изображения из фотобанков, фото в плохом качестве, а также иллюстрации которые могут оскорбить пользователей. Также можете вставить ссылку на видео с видеохостинга YouTube.
Шаг 3
Выберите обложку
Изображение должно быть в хорошем качестве, размером не меньше 1248 х 608 пикселей с безопасной зоной не менее 64 пикселей с каждой стороны. Обложка должна соответствовать тематике вашего события, при необходимости на ней можно разместить дополнительную информацию или продающий заголовок.
Визуализация кадрирования обложек в Timepad:

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

А в данном случае, обложка хорошая, но совсем не подходит по формату:

Что еще можно добавить, чтобы ускорить принятие решения участника купить билет на ваше событие
Отвечайте на частые вопросы
Если участники постоянно у вас что-то спрашивают — опередите их и ответьте на их вопросы заранее.
Например: «Как пройти внутрь бизнес-центра где будет проходить мастер-класс?», «Что необходимо взять с собой на мероприятие?», «Сколько по времени длится экскурсия?».
Расскажите, чем именно ваше мероприятие поможет человеку
Например: «Как полюбить разнообразный мир кино, если нравится только Marvel? Приходите на нашу лекцию — вместе с кинокритиком будем разбираться в мире кинематографа»; «Хотите понимать стили в архитектуре, но самому разобраться сложно? Ждем вас на нашей пешей экскурсии — вместе с лектором вы разберете здания Москвы и узнаете их историю».
Выделяйте визуально
Люди зацепляются глазами за выделения в тексте , но нужно делать это с умом.
Используйте гиперссылки
Не засоряйте текст вашего события лишними ссылками, лучше вшить их прямо в слова.
Полезные сервисы для оформления событий
Создаете первое событие и фотографий нет? Не беда — иллюстрации к вашему событию можно найти на сайтах Unsplash и Pinterest . Но по возможности, всегда старайтесь использовать собственные фотографии в хорошем качестве.
Проверить свою грамотность и найти в тексте лишнее помогут сервисы: Главред, Орфограф и Орфограммка
Как попасть в Афишу Timepad
Здесь многое зависит от того, как вы оформили страницу мероприятия.
Событие не попадет в Афишу Timepad, если:
- название набрано заглавными буквы (включен Caps Lock);
- дата события события указана в названии;
- адрес проведения мероприятия в названии;
- пометка «18+».
Плохой пример:
- ЛЕКЦИЯ ИСТОРИЯ ФРАНЦУЗСКОГО КИНО.
- экскурсия в дом наркомфина “легенда авангарда ”
- Конференция о том, как зарабатывать больше с помощью необычных лендингов. Адрес: ул. Большая Дмитровка, 8.
- Дегустация и лекция об истории создания виски. СТРОГО 18+!
Хороший пример
- Лекция «История французского кино»
- Экскурсия в дом Наркомфина «Легенда Авангарда»
- Конференция «Создаем продающие лендинги»
- Лекция + дегустация «История создания виски»
Подробнее о других правилах модерации вы можете почитать на нашем специальном лендинге по ссылке — лендинг про модерацию в Афише.
Примеры хорошо оформленных страниц событий
- Хороший пример того, как страница мероприятия может выглядеть: структурированное полное описание, есть текстовые выделения и ответы на вопросы.
- Здесь организатор подробно рассказал о событии, выделил блок со спикерами и даже вставил видео-трейлер;
- На странице этого события есть иллюстрация и видеоматериал — все это выглядит органично и не аляписто.
А теперь еще раз посмотрите на свой текст и страницу мероприятия — захотелось прийти? Если да, то вы молодец и всё делаете правильно!
Недооценивать важность оформления лендинга нельзя. Всегда держите в голове основную мысль: какую пользу участник получит на вашем событии. Желаем успешных мероприятий и проданных билетов!
Правила игры Пиксель тактикс

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

Вызови друга на пиксельную дуэль!
Распределите карты на двоих и начинайте. Основные игровые карты можно использовать для трёх целей:
- Выдать за Лидера (его наличие даёт команде бонус, зато за ним и охотятся противники — тот, кто первым убьет чужого Лидера, победит в игре),
- Сыграть как Героя, который умеет многое, но что именно — зависит от его положения в армии (авангард, фланг, тыл),
- Сыграть как Приказ, то есть, мощно, но один раз, а потом карту придётся сбросить. На фото видно, что каждая карта имеет много разных функций, которые будут действовать в зависимости от того, где карта находится и как играется.

Реально, как в старых тактических играх
Ничего лишнего. Игра делится на фазы, в которых игрок может выполнить два любых действия:
- Взять карту,
- Сыграть приказ,
- Нанять героя,
- Атаковать противника,
- Сменить позицию карты,
- Убрать тело убитого героя (это важно, а то можно обнаружить в своих рядах зомби, которым управляет противник).
Атаковать можно в ближнем и дистанционном бою. Сила и тот, с кем можно драться, указаны в свойствах каждого героя. Так что, если у вас есть некая цель в армии врага, порой для победы над каким-то воином приходится дождаться удачной карты. Атаки можно перехватывать, у некоторых карт есть опасные реакции на действия противников, так что можно попасть, если не почитаешь, что на карте написано. Как и в компьютерной игре, не каждый удар смертелен, обычно противнику наносятся ранения. Здесь за это отвечают маркеры ранений, которые после удара кладутся на карту побитого.

Кому подарить?
- Конечно, любителям старых добрых игр на приставках, и первых компьютерных игр,
- Коллекционерам восьмибитного искусства,
- Двум друзьям, которые живут вместе,
- Тем, кто хочет перейти с шахмат на что-то новое,
- Пацанам, которые любят решать проблемы в честной дуэли.
Сколько пикселей насыпали?
- 25 карт синего отряда,
- 25 карт красного отряда,
- Карта-памятка первого игрока,
- Карта-памятка второго игрока,
- 3 больших жетона ранений,
- 19 жетонов ранений поменьше,
- 8 жетонов времени,
- 4 маркера угрозы,
- 4 маркера проклятья,
- 3 маркера авангарда,
- 3 маркера флангов,
- 3 маркера тыла,
- 4 маркера состояния,
- Правила игры.
Другие игры серии
- Пиксель тактикс 2
- Пиксель Тактикс 3
- Пиксель Тактикс 4
Подготовка к игре
Перед началом игры каждый игрок перемешивает свою колоду и берет верхние 5 карт в руку.
Из них оба игрока тайно выбирают лидера своего отряда и одновременно вскрывают.
Лидер кладется в центр отряда и не перемещается в ходе игры.
Вокруг него остается 8 ячеек для героев.
Условие победы
Битва заканчивается когда один или оба лидера повержены (то есть когда они получили урон, в сумме, равный или больше чем их здоровье.
Вы победите в бою если убьете лидера соперника раньше чем он вашего.
Каждый отряд состоит из трех рядов: ряда Авангарда, ряд а Фланга и ряда Тыла.
Ход игры
Игра состоит из раундов которые делятся на три фазы: фазу Авангарда, фазу Флангов и фазу Тыла.
Случайно определите кто из игроков будет начинать в первом раунде. В каждой фазе сначала первый игрок выполняет два действия, потом второй. Начинается игра с фазы Авангарда, поместите маркер текущей фазы напротив ряда авангарда первого игрока, когда оба игрока выполнят два действия игра переходит к фазе Флангов, а после нее к фазе Тыла. Маркер текущей фазы перемещается соответственно напротив ряда флангов и тыла.
Когда Фаза Тыла завершена начинается следующий раунд и право первого хода переходит ко второму игроку. Так продолжается пока один из лидеров не будет убит.
| Количество игроков | 2 игрока |
| Возраст игроков | От 12 лет |
| Время игры | От 30 до 60 минут |
| Вес | 0.2 кг |
| Производитель | GAGARU |
Больше пиксельных войн!
