Size: a a a

2020 June 05

MW

Mad Way in unity3d.ru
Так я сравнивал пассивное использование, когда менять стейт не надо.
источник

MW

Mad Way in unity3d.ru
isOn = true, Counter.activeSelf = true.
источник

MW

Mad Way in unity3d.ru
Функция никогда не вызывается.
источник

YK

Yevhen Kazmin in unity3d.ru
Mad Way
Так я сравнивал пассивное использование, когда менять стейт не надо.
проверка все равно есть же
источник

YK

Yevhen Kazmin in unity3d.ru
if (isOn != Counter.activeSelf)
источник

YK

Yevhen Kazmin in unity3d.ru
вот это время кушает
источник

MW

Mad Way in unity3d.ru
if (isOn != Counter.activeSelf)

сам по себе уже ТЯЖЕЛЕЕ:

Counter.SetActive (isOn);
источник

MW

Mad Way in unity3d.ru
Потому что Counter.SetActive в первом варианте не вызывается.
источник

MW

Mad Way in unity3d.ru
Опечатался.
источник

YK

Yevhen Kazmin in unity3d.ru
не понял мысль сори
источник

YK

Yevhen Kazmin in unity3d.ru
что тяжелее что сверху или что снизу?
источник

MW

Mad Way in unity3d.ru
Тяжелее сверху.
источник

MW

Mad Way in unity3d.ru
Я сравнивал в пассивном состоянии, когда дальше проверки не заходит.
источник

MW

Mad Way in unity3d.ru
Как следствие, код внутри проверки не вызывался.
источник

MW

Mad Way in unity3d.ru
Но сама проверка на 2К объектах была в 2 раза тяжелее, чем Counter.SetActive(isOn).
источник

YK

Yevhen Kazmin in unity3d.ru
Mad Way
Как следствие, код внутри проверки не вызывался.
почитай про branch misprediction
источник

YK

Yevhen Kazmin in unity3d.ru
ты всегда должен в if писать более вероятное условие
источник

YK

Yevhen Kazmin in unity3d.ru
иначе будет долго работать программа
источник

YK

Yevhen Kazmin in unity3d.ru
напиши код
if (isOn == Counter.activeSelf)
..
else
Counter.SetActive(isOn)
источник

YK

Yevhen Kazmin in unity3d.ru
и померяй
источник