Обновить
0
0
Илья Кивилёв@Singlestep

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

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

Code Conventions: как мы сохраняем быстрый темп разработки PHP-проекта

Время на прочтение7 мин
Охват и читатели26K
Привет, Хабр. Меня зовут Евгений Удодов, я сооснователь и технический директор компании Roistat. Хочу поделиться нашим опытом разработки большого и сложного продукта — системы аналитики.

TL;DR: Мы выложили на github наш Code Conventions и рассказали в статье о том, как его применять на практике.

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

За 4 года существования нашего проекта мы сделали больше 20 000 Pull Request’ов (далее PR) и под катом я расскажу, как же мы решили эти проблемы.


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

Вторая волна ФЗ-54: подводные камни онлайн-фискализации

Время на прочтение6 мин
Охват и читатели21K
С 1 июля 2018 года предпринимателей ждет вторая волна обязательной кассовой автоматизации в связи с изменениями в федеральном законе №54. О том, кому придется взобраться на её гребень, как разобраться в финансовых и технических нюансах, на что обращать внимание при выборе онлайн-кассы, расскажем в этой статье.


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

Первый год моей жизни как инди-разработчика

Время на прочтение12 мин
Охват и читатели15K
image

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

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

Скорее всего, вы уже читали унылые истории об инди-разработчиках, выпускавших свои первые игры и провалившиеся на рынке. К сожалению, моя история столь же мрачна. В то время, как инди-шедевры наподобие Stardew Valley и Undertale смогли создать лавину из миллионов проданных копий, для среднестатистической игры удачей бывает продажа 1000 копий за первый месяц.

За 2017 год я выпустил в Steam две игры. Первой была JRPG в ретро-стиле Arelite Core, выпущенная 8 февраля после четырёх с половиной лет разработки. Я заплатил нанятым художникам и композитору более 85 000 долларов США. Игра, выпущенная только для Windows, на сегодняшний день во всех магазинах приложений заработала меньше 5000 долларов.
Читать дальше →

Анимированный эффект щита космического корабля в Unity3D

Время на прочтение14 мин
Охват и читатели19K
Привет Хабр! Я хочу рассказать как сделать шейдер для отрисовки щита космического корабля в Unity3D.

Вот такой


Статья рассчитана на новичков, но я буду рад если и опытные шейдерописатели прочтут и покритикуют статью.

Заинтересовавшихся прошу под кат. (Осторожно! Внутри тяжелые картинки и гифки).

Unity выложила исходный C#-код на Github

Время на прочтение2 мин
Охват и читатели40K
image

Возрадуйтесь все, кому хоть раз в силу жизненной необходимости приходилось декомпилировать .NET-код Unity! Теперь код C#-части движка и редактора Unity доступен для изучения на Github. Доступны все основные ветки, начиная с версии 2017.1 и заканчивая свежей 2018.1.0b12.

Код был выложен вчера, официальный анонс состоится только в понедельник.

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

Впрочем, это ничуть не остановило товарища, уже оформившего пулл-реквест с фиксом производительности.
Читать дальше →

Тенденции в области аутсорсинга. Прогноз на 2020 год

Время на прочтение4 мин
Охват и читатели12K


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

Из этой статьи вы узнаете, как пережить кризис аутсорсинга и каково его будущее.
Читать дальше →

Плюсы и минусы ведения бизнеса в США: наблюдения после года развития своей компании

Время на прочтение9 мин
Охват и читатели43K


В прошлом году я рассказывал на Хабре о том, как получил визу О1 и переехал в США развивать собственный бизнес. В комментариях читатели задавали вопросы о том, каково это работать на себя в Америке. И если тогда мой опыт был слишком скудным, чтобы ответить, то теперь после года активной работы впечатлений накопилось достаточно. Так что сегодня я расскажу о плюсах и минусах запуска собственного бизнеса в Штатах.

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

Разработка игр под NES на C. Главы 17-21. Своя игра

Время на прочтение5 мин
Охват и читатели8.4K

В этой части соберем все вместе и сделаем простую скроллерную стрелялку на космическую тему: корабль летит и лазерами отстреливает врагов


<<< предыдущая следующая >>>


image
Источник


Планирование

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

Публикация игры в Google Play. Настройка Play Games Plugin для Unity

Время на прочтение7 мин
Охват и читатели46K
Всем привет! Решил поделиться своим опытом по добавлению игры в Google Play Console и настройке Play Games Plugin для Unity.

Начнем мы с настройки Unity.
Читать дальше →

Онлайн шутер на Unreal Engine 4 за 90 часов (видео создания + исходники)

Время на прочтение5 мин
Охват и читатели64K
Привет, харб! Примерно год назад я выкладывал статью о том, как я в прямом эфире создал выживалку за 150 часов. На этот раз хочу представить вам сетевой шутер, который я создал за 25 заходов по 3 — 4 часа. Всего вышло около 90 часов и в итоге мы создали онлайн шутер, в который сыграли вместе со зрителями.

image

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

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

Создание игры на Lua и LÖVE — 1

Время на прочтение37 мин
Охват и читатели46K
image

Введение


В этой серии туториалов мы рассмотрим создание завершённой игры с помощью Lua и LÖVE. Туториал предназначен для программистов, имеющих некоторый опыт, но только начинающих осваивать разработку игр, или для разработчиков игр, уже имевших опыт работы с другими языками или фреймворками, но желающими лучше узнать Lua или LÖVE.

Создаваемая нами игра будет сочетанием Bit Blaster XL и дерева пассивных навыков Path of Exile. Она достаточно проста, чтобы можно было рассмотреть её в нескольких статьях, не очень больших по объёму, но содержащих слишком большой объём знаний для новичка.

GIF

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

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

Как устроен софт-лонч: разбор от Zorka.Mobi и Nitro Games

Время на прочтение4 мин
Охват и читатели2.7K
Каждый разработчик однажды понимает, что пришло время показать свой продукт будущим пользователям. Софт-лонч — первая проверка приложения на выживаемость, именно тестовый запуск раскрывает его сильные и указывает на слабые стороны. В этой практической статье опытом софт-лончей делятся Алексей Адамович (руководитель отдела медиабаинга в Zorka.Mobi) и Микко Кахара (директор по маркетингу, Nitro Games).
Читать дальше →

3D-движок, написанный на формулах MS Excel

Время на прочтение9 мин
Охват и читатели120K

Скриншот экрана игры

Эта статья посвящена тому, как я смог написать 3D-движок только на формулах Excel. Я реализовал следующий функционал:

  • бесконечная процедурно генерируемая карта лабиринта
  • рендеринг трассировкой лучей в реальном времени
  • вычисление окклюзии
  • рендеринг простейшего освещения
  • шейдер освещения и вычислений
  • движок естественного движения
  • в 3D-движке не используются макросы

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

Можете скачать файл и протестировать его самостоятельно!

Философия SLA: про приоритеты запросов

Время на прочтение9 мин
Охват и читатели30K

Продолжаю цикл статей про SLA, публикуя то, что не уместилось в основную статью Как написать хороший SLA.


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



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

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

Как задолбать всех коллег: собираем требования к CRM

Время на прочтение14 мин
Охват и читатели57K
Вы замечали, насколько по-разному покупают люди, например, смартфоны? Один подходит, уверенно берёт нужную модель и может проконсультировать всех вокруг, второй робко слоняется вдоль витрины, трогает экраны и оценивает вес и яркость, третий открывает камеру и делает селфи, четвёртый набирает «Привет! Как дела», тестируя клавиатуру одной рукой. Ничего необычного — каждый смотрит то, что ему важнее. Хуже, когда так же покупают CRM или ERP  — буквально с закрытыми глазами, бегло глянув на яркую презентацию или прочитав советы на форуме. Потом сыпятся негативные отзывы, а автоматизация вызывает стойкую неприязнь. Казалось бы, что проще — собрать требования и приступить к трезвому выбору вендора. Но нет, инструкцию будем читать потом, когда сломается… А вот, собственно, и подробная инструкция.

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

Постмортем Shadow Tactics: Blades of the Shogun

Время на прочтение22 мин
Охват и читатели12K
image


В прошлом году немецкий разработчик Mimimi Productions привлёк большое внимание к своей игре в жанре тактического стелса реального времени Shadow Tactics: Blades of the Shogun, вдохновлённой такими старыми проектами, как Desperados и Commandos.

Shadow Tactics имеет интригующий дизайн (см. эту статью о механике динамического распознавания). Она стала огромным успехом для Mimimi — несмотря на то, что в процессе выпуска компания едва не развалилась. Подробнее о том, как это произошло (и о том, какие уроки извлекли разработчики) можно прочитать в этом честном постмортеме игры, написанном коллегами-основателями Mimimi Иоганнесом Ротом и Домиником Абе.

