Pull to refresh
9
0
Павел @patch1

Unity developer

Send message

Разделяй и властвуй — Использование FSM в Unity

Reading time7 min
Views5.3K

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

Читать далее
Total votes 4: ↑3 and ↓1+5
Comments8

Как проходить собеседования на Unity разработчика

Reading time7 min
Views73K

Собеседование на юнити-разработчика состоит в основном из трёх частей. Процесс выглядит практически один в один как и на любую другую техническую специальность в IT. Сначала собеседование с HR или рекрутером, потом техническое интервью с Team Leader команды разработки. В конце, если предыдущие этапы успешно пройдены, вас ждет финальный босс - Project Manager(или Product Owner). Эта статья будет полезна для джунов и мидлов, а также людей которые недавно познакомились с Unity. Бородатые синьоры и лиды - буду рад увидеть от вас в комментариях ваш опыт.

Читать далее
Total votes 4: ↑3 and ↓1+4
Comments7

Zenject: Как IoC контейнер может убить Внедрение Зависимостей на вашем проекте

Reading time10 min
Views41K
Откуда же начинаются опасности? Допустим вы твердо решили, что будете разрабатывать проект, придерживаясь определенной концепции или подхода. В нашей ситуации это DI, хотя на его месте также может оказаться, например, Реактивное Программирование. Вполне логично, что для реализации вашей цели, вы обратитесь к готовым решениям (в нашем примере — контейнер DI Zenject). Вы ознакомитесь с документацией и начнете строить каркас приложения, используя основной функционал. Если на первых порах использования решения у вас не возникнет неприятных ощущений, то скорее всего, оно задержится на вашем проекте на всю его жизнь. По мере работы с базовыми функциями решения (контейнера) у вас могут возникать вопросы или желания сделать некоторый функционал более красивым или эффективным способом. Наверняка, в первую очередь вы обратитесь за этим к более продвинутым «фичам» решения (контейнера). И на этом этапе может возникнуть следующая ситуация: вы уже неплохо знаете и доверяете выбранному решению, в силу чего многие могут не задуматься насколько идеологически правильным может быть использование того или иного функционала в решении, или переход к другому решению уже является достаточно дорогим и нецелесообразным (например приближается deadline). Вот на этом этапе и может возникнуть самая опасная ситуация — функционал решения применяется с малой осторожностью, или в редких случаях просто на автомате (бездумно).
Читать дальше →
Total votes 8: ↑4 and ↓40
Comments12

Даннинг с Крюгером, Сократ и круги знаний

Reading time4 min
Views35K

Меня давно занимает тема познания. Так я столкнулся с изречением Сократа — «Я знаю, что ничего не знаю», с эффектом Даннинга-Крюгера. Уверился в истинности этих концепций. Увидел их взаимосвязь. А кроме того мне у меня появилась уверенность, что можно математически обосновать наличие эффекта Даннинга-Крюгера.

Читать дальше →
Total votes 18: ↑15 and ↓3+12
Comments39

Принцип KISS в разработке

Reading time7 min
Views17K
Следующий доклад с Pixonic DevGAMM Talks, который мы расшифровали, немного философский — это выступление Константина Гладышева. Он Lead Game Programmer в 1C Game Studios и рассказывал о принципе управления сложностью разработки в контексте всего продукта, а не отдельных фичей. И на примерах показал, почему главное в разработке — это определить, чего делать не надо. Про другие доклады можно почитать по ссылкам в конце статьи.

Total votes 30: ↑30 and ↓0+30
Comments3

90+ бесплатных ресурсов для самостоятельного обучения онлайн

Reading time6 min
Views681K

Хочу поделиться списком полезных образовательных ресурсов, среди которых каждый найдет для себя что-то интересное и новое. Главное рассмотрим в начале — IT и иностранные языки. А следом будет подборка сервисов и ютуб-каналов, связанных с наукой, образованием в целом, бизнесом и творчеством.


image
Читать дальше →
Total votes 24: ↑24 and ↓0+24
Comments20

