Я использую утилиту FZF (а так же плагин fzf.vim) для поиска файла в корневой директории проекта. В качестве команды долгое время использовал ag (The Silver Searcher) – мномопоточная и быстрая утилита, которая формирует список файлов по маске. Увы, результат ее …
🗒
Общая категория
IndexedDBFS + Local Storage
Локальное хранилище IDBFS отлично подходит для хранения профайла игры между сессиями. Позволяет хранить относительно большие файлы и с ним удобно работать благодаря реализованным fopen/fread/fwrite/fclose в Emscritpen. Но из-за политики безопасности браузеров это хранилище не всегда доступно. При попытке выполнить FS.syncfs() …
netcode.io
netcode.io – протокол для защищенного клиент/сервер соединения поверх UDP разработанный Glenn Fiedler. Протокол разработан для игр с выделенным сервером. Его основные фичи: Защита от MitM (man-in-the-middle) атак. Защита от DDoS атак. Защита против атак с повтором пакетов. Защита от зомби-клиентов. …
Android App Icons guidelines
При создании иконок следует соблюдать следующие основные требования: Размер: 512px x 512px Формат: 32-bit PNG Цветовое пространство: sRGB Максимальный размер файла: 1024KB Форма – заполненый квадрат. Google Play сам создаст маску, радиус закругления углов будет 20% от размера иконки. Теней …
Module.callMain undefined
Начиная с версии 1.38.41 от 07.08.2019 функция callMain больше не экспортируется. Это было сделано для лучшей минификации JavaScript, о чем сказано в официальном changelog. Если нужно старое поведение, достаточно добавить callMain в EXTRA_EXPORTED_RUNTIME_METHODS. В CMakeLists.txt своих проектов я делаю так: …
TCP против UDP
Копипаста с хабра TCP против UDP или будущее сетевых протоколов Перед каждым сервисом, генерирующим хотя бы 1 Мбит/сек трафика в интернете возникает вопрос: «Как? по TCP или по UDP?» В прикладных областях, в том числе и платформах доставки уже сложились …
TinyXML или TinyXML-2
Для описания игровых ресурсов, локализаций и настроек игры я использую XML. Поэтому в движке реализован класс для работы с ним. Он позволяет получить доступ к произвольной ноде и к произвольному атрибуту ноды. Интерфейс класса выглядит приблизительно так: Что позволяет прочесть …
LZ4 – lossless compression
У себя в движке я использую текстуры, данные в которых упакованы с помощью Zlib. А ведь когда-то давно я использовал RLE и RLE4. Но в некоторых проектах вместо или наравне с Zlib я использовал LZ4, скорость распаковки которого заявлена в …