Обновить
0

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

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

Напомню, что ты пытаешься это объяснить челу, который заявляет себя девопсом с 10 годами опыта в ит. А он банально о ситуации, о которой пишет, не в курсе. Бф6, project motor racing, le mans ultimate, iracing не работают больше полугода без КВНа, а чел ходит на хабр и тыкает в нас решением очередного суда северозалупного района Костромской губернии.

Что значит “вверных блокировок подсетей облачных провайдеров”?

Спроси сообщество симрейсеров. РКН ничего специально не банил, но ничего не работает. Половина CF уже отъехала, а мы смотрим на штрафы в 2 млн рублей

Топтал - это место, где сначала проверяют, умеешь ли ты вообще придумывать решения и переносить свои мысли в код. Единственная часть, где у меня самого были вопросы, - решение задач с шарингом экрана. Но это лишь одна встреча из пяти-шести.

То, что видно на экране, не отражает сложности того, как на самом деле это построено. Каждая линия, кружок, градиент и прочие элементы реализованы наслоением, что позволяет нам отрисовывать маршрут на такой сложной карте. У Яндекс.Метро карта намного легче, на ней меньше элементов, она сама по себе меньше (примерно в 2.6 раз).

Карта Артемия Лебедева огромная. Чтобы она нормально выглядела при максимальном зуме на телефонах с большим экраном и хорошей плотностью пикселей, она должна быть примерно такого размера. Соответственно, на слабых телефонах карта показывается меньшего размера.
TextureView нам понадобился из-за того, что эта карта очень долго отрисовывается на слабых телефонах.

Без использования его нам пришлось бы делать надстройку над View и делать на ней отрисовку в отдельном потоке, чтобы не стопить UI-поток. В итоге получилась бы та же самая TextureView.
Ограничение размера одной текстуры в памяти GPU — это не баг, а стандартное ограничение GL(ES): www.khronos.org/registry/OpenGL-Refpages/es2.0/xhtml/glGet.xml (ищите GL_MAX_TEXTURE_SIZE).


В таком случае почему нам удалось отрисовать канвас 5000х5000 на большинстве телефонов, а на телефонах с определенными видеочипами нет?

Вообще статья наполнена какими-то голословными ничем не обоснованными (да и просто ошибочными) утверждениями об Android. Например, утверждение по поводу того, что SurfaceView
не может выдержать нагрузку больше отрисовки кубика 20х20
— ложь. TextureView не может быть эффективнее SurfaceView хотя бы согласно официальной документации.


Документация — это круто, но она не соответствует реальности. При перерисовке SurfaceView моргает черным цветом. Об этом можно почитать здесь

А вот ответ Romain Guy на StackOverflow об ограничении конкретно в Android.
Заявлен минимум в 2048x2048. Ну, и можно получить ограничения с помощью Canvas.getMaximumBitmapWidth() и Canvas.getMaximumBitmapHeight()


Не работает на Huawei Honor 6x, присылает нули.

Информация

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