Теперь я тимлид, но почему мне так плохо? Практические советы

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



То, что доклад на эту тему был признан лучшим на конференции для тимлидов и о тимлидах, показывает, насколько действительно часто встречается такая ситуация. Но надо признать, конечно, что Евгений Кот (bunopus) заработал это «признание» еще и великолепным перформансом. С удовольствием делимся с вами его записью.
Total votes 52: ↑51 and ↓1+50
Comments9

Доступно о кватернионах и их преимуществах

Reading time13 min
Views220K

От переводчика: ровно 175 лет и 3 дня назад были изобретены кватернионы. В честь этой круглой даты я решил подобрать материал, объясняющий эту концепцию понятным языком.

Концепция кватернионов была придумана ирландским математиком сэром Уильямом Роуэном Гамильтоном в понедельник 16 октября 1843 года в Дублине, Ирландия. Гамильтон со своей женой шёл в Ирландскую королевскую академию, и переходя через Королевский канал по мосту Брум Бридж, он сделал потрясающее открытие, которое сразу же нацарапал на камне моста.

$i^2=j^2=k^2=ijk=-1$




Памятная табличка на мосту Брум Бридж через Королевский канал в честь открытия фундаментальной формулы умножения кватернионов.

В этой статье я постараюсь объяснить концепцию кватернионов простым для понимания образом. Я объясню, как можно визуализировать кватернион, а также расскажу о разных операциях, которые можно выполнять с кватернионами. Кроме того, я сравню использование матриц, углов Эйлера и кватернионов, а затем попытаюсь объяснить, когда стоит использовать кватернионы вместо углов Эйлера или матриц, а когда этого делать не нужно.
Читать дальше →
Total votes 83: ↑83 and ↓0+83
Comments54

