Pull to refresh
2
0
Send message
Делал себе схожие настройки и столкнулся с проблемой: запросы на помеченные сайты иногда уходили с задержкой.

Чтобы это исправить, необходимо либо отключить FastTrack в Firewall -> Filter Rules (тогда будут проседания производительности), либо провести дополнительные настройки:

1. В Firewall -> Mangle дополнительно создать правило вида:

/ip firewall mangle
add action=mark-connection chain=prerouting connection-state=new \
dst-address-list=rkp new-connection-mark=connection_rkp passthrough=yes


2. В Firewall -> Filter настроить правило для FastTrack:

/ip firewall filter
add action=fasttrack-connection chain=forward comment="defconf: fasttrack" \
connection-mark=!connection_rkp connection-state=established,related


После этого маршруты через VPN и FastTrack будут уживаться вместе.

Кстати, удобно использовать Address List, туда можно заносить доменные имена, которые будут резолвиться при запуске.

Для DNS рекомендую включить DoH, который стал доступен в 6.47.
Отвечу как человек, перешедший (с кучей ругани) с кастомного движка на Unity.

1 Баги

В Unity много багов. Очень много. Эти баги не фиксятся годами. «Комунити из 100к юзеров» тут играет отрицательную роль: нужно больше времени на обработку сотен репортов от юзеров, по делу и не очень. Если у вас нет $100K для приобретения исходников движка или спеца по реверсингу, вы обречены. Если не верите, попробуйте свернуть игру в Hearthsone (AAA-игра от Blizzard на Unity) на iOS-устройстве, рвзверните и посмотрите на белые квадраты вместо текста.

2 Доп инструменты

Используя Unity, вы получаете набор генерализованных тулзов. Да, это классно для простых задач, но для реализации сложных штук вам обязательно понадобится собственный инструментарий. И когда вы напишете его поверх Unity, а там что-то упадет, закрыв за собой весь редактор, вы будете долго ругаться. У нас не раз терялись изменения в редакторе уровней из-за подобных проблем.

3 Новые фичи движка

Программисты на Unity привыкли искать готовые решения в Asset Store. Эти решения в 50% случаев не работают, а в 90% случаев работают не так, как надо.

Пример. Не далее как неделю назад прикручивал логин через Google Play Games, нашелся стандартный плагин. Одним из требований гейм-дизайнеров являлся тихий логин на старте без показа попапов. Каково же было мое удивление, когда вызов метода silentSignIn() показал мне окно с подтверждением авторизации! При этом код, который я несколько лет назад лично писал для проекта на кастомном движке, работает корректно до сих пор. В итоге я потратил несколько дней на то, чтобы отказаться от стандартного решения в пользу кастомного.

Что касается производительности, с ней в Unity все ужасно. Многие решения делаются на скорую руку, лишь бы успеть за рынком. Если не верите, попробуйте глянуть в дизассемблированный код, там много интересного.

4 Кроссплатформенность

Как ни странно, возникают серьезные проблемы при выходе новых платформ. Когда я портировал игру на Nintendo Switch, версии Unity под нее отсавали от основного релиза на пару месяцев, крашились при любом удобном случае, а 50% функциональности движка в принципе не работала (и не работает до сих пор). В итоге дошло до того, что мне пришлось патчить скодегененный il2cpp-код, иначе игра не запускалась в принципе (это решение так и ушло в продакшн). И тут опять мы возвращаемся к проблеме $100K.

5 Сотрудники

Я пособеседовал нескольких Unity-программистов. Так вот, их уровень порой просто за пределами добра и зла. Часть людей хочет около 150-200к, но даже не представляет, что есть асимптотика и чем структуры отличаются от классов. Доступность движка для новичков ведет к подавляющему снижению общего уровня грамотности.

И да, в Unity нет нормальной доки.
Существует культ выпускников физико-математического лицея №239 Санкт-Петербурга, эту константу очень часто можно увидеть в их коде.

Как-то раз в конторе, где я работал, была проблема с очень странным поведением игрового персонажа. Выяснилось, что причиной этого был следующий код:
int random()
{
    return 239;
}

Information

Rating
Does not participate
Registered
Activity