Pull to refresh
10
0
Владислав Шевченко @lutov

Архитектор ПО

Send message

Туториал по Unreal Engine. Часть 2: Blueprints

Reading time12 min
Views335K
image

Blueprints — это система визуального скриптинга Unreal Engine 4. Она является быстрым способом создания прототипов игр. Вместо построчного написания кода всё можно делать визуально: перетаскивать ноды (узлы), задавать их свойства в интерфейсе и соединять их «провода».

Кроме быстрого прототипирования, Blueprints также упрощают создание скриптов для непрограммистов.

В этой части туториала мы будем использовать Blueprints для следующих операций:

  • Настройка камеры с видом сверху
  • Создание управляемого игроком актора с простыми движениями
  • Настройка ввода игрока
  • Создание элемента, исчезающего при контакте с игроком
Читать дальше →
Total votes 22: ↑21 and ↓1+20
Comments2

Интеграция защищённого контура в Yandex Cloud: делимся опытом

Reading time9 min
Views2.2K

В этой небольшой статье расскажу, как мы организовали нашему клиенту закрытый контур в Yandex Cloud. Если конкретнее: покажу, как настроить StrongSwan site-to-site IKEv2 ipsec tunnel, а потом — инфраструктуру, состоящую в основном из кластера Kubernetes, GitLab, Vault и Keycloak. Приятного чтения!

Посмотреть, как реализован закрытый контур
Total votes 7: ↑6 and ↓1+8
Comments4

Don't Repeat Yourself: Как правильно использовать принцип DRY в разработке ПО

Reading time6 min
Views21K

