Как стать автором
Обновить
2
0

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

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

Стерео пост // Как сделать

Время на прочтение2 мин
Количество просмотров5.5K

Всем привет! Уже несколько лет разрабатываю ретро-инди-игру, стилизованную под текстовый режим. Социальные сети — одно из отличных мест для общения с комьюнити и проверки дизайнерских гипотез.

Для того, чтобы показывать дизайн своей игры с текстовыми параллакс-слоями, я решил использовать такую возможность Фейсбука, как 3D-изображения. Оказалось, что сделать их достаточно просто.

Читать далее
Всего голосов 30: ↑30 и ↓0+30
Комментарии6

Оптимизация Unity UI

Время на прочтение10 мин
Количество просмотров32K

image


В этой статье разбираются вопросы оптимизации UI-элементов проектов, сделанных в ​Unity​. На основании информации из официальной документации и личного опыта я постарался наглядно объяснить принципы работы UI-элементов. Также здесь вы найдёте практические советы, которые помогут улучшить производительность вашего проекта в том, что касается пользовательского интерфейса.

Читать дальше →
Всего голосов 31: ↑31 и ↓0+31
Комментарии11

Гайд по мобильной рекламе для тех, кто задумался о монетизации

Время на прочтение11 мин
Количество просмотров13K

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

Читать далее
Всего голосов 31: ↑30 и ↓1+39
Комментарии5

Батлрояль за 2 месяца: как мы обновили сетевой код и на 20% сократили траты на сервера

Время на прочтение9 мин
Количество просмотров9.6K

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

В этой статье расскажу о том, как мы обновили сетевой код для собственной королевской битвы на Unity, ввели систему сетевых чанков, контролируемый рандом и в результате сократили траты на сервера на 20%.

Читать далее
Всего голосов 44: ↑44 и ↓0+44
Комментарии10

Безопасность в мобильных приложениях

Время на прочтение5 мин
Количество просмотров7.4K

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

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

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

Читать далее
Всего голосов 20: ↑19 и ↓1+22
Комментарии1

Пишем шейдеры кодом в Unity URP (LWRP)

Время на прочтение55 мин
Количество просмотров24K

Введение


Здравствуй, Хабр. Сегодня хочется рассказать немного о том, как можно быстро и безболезненно (почти) начать писать классические текстовые шейдеры в Unity с использованием Lightweight Rendering Pipeline (LWRP, а ныне URP — Universal Render Pipline) — одним из примеров конвейера Scriptable Rendering Pipeline (SRP).

А как же Shader Graph?


Shader Graph — это удобное и быстрое средство прототипирования или написания простых эффектов. Однако, порою, требуется написать нечто сложное и комплексное и вот тогда — количество нод, кастомных функций, суб-графов неимоверно увеличивается, отчего даже самый матёрый программист графики начинает путаться во всём этом бардаке. Все мы понимаем, что автоматически генерируемый код априори не может быть лучше написанного вручную — за примерами ходить далеко не нужно, ибо любая ошибка в планировке нод может привести к тому, что уже известный результат вычислений в вершинном шейдере будет посчитан повторно во фрагментом. Бывают и люди, которым просто удобнее работать с кодом, а не с нодами. Причины могут быть разными, но суть одна — долой ноды, да здравствует код!

2020-01-19-17-07-35
Читать дальше →
Всего голосов 9: ↑9 и ↓0+9
Комментарии2

Скелетная анимация на стороне видеокарты

Время на прочтение6 мин
Количество просмотров17K

Не так давно Unity представила ECS. В процессе изучения мне стала интерестно, а каким образом можно подружить анимацию и ECS. И в процессе поиска я наткнулся на интересную технику, которую применяли ребята из NORDVEUS в своем демо для доклада Unite Austin 2017.
Unite Austin 2017 — Massive Battle in the Spellsouls Universe.


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


Зачем такие сложности, спросите вы?


Ребята из NORDVEUS одновременно отрисовывали на экране большое количество однотипных анимированных объектом: скелетов, мечников. В случае использования традиционного подхода: SkinnedMeshRenderers и Animation\Animator, повлечет за собой увеличение вызовов отрисовки и дополнительную нагрузке на CPU по просчету анимации. И чтобы решить эти проблемы анимацию перенесли на сторону GPU, а точнее в вершинный шейдер.


Читать дальше →
Всего голосов 26: ↑26 и ↓0+26
Комментарии38

Работа с компрессией текстур в Unity3D + NGUI

Время на прочтение5 мин
Количество просмотров18K
Привет Хабровчане!

Это мой первый, но надеюсь не последний пост на хабр, так что не судите строго.

Хотелось бы поделиться разработкой, которую мы успешно внедрили у себя в Heyworks и используем на проекте Pocket Troops (Неудержимые). Проблема, с которой сталкивались и сталкиваются все разработчики, при чем не только работающие с NGUI и Unity3d, но и с другими движками и пакетами, это поиск золотой середины между качеством и весом игровых интерфейсов (впрочем, это не только интерфейсов касается). В этой статье я постараюсь помочь убить двух зайцев одной пулей.
Кому интересно, добро пожаловать под кат.
Всего голосов 14: ↑13 и ↓1+12
Комментарии26

Optimization Unity3d UI by GPU (for example minimap) или создаем миникарту без дополнительных камер и спрайтов

Время на прочтение4 мин
Количество просмотров13K
Всем привет!

«Если можешь что-то посчитать на GPU, делай это»
// Конечно в рамках разумного

image

VS

image
Обращаем внимание на разницу в фпс

Начну, пожалуй, с предыстории. Один из наших программистов, решил проверить UI на предмет падения фпс. И мы нашли интересную зависимость, при отключении миникарты фпс поднимался в процентном соотношении. Интересно. Нужно решать проблему. Сразу напишу что про атласы и различные пулы, мы пробовали. И тогда я решил заняться этим вопросом более детально. И тут первая мысль, которая меня посетила, UI использует материал, значит можно все перенести на ГПУ, начнем.
Читать дальше →
Всего голосов 15: ↑13 и ↓2+11
Комментарии29

Google Play и 2K установок в сутки без денежных вложений (+ статистика и доходы)

Время на прочтение2 мин
Количество просмотров34K


Всем привет! Решил я поделиться с Вами опытом «бесплатного пиара» в Google Play, а именно способами для достижения 2K установок в день без денежных вложений. Вся статистика прилагается +информация о доходах

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

Статистика, указанная в статье, собрана с нового приложения, которое живет с 24 мая 2017

Читать дальше →
Всего голосов 40: ↑36 и ↓4+32
Комментарии24
2

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность

Специализация

Application Developer
Android development
Java
Kotlin
Clean Architecture