Size: a a a

2020 April 02

AN

Arthur Novikov in unity3d.ru
Начал сравнивать координаты:
GetBounds().min.y >= platforms[i].GetBounds().max.y

В итоге max = 0.75, а min - 0.7499999, и шар проваливается. Как исправить эту гадскую разрядность? У меня сейчас только одна идея - переопределить оператор >, <, чтобы не округлять каждое сравнение до чего-то там.
источник

RM

Roman Mindiashvili in unity3d.ru
Arthur Novikov
Начал сравнивать координаты:
GetBounds().min.y >= platforms[i].GetBounds().max.y

В итоге max = 0.75, а min - 0.7499999, и шар проваливается. Как исправить эту гадскую разрядность? У меня сейчас только одна идея - переопределить оператор >, <, чтобы не округлять каждое сравнение до чего-то там.
Округления, да.
источник

RM

Roman Mindiashvili in unity3d.ru
Либо дельту поставить между значениями и по ней сравнивать
источник

AN

Arthur Novikov in unity3d.ru
Roman Mindiashvili
Либо дельту поставить между значениями и по ней сравнивать
Да как-то стрёмно каждый раз писать:
if (GetBounds().min.y - platforms[i].GetBounds().max.y >= -Epsilon)
источник

М

Москаль in unity3d.ru
Парни напомните кто помнит. По какому принципу юнити не батчит спрайты из одного атласа? Щас смотрю, меняю их размер рандомно, меняю позицию немного (дрожат) но всеравно батчит их. Я думал батчинг ломает смена позиции
источник

М

Москаль in unity3d.ru
Хотя странно. Я думал если спрайт например дрожит (через до твины) то есть меняет позицию, он вызывает перерисовку всего канваса. Как это отследить? В профайлере UI не вижу, там чистая линия идет
источник

SR

Serhii Romanenko in unity3d.ru
Москаль
Парни напомните кто помнит. По какому принципу юнити не батчит спрайты из одного атласа? Щас смотрю, меняю их размер рандомно, меняю позицию немного (дрожат) но всеравно батчит их. Я думал батчинг ломает смена позиции
ломается когда следующий рендерер юзает отличный от текущего материал, например когда рендерится TMPro
источник

М

Москаль in unity3d.ru
Serhii Romanenko
ломается когда следующий рендерер юзает отличный от текущего материал, например когда рендерится TMPro
я вроде когда изучал давно, читал что если двигается UI элемент, то весь канвас перерисовывается в меш. Но как это отследить? Что он перерисовался
источник

SR

Serhii Romanenko in unity3d.ru
лучше дебажить во Frame Debugger
источник

SR

Serhii Romanenko in unity3d.ru
если там нет фиттеров и жестких layout перестроений то может быть что не будет весь UI перерисовываться
источник

М

Москаль in unity3d.ru
У меня вопрос. Пока не совсем понимаю где и когда использовать UniRX. Вот хороший видос, в конце он показывает пример преобразование. НО ЧТО ЕМУ ЭТО ДАЛО ? То что он отказался от update... но если там будет больше проверок и результатов, что за портянка будет в итоге
источник

М

Москаль in unity3d.ru
источник

RD

Roman Dyachenko in unity3d.ru
Roman Dyachenko
Я сейчас начинаю тесты делать разных способов: www (.texture и .LoadImageIntoTexture), UnityWebRequestTexture, File.ReadAllBytes+Texture2D.LoadImage
Посмотрю, где какое общее время операций, распределение времени между этапами, какие этапы можно например в поток вынести или заранее делать...
Если эти 4 способа использовать втупую (просто грузить в Texture2D всё подряд, для File.ReadAllBytes перед каждой итерацией делать yield на кадр),
то по степени плавности прокрутки UI-контента на фоне в редакторе и сборке получилось так:
1) UnityWebRequestTexture (с большим отрывом, фризов вообще нет, но это на десктопе — на планшете могут появиться)
2) www.LoadImageIntoTexture
3) File.ReadAllBytes
4) www.textureNonReadable

Тестил на 32 одинаковых изображениях, 3000х2000 пикселей, 4 МБ веса.
В моей рабочей ситуации будет по-другому: 1000 изображений по 30-100 кб, 256х256, но на больших картинках легче отследить фризы в прокрутке.

По суммарному времени загрузки всех изображений разница очень маленькая.
источник

М

Москаль in unity3d.ru
по идеи вывернул на изнанку, попробуй размер изменить или скалирование в обратную сторону
источник

М

Москаль in unity3d.ru
Блин прикольно, я думал зенжект качать с гита, а он прям в юнити сторе есть и совсем новый ыыыы
источник

ВК

Влад Кибер in unity3d.ru
Для оптимизации под разные разрешения надо на канвасе Scale with screen size поставить и ползунок match на 1 поставить ?
источник

ВК

Влад Кибер in unity3d.ru
Или 0 оставить ?
источник

М

Москаль in unity3d.ru
Влад Кибер
Для оптимизации под разные разрешения надо на канвасе Scale with screen size поставить и ползунок match на 1 поставить ?
разрешение зависит от устройства конечного
источник

ВК

Влад Кибер in unity3d.ru
Москаль
разрешение зависит от устройства конечного
На 0.5 ?
источник

m

mptyy in unity3d.ru
когда я ставлю 1 всё идет по одному месту, 0 тоже, так что 0.5 - идеал
источник