Принцип “Не повторяйся” (Don't Repeat Yourself, или DRY), то есть избегай дублирования кода, часто относят к обязательным практикам в программировании. Однако в реальности часто можно увидеть, как в общем коде оказываются концептуально разные блоки, которые похожи только по внешним параметрам. Это неминуемо приводит к ухудшению кода и появлению "костылей", без которых он не работает. Именно поэтому слепое следование принципу DRY не всегда целесообразно! В этой статьей я расскажу про типичные ошибки при использовании этого правила и способы их избежать.

Читать далее
Total votes 14: ↑12 and ↓2+11
Comments5

Как я превратил обычный бизнес в IT компанию, читая книги

Level of difficultyEasy
Reading time14 min
Views9.6K

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

Я готовился к настоящему валу звонков, ведь никто ничего похожего не предлагал.

Казалось бы, что могло пойти так?
Total votes 51: ↑43 and ↓8+54
Comments17

Система условных обозначений BPMN

Reading time3 min
Views6.3K

Система условных обозначений BPMN позволяет разрабатывать, документировать и улучшать бизнес-процессы. Основное внимание в BPMN уделяется достижению прозрачности и понимания процессов.

Рассмотрим подробней.

Читать далее
Total votes 13: ↑8 and ↓5+7
Comments3

PyZelda своими руками или как геймдевить без Unreal, Unity и кредитов

Level of difficultyMedium
Reading time43 min
Views10K

Хабры и Хаброчки, я хотел бы перед самой статьёй обсудить вопрос целесообразности писать свой движок, вместо готовых решений. Есть куча статей, которые опишут разные движки от более популярных до менее. Я бы хотел затронуть немного другой вопрос: "Как человеку, который изучал программирование много лет заняться геймдевом?". Обычно, есть два пути в геймдев:

Умышленный путь. Это когда человек, который играет в игры рано или поздно решит их создать. Тогда, он выбирает где ему учиться этому и выучивает игровые движки и C-образные языки к ним (чаще всего, C#).

Путь прогеров. Программист увлекается математикой и пишет код. Так или иначе, везде где есть код — есть компьютер. Цифровые развлечения (в том числе и игры) не проходят мимо тех людей, который постоянно пишут код. Так, часть прогеров решает написать свою игру и начать свой путь в геймдев. Об этом пути мы и поговорим.

Так зачем выбирать "сложный" путь? Во-первых, не для всех он сложнее. Лично мне сложнее перейти на C# с использованием Unity, чем написать новый проект на Python. Во-вторых, люди не всегда понимают сам движок. Сейчас я преподаю в институте "Бизнеса и Дизайна". Это один из первых профильных учреждений, занимающихся геймдевом. И вот у студентов я спросил зачем им движок. Каково было моё удивление, что далеко не все понимаю, вообще зачем он нужен. Спойлер, не из-за пресетов.

Всех заинтересовавшихся, приглашаю в мир змеиных игр!

Погрузиться в змееленд
Total votes 42: ↑42 and ↓0+42
Comments25

Разбираемся с работой брокеров, или Что такое гарантия доставки сообщений и как с этим жить…

Level of difficultyMedium
Reading time12 min
Views5.7K

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

Читать далее
Total votes 15: ↑14 and ↓1+13
Comments10

Обзор NativePHP. Инструмент для создания собственных нативных desktop приложений на Laravel

Level of difficultyMedium
Reading time7 min
Views14K

Привет, коллеги!

В этой статье я сделаю небольшой обзор NativePHP, который появился на последнем Laracon. Что из себя представляет NativePHP? Перед нами фреймворк, который позволяет нам писать нативные десктоп приложения, используя PHP. Приложения кроссплатформенные - можно писать под Mac, Windows и Linux. И все это с использованием нашего любимого PHP с использованием Laravel. Но как обещают разработчики в будущем появятся и другие драйверы.

Читать далее
Total votes 17: ↑15 and ↓2+17
Comments53

JavaScript для QA. Фронтендер учит дебажить код через Devtools

Level of difficultyEasy
Reading time5 min
Views16K

Всем привет, меня зовут Иван, я инженер по тестированию (Manual and Automation). В ремесле более 2-х лет. В этой статье мы рассмотрим методы черного, серого и белого ящиков, а так же как JavaScript может быть использован для перехода от метода черного ящика к серому и белому.

Со мной сегодня senior фронтенд-разработчик, Алексей - специалист с большим опытом, он научит вас дебажить код в Devtools и ставить точку останова. Даст советы для QA как стать самостоятельнее и определять ошибки в коде с базовыми знаниями JavaScript. Ссылка на канал Алексея "Рассказ фронтендера"

Для чего нам нужна точка останова и как это связано с методами тестирования?

Что такое метод тестирования? Это метод подхода к тестированию: можно подойти к тестированию закрытыми глазами с тест-дизайном "Исследовательское тестирование", а можно изучить, что происходит под капотом и уже как механик капаться в грязи в чужом коде. Точка останова это один из гаечных ключей, которые помогут проверить код и его реализацию в проекте.

Протестировать снежинки
Total votes 9: ↑5 and ↓4+3
Comments25

Начинаем работать с цифровыми картами (ГИС)

Level of difficultyEasy
Reading time7 min
Views13K

Обзорная статья, которая поможет разобраться с базовыми понятиями, познакомит с основами, даст общее представление о принципах работы цифровых карт и геоинформационных систем (ГИС). Будет полезно тем, кто только начинает работать с картами и хочет начать в этом разбираться.

Читать далее
Total votes 11: ↑9 and ↓2+8
Comments12

Аутентификация по протоколу SAML с помощью OpenAM на примере Yandex Cloud

Reading time4 min
Views1.7K

В данной статье описывается, как настроить вход по технологии единого входа (SSO) по протоколу SAML в Yandex Cloud через Access Management платформу с открытым исходным кодом OpenAM.

Читать далее
Total votes 8: ↑8 and ↓0+8
Comments0

Как мы создавали и внедряли свою матрицу компетенций

Reading time7 min
Views24K

Привет, Хабр!

Сегодня поговорим про матрицы компетенций и, как мы их внедряли в «Рексофт». Мы уже рассказывали про матрицу Android-программиста, и как мы вводили кросс-интервью при повышении грейда, а сегодня я расскажу, о том, как все начиналось и куда мы пришли. Итак, поехали!

Читать далее
Total votes 20: ↑13 and ↓7+6
Comments20

Создание сервиса авторизации через систему ЕСИА

Level of difficultyMedium
Reading time18 min
Views8.7K

Всем привет. Меня зовут Динис, я старший разработчик в БФТ-Холдинге.

В данной статье приведен план по созданию сервиса авторизации через систему ЕСИА. Тема будет интересна тем, кто внедряет такой сервис для своего приложения. В статье я собрал ключевые выдержки из документации с частями кода, а весь код вы можете найти в конце статьи по ссылке на GitHub.

Что такое ЕСИА?

ЕСИА — единая система идентификации и аутентификации. В ней формируются, учитываются и хранятся сведения об участниках системы — физических и юридических лицах, которые прошли регистрацию с созданием учётной записи. Подтверждённая учётная запись в ЕСИА — своего рода электронный паспорт, с помощью которого можно получать доступ к разным сайтам, порталам и системам, не используя дополнительные средства регистрации и авторизации, например логин и пароль.

Читать далее
Total votes 9: ↑8 and ↓1+8
Comments14

Создание сервера для онлайн ММО игр на PHP ч. 9 — Игровые серверные механики

Level of difficultyEasy
Reading time3 min
Views5.2K

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

Суть работы взаимодействия сервера и клиентской части следующая:

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

Копирайт на нейросетевое искусство – сравнение пользовательских соглашений

Reading time5 min
Views5.8K

Мы изучили пользовательские соглашения нейросеток, генерирующих картинки, чтобы понять, какие права у нас есть.

Вот, что у нас получилось
Total votes 10: ↑9 and ↓1+12
Comments10

Apache Kafka и RabbitMQ: в чем разница и что лучше изучать?

Reading time6 min
Views59K

Мы решили внести свой скромный вклад в развитие комьюнити и перевели оригинальную статью. Статья опубликована на сайте Simplilearn.

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

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

Читать далее
Total votes 18: ↑14 and ↓4+15
Comments8

12 лучших книг для Project Manager

Reading time4 min
Views43K

Недавно проводила в Линкедине опрос, есть ли на рынке хорошие курсы для опытных Project Manager. Как и предполагала, их крайне мало.

Поэтому решила решила заняться саморазвитием по книгам.

Перебрав 10+ разных подборок, составила свой рейтинг 12+9 лучших книг по управлению проектами.

Получившаяся подборка одобрена уже 360+ менеджерами проектов.

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

Читать далее
Total votes 12: ↑6 and ↓6+3
Comments16

Как работает неточное сравнение строк

Reading time7 min
Views28K

https://fakt309.github.io/thisisthewall/

В языках программирования строки сравниваются очень просто, если строка отличается хотя бы на один символ, то возвращает false.

Но вот что если мы хотим не просто получать дискретное значение (true / false), а дифференцированное, например в процентах. Ведь согласитесь строки test и testing гораздо ближе к друг другу, чем test и abcd. Для данной проблемы существует множество решений, мы поговорим о самый популярных алгоритмах (также об их модификациях):

Расстояние Хэмминга

Расстояние Левенштейна

Сходство Джаро — Винклера

Коэффициент Сёренсена

Читать далее
Total votes 45: ↑42 and ↓3+44
Comments43
1
23 ...

Information

Rating
Does not participate
Location
Белгород, Белгородская обл., Россия
Date of birth
Registered
Activity