Архив рубрики: Разработка

Коротко про Lerp

Линейная интерполяция (Linear interpolation, которую ещё называют ‘lerp’ или ‘mix’) — очень удобная функция при разработке игр, которая интерполирует в диапазоне [от..до] на основе параметра t, где t обычно находится в диапазоне [0..1].

Читать далее

Что нового готовит JDK 13?

Первые бета сборки JDK 13 уже доступны, можно пощупать. Релиз планируется в Сентябре 2019.

Из новинок: сырые строковые литералы (которые не вошли в JDK 12) и switch expressions.

Читать далее

Будни бекендщика: bcrypt в Node.js не умеет в worker threads

В какой-то момент для некоторых тяжёлых операций вы начинаете задумываться о том, что в ноде не хватает возможности создавать дочерние потоки/процессы. И вот вы обновляетесь до последней версии Node.js, прикручиваете worker_threads, и…

Какие-то либы отваливаются. В частности, отваливается bcrypt, но только на Windows, на Ubuntu полёт нормальный.

Читать далее

Будни юнитишника: сохраняйте глобальные ссылки на JNI объекты

Когда вы получили IntPtr на нативный Android объект, то GC может в какой-то момент почистить её (скорей всего, после выхода из локального скопа). Из-за того, что я одну ссылка не сохранил, дебажил код много часов, чтоб причину крашей найти.

Ещё хуже то, что стектрейс при краше никак не помогает.

Читать далее

Android P: новые возможности для работы с текстом

Все мы знаем, насколько важен компонент TextView. Вероятно, из визуальных элементов он используется чаще всего. Вот почему Google неустанно улучшает этот компонент. В новой версии SDK нам приготовил много вкусностей.

Читать далее

Unity-android-native: автоопределение типа при возврате объекта из JNI

Хорошо, когда вы знаете конкретный класс, который возвращает метод. Но что делать, если метод, к примеру getApplicationContext, возвращает абстрактный тип?

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

Читать далее

Библиотека для работы с Android sdk из C# кода

Многим приходится работать с Java sdk из Unity3d либо используя самописные плагины, либо, если достаточно базовых возможностей sdk, с помощью юнитишных классов AndroidJavaClass и AndroidJavaObject.

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

Читать далее

UnnyWorld: постмортем

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

Читать далее

Android Studio: Failed to crunch file при сборке

Понадобилось тут пересобрать один из старых проектов. И как всегда проблемы при сборке. Ладно, про ошибки, которые из-за обновления тулзов, я промолочу, ноAndroid Studio: Failed to crunch file — это ересь какая-то.

Читать далее

Будни юнитишника: Steam, Mac, Metal — всё плохо

Сделали поддержку Mac’а, а про Steam overlay и забыли. Недавно игрок пожаловался, что не может в игре покупку сделать, не показывалось окно с инапами. Оказалось, что Steam overay не поддерживает Metal на данный момент.

Читать далее