«Божественный» код (GOD'S code)

Reading time7 min
Views24K


«Божественный» код — громкий термин, который может показаться желтым заголовком, но всё же именно о таком коде будет идти речь: из каких частей он состоит и как его писать. Это история о моих стараниях сделать так, чтобы задачи не возвращались с code review с пометкой: «Всё хе*ня — переделать».

У меня нет профильного образования, и учиться программированию приходилось на практике, через ошибки, ссадины и ушибы. Непрерывно работая над улучшением качества написанного кода, я вырабатывал некоторые правила, которым он должен соответствовать. Хочу ими поделиться.
Читать дальше →
Total votes 42: ↑36 and ↓6+30
Comments205

Openspace Agility: внедряем Agile во всей компании (теперь вместе с руководством!)

Reading time4 min
Views1.9K
Сейчас, когда уровень понимания и применения Agile в России вырос, выросли и проблемы, с которыми сталкиваются все Agile энтузиасты при внедрении этой организационной культуры.

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

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

Читать дальше →
Total votes 14: ↑7 and ↓70
Comments0

Карты из шестиугольников в Unity: неровности, реки и дороги

Reading time95 min
Views18K
image


Части 1-3: сетка, цвета и высоты ячеек

Части 4-7: неровности, реки и дороги

Части 8-11: вода, объекты рельефа и крепостные стены

Части 12-15: сохранение и загрузка, текстуры, расстояния

Части 16-19: поиск пути, отряды игрока, анимации

Части 20-23: туман войны, исследование карты, процедурная генерация

Части 24-27: круговорот воды, эрозия, биомы, цилиндрическая карта

Часть 4: Неровности


Оглавление


  • Сэмплируем текстуру шума.
  • Перемещаем вершины.
  • Сохраняем плоскостность ячеек.
  • Подразделяем рёбра ячеек.

Пока наша сетка являлась строгим узором из сот. В этой части мы добавим неровности, чтобы карта выглядела естественнее.
Total votes 23: ↑23 and ↓0+23
Comments1

Долой таблички! Как выучить английские времена

Reading time5 min
Views258K


Времена в английском языке традиционно считаются одной из самых сложных тем в обучении. Они прочно ассоциируются с зазубриванием длинных малопонятных таблиц и запоминанием неочевидных правил. На самом деле, все не так. Рассказываем, как быстро овладеть временами и их аспектами, чтобы начать говорить по-английски, не спотыкаясь.
Читать дальше →
Total votes 77: ↑72 and ↓5+67
Comments97

Готовимся к релизу в App Store. Инструкция для новичков и лайфхаки

Reading time5 min
Views78K


Подготовили гайд для заказчиков, которые занимаются публикацией приложения самостоятельно. Рассказываем о предрелизных хлопотах: как создать аккаунт разработчика, сколько времени заложить на оформление D-U-N-S number, какие скрины подготовить для стора.
Читать дальше →
Total votes 30: ↑25 and ↓5+20
Comments4

Архитектура сервера онлайн-игры на примере Skyforge

Reading time12 min
Views191K
Привет, Хабр! Я Андрей Фролов, ведущий программист, работаю в Mail.Ru над Next-Gen MMORPG Skyforge. Вы могли читать мою статью про архитектуру баз данных в онлайн-играх. Сегодня я буду раскрывать секреты, касающиеся устройства сервера Skyforge. Постараюсь рассказать максимально подробно, с примерами, а также объясню, почему было принято то или иное архитектурное решение. По нашему серверу без преувеличения можно написать целую книгу, поэтому для того, чтобы уложиться в статью, мне придется пройтись только по основным моментам.

image

Читать дальше →
Total votes 141: ↑127 and ↓14+113
Comments179

ИП и IT: вечный спор о главном

Reading time6 min
Views35K
У всех авторов есть цель публикаций на Хабре: моя — донести до сообщества те проблемы, которые не видны на первый взгляд, но имеют колоссальное значение для экономики, социальных отношений и, конечно же, развития технологий.

Одна из таких тем, которую пытался поднимать и не раз — это проблемы ИП в IT.

Судя по полученным (и не только на Хабре) данным, есть две — противоположные — позиции: одни утверждают: «при этой схеме я о налоговой единственное что и знаю — только то, что туда надо декларацию отправлять почтой, и раз в квартал отчислять 6%. Возможно на других схемах какие-то непреодолимые трудности, тут не знаю. При этом я с радостью эти 6% отчисляю, они позволяют мне иметь белый доход ни от кого не прячась».

Вторая говорит о том, что налог сам по себе — не проблема, а вот бюрократия (на местах особенно), отсутствие гарантий за все взносы (скажем, из недавнего — заморозка пенсий при отсутствии заморозки выплат в ПФР и другие фонды), а главное — коррупция даже «на местах» — это беда, которая для it и секторов с ним связанных, скажем, e-commerce куда более глубокая, чем видится на первый взгляд.


Читать дальше →
Total votes 40: ↑33 and ↓7+26
Comments160

5 курсов, которые помогут начать свой путь в дизайне игр

Reading time2 min
Views35K
Это статья для тех, у кого появилось желание получить или улучшить навыки дизайна игр. В ней я приведу пять лучших, на мой взгляд, курсов на эту тему. Независимо от того, что именно вы хотите создавать – персонажей, окружения или пейзажи, – по каждому направлению вы найдете подробные видеоуроки со всей необходимой информацией.


Читать дальше →
Total votes 24: ↑21 and ↓3+18
Comments2

25 интересных книг для дизайнеров в открытом доступе

Reading time5 min
Views31K
Предлагаем вниманию читателей свежий список англо- и русскоязычных книг для дизайнеров, с которыми можно ознакомиться в Сети. В эту подборку вошли как издания из библиотек крупных компаний, так и работы независимых авторов.

Библиотека UX Pin



«Web Design Trends 2017»
Очередной выпуск из серии изданий о современных трендах. Описываются и препарируются практики от таких ведущих компаний, как Paypal, Adidas, Starbucks, Facebook, Spotify, Fitbit, Google и Dropbox – всего 61 пример, с подробным разбором для каждого.

Скачать

«Interaction Design Best Practices»
Шесть глав о том, как создавать отзывчивый дизайн, с которым пользователю легко взаимодействовать. В качестве иллюстраций к теоретическому материалу приводятся кейсы от крупных IT-компаний (MailChimp, Mint, Apple, KickStarter, Google, AirBnB, Netflix).

Скачать
Читать дальше →
Total votes 26: ↑23 and ↓3+20
Comments3

Итак, вы создали игру. Что дальше?

Reading time11 min
Views25K
image

Игра уже почти в состоянии альфа-версии. Месяцами вы упорно работали над ней, до цели остался последний рывок, а финишная линия уже видна. Вы планируете потратить несколько следующих месяцев на полировку, настройку и балансировку своего шедевра, прежде чем показать его миру и заработать состояние. Но это не совсем верно. Ещё многое предстоит сделать. Фактически, перед вами скоро откроется совершенно новый мир, пока вы будете гуглить информацию о маркетинге, PR, создании сообщества и издании игры. Вы читали постмортемы, слышали страшные истории и смотрели видео с GDC об играх, разваливавшихся за пару последних месяцев разработки или пропавших в пучине после выпуска из-за недостаточной огласки или апатии. Теперь вас беспокоит судьба вашего замечательного творения, в которое вы вложили месяцы творческой работы и энергии. Страх постепенно овладевает вами. Ужас от того, что ваша игра может просто кануть в небытие.

Предстоит ещё многое сделать! Если вы похожи на меня, то у вас в чём-то не хватает опыта. Все мы обладаем разными навыками и хорошо справляемся со своей работой, но никто не может быть специалистом во всех областях. Например, я в первую очередь программист, и я могу заниматься заниматься массой других вещей (кроме графики, в ней я не силён), но создание бизнеса, маркетинг, PR и создание сообщества… Нет, для меня это всегда было загадкой, и я всегда игнорировал эти аспекты до последнего момента, после чего, наконец, заставлял себя сделать кое-как эту часть работы. Просто для меня это не очень интересная часть процесса разработки игры, и я думаю, что большинство с этим согласится. Кроме фанатов маркетинга, естественно.
Читать дальше →
Total votes 14: ↑13 and ↓1+12
Comments3

Обзор дополнений для Blender 3D

Reading time3 min
Views103K

Не секрет, что пакет Blender 3D набирает всё большую популярность среди 3D дизайнеров и Indie разработчиков игр, т.к. является очень мощным и бесплатным средством разработки. Обладая возможностью не только моделирования, но и скульптинга, рисования текстур по модели, подготовки модели для 3D печати, motion capture и еще многими и многими возможностями. Однако, разработчики Blender`а часто акцентируют внимание на то, что много полезных функций реализованы в виде addon`ов, которые включены в дистрибутив, но не включены для работы по умолчанию. Моделирование, это моё хобби и под катом, моя подборка дополнений, которые на мой взгляд сильно облегчают жизнь и упрощают моделирование. В данной статье, я рассмотрю дополнения, которые работают с актуальным на данный момент Blender 2.74.
Посмотрим...
Total votes 31: ↑30 and ↓1+29
Comments15

Сценарист Dune II и Legend of Kyrandia о нарративном дизайне, судьбе Westwood Studios и сотрудничестве с Plarium

Reading time6 min
Views11K
Рик Гаш уже более 50 лет занимается игровой сценаристикой и геймдизайном. В 1990 году Рик пришел в маленькую компанию Westwood Studios, состоящую из 26 человек. Новому сотруднику доверили работу над несколькими проектами, целью которых было просто выиграть время на разработку Command & Conquer. Так Рик Гаш и стал создателем игр, повлиявших в итоге на всю игровую индустрию: Dune II, The Legend of Kyrandia и Lands of Lore.

В рамках работы над совместным проектом, Рик побывал в нашей студии и рассказал о работе в игровой индустрии, нарративном дизайне и создании сценария для Dune II.


Читать дальше →
Total votes 14: ↑12 and ↓2+10
Comments28

Information

Rating
Does not participate
Location
Минск, Минская обл., Беларусь
Date of birth
Registered
Activity