Около года назад Mimimi была ещё мало кому известна. Наша предыдущая трёхмерная экшн-адвенчура The Last Tinker: City of Colors показала себя хорошо, но не собрала большой аудитории.

К декабрю 2016 года наши самые большие мечты осуществились: Shadow Tactics: Blades of the Shogun, наше признание в любви к Commandos и Desperados, наконец вышла и завоевала признание игроков и прессы.

В то же самое время мы были почти банкротами и уже уволили бо́льшую часть команды. У нас уже не было денег, чтобы пережить ещё один месяц.

В этом постмортеме два основателя Mimimi Доминик Абе (креативный директор) и Иоганнес Рот (управляющий директор) подробно расскажут о том, в чём они были правы, а в чём (ужасно) ошиблись.

Как я слил 1000$ в продвижение игры и что из этого получилось

Время на прочтение6 мин
Охват и читатели63K


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

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

Как рендерит кадр движок Metal Gear Solid V: Phantom Pain

Время на прочтение21 мин
Охват и читатели27K

Серия игр Metal Gear получила мировое признание после того, как почти два десятилетия назад Metal Gear Solid стала бестселлером на первой PlayStation.

Игра познакомила многих игроков с жанром «тактического шпионского экшена» (tactical espionage action), название которого придумал создатель франшизы Хидео Кодзима.

Но лично я впервые играл за Снейка не в этой части, а в Ghost Babel, спин-оффе для консоли GBC, менее известной, и тем не менее превосходной игре с впечатляющей глубиной.

Последняя часть франшизы, Metal Gear Solid V: The Phantom Pain, была выпущена в 2015. Благодаря движку Fox Engine, созданному Kojima Productions, она подняла всю серию на новый уровень визуального качества.

Представленный ниже анализ основан на PC-версии игры с максимальными настройками графики. Часть изложенной здесь информации уже стала достоянием публики после доклада «Photorealism Through the Eyes of a FOX» на GDC 2013.

Шон Барретт: как я попал в видеоигровую индустрию

Время на прочтение8 мин
Охват и читатели5.4K
image


Программист Terra Nova: Strike Force Centauri, System Shock 2 и серии Thief Шон Барретт рассказывает о том, что привело его к программированию трёхмерной графики и работе над играми.

Один из постов Майка Абраша начинается с рассуждений о том, как его письменные труды повлияли на его карьеру. Это напомнило мне о том, как его труды повлияли на мою карьеру. Не уверен, говорил ли я когда-нибудь ему о том, что, возможно, благодаря ему я попал в игровую индустрию. Я подумывал написать ему письмо, но потом решил изложить всё это публично и провести небольшое исследование в этой области.

Когда я был подростком, в 80-х у меня был компьютер Atari 800, на котором я занимался обычными вещами (немного игр, в основном BASIC). (Технически, по крайней мере, изначально, им владела моя семья, но я был единственным пользователем.) Хотя это было практически невозможно на 800, но я заинтересовался 3D-графикой. Я изучал Pascal и работу 3D одновременно с расшифровкой программы для рисования каркасной графики из журнала Byte; я предпринимал хакерские попытки воспроизвести тот же эффект на 800. (В конце концов мне удалось выполнить на 800 трассировку лучами простой сферы с освещением по Ламберту, а затем клетчатых и отражающих сфер на Atari ST моего друга.)

Алгоритмы антиалиасинга в реальном времени

Время на прочтение19 мин
Охват и читатели55K
image

Алиасинг (aliasing) — это, возможно, наиболее фундаментальный и самый широко обсуждаемый артефакт 3D-рендеринга всех времён. Однако в игровом сообществе его часто недопонимают. В этой статье я подробно расскажу о теме сглаживания (антиалиасинга, anti-aliasing, AA) в реальном времени, особенно о том, что касается игр, и в то же время буду излагать всё достаточно простым языком.

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

Эту программу можно скачать здесь.

Прежде чем начать, позвольте мне сказать несколько слов о производительности: поскольку она является самым важным аспектом графики реального времени, мы в основном сосредоточимся на том, почему и как сегодня реализуется антиалиасинг. Я упомяну характеристики производительности, но строгая оценка всех представленных в этой статье способов антиалиасинга во разнообразных случаях реального использования будет слишком широкой темой для поста.
Читать дальше →

Информация

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