Создадут очередного оператора, которому дадут доступ к банковской тайне и заставят платить за это. Я уже со счета сбился сколько уже операторов придумали.
Оператор фискальных данных, которому надо передавать все чеки (налоговая и коммерческая тайны) и платить за это
Оператор ЭДО, через которого надо сдавать всю отчётность (включая налоговые декларации) и платить за это
Оператор маркировки, которому тоже необходимо сообщать при каждой продаже маркированного товара не только код (выбывающий из оборота), но и номер чека, регистрационный номер ККТ, ИНН, стоимость товара. Платить за генерацию уникальных кодов для каждой единицы товара (чем вам не майнинг?)
Оператор мусорный реформы, которому я обязан платить за то, что теперь вместо одной централизованной и бесплатной свалки, на каждой улице помойки (мусор из баков достают животные)
Оператор ЕГАИС
Оператор Меркурия
Оператор ЕБС
Платон
etc...
Зачем нужны ФНС и налоги, когда есть операторы и законы, обязывающие платить им дань (иначе штраф или тюрьма).
Пару месяцев назад "новая версия" Tor Browser для Android, внезапно, перестала блокировать рекламу, оказалось, что отвалился uBlock (и все остальные расширения, кроме встроенных NoScript и HTTPS everywhere), пришлось вернуть старую версию и отключить обновления. А теперь на Винде браузер радостно сам обновился до "новой версии" и тоже начал показывать рекламу, причина та же, что и на Android - uBlock не работает (другие расширения не проверял, галочка "разрешить в приватных окнах" стоит). Снова пришлось накатить предыдущую версию и отключить автоматическое обновление. Очень подозрительное совпадение (или диверсия?).
Не могу сказать про все биржи, но Binance без каких-либо колебаний реагирует на изменения законодательства в любой стране (уже сейчас действуют ограничения для пользователей из США/Китая/ЮАР/Сингапура). Также напомню, что Binance в РФ был заблокирован, но после принятия закона о ЦФА, внезапно, вся запрещённая информация на его сайте исчезла и доступ к сайту разблокировали.
Вы правы насчёт верификации, её легко пройти "отфотожопив паспорт" или можно "найти человека за небольшую сумму". Но что делать когда в один прекрасный день биржа заблокирует ваш аккаунт на котором пара тысяч/десятков тысяч/сотен тысяч баксов из-за того, что вы когда-то заводили крипту через обменник/майнинг пул, на который вчера США (например) наложили санкции? Как отправить досудебную претензию (или подать в суд), если аккаунт зарегистрирован на несуществующего (или левого) человека?
Моё решение было задать maxWalkSpeed сразу равным скорости бега, а в рантайме при ходьбе уменьшать (при беге восстанавливать) эту скорость. Но мне показалось, что такое решение "плохо пахнет".
Не имею профессионального опыта, скажу, как новичок, который пробовал Unity, Godot и UE4.
Размер движка. UE4 просто огромный. Надо скачать 12гб (что довольно не быстро для клиента Ростелекома с ADSL), на диске он будет занимать чуть меньше 30гб. Собрать из исходников ещё сложнее (мне не хватило старого SSD на 90гб, который я заботливо для этого освободил).
Поддержка IDE. В UE4 огромное количество макросов, подсказки по которым мне смог показать только Rider (но он хочет денег, даже от новичков и инди с нулевым бюджетом на разработку). VS Code и VS2019 с макросами вообще никак не помогали, с тем же успехом можно набирать код в блокноте. Для VS2019 есть Visual Assist, но он тоже не бесплатный :-(
Сложный API. Что в первую очередь будет делать новичок? Лично я полез делать Character Controller. Вроде UE4 в этом плане лучше всех, из коробки есть ACharacter, который умеет ходить/плавать/летать/приседать, умеет взаимодействовать с физикой и даже мультиплеер уже поддерживает. Но вот возможности бегать (или ложиться, например) нет. Кажется, что недостающую возможность можно очень легко и быстро реализовать. Для этого надо расширить два класса UCharacterMovementComponent и ACharacter. Наследуемся от UCharacterMovementComponent и офигиваем: получившийся класс унаследовал целую кучу переменных и методов от всей иерархии наследования, в которых новичок просто утонет. Официального гайда по расширению функционала контроллера персонажа нет, но я, как новичок продвинутый, решил поглядеть исходники, чтобы добавить режим бега, по аналогии с режимом ходьбы (банальное увлечение maxWalkSpeed в рантайме триггерило античит и персонажа телепортировало назад в режиме мультиплеера). Открываем UCharacterMovementComponent.cpp и офигиваем второй раз: 12к строк кода и это если не открывать исходники базовых классов, которые выше по иерархии. Много ли новичков умеют читать чужой код, да ещё и в таком объеме? Я умею, но как добавить дополнительный режим передвижения (без костылей) быстро сообразить не смог, ибо режимы передвижения перечислены в enum и задачка расширять функционал этого класса явно не для новичка. В защиту UE скажу, что в Unity встроенный Character Controller просто ужасен и его лучше писать с нуля: с физикой никак не взаимодействует, коллбек OnControllerColliderHit выделяет память в куче при каждом вызове, на форуме самой Unity можно найти сообщения от разработчиков от 2015 года, что этот контроллер был временным решением и они делают новый (его можно найти на GitHub'е, но он заброшен с конца 2019). Также UE единственный (из троицы) использует полноценное наследование, в Godot наследование не настоящее, в Unity его вообще нет и мы пишем обертки (MonoBehaviour) над стандартными компонентами.
Game Framework. Для новичка это именно минус. В Unity/Godot новичок создаёт пустую сцену, запускает и видит черный экран. Далее добавляет камеру, снова запускает и видит свою пустую сцену, а в Unity может ещё и подвигать камеру в scene view, пока сцена запущена, т.е. все логично и очевидно. UE в аналогичной ситуации магическим (для новичка) образом сам добавит дефолтный pawn (с летающей камерой) в сцену. Как новичок, я бы хотел видеть Game Framework в виде подключаемого плагина, но как не новичку мне очень не хватает подобного фреймворка в Unity/Godot, где производится изобретать собственные велосипеды.
Размер билда. Как новичок и инди-разработчик я вряд-ли смогу запилить полноценный проект с качественными моделями/текстурами/анимациями/сюжетом, поэтому в качестве целевой платформы лучше всего подходят мобильные устройства, где можно обойтись простыми low poly style моделями и простым/отсутствующим сюжетом. Будут ли довольны пользователи размером в 100+ мб в игре, в которой нет ни навороченной графики, ни длинного сюжета с озвученными диалогами?
Я не топлю за Unity или Godot, в обоих движках есть вещи, которые лично мне не нравятся. У Unity закрытые для простых смертных исходники, писать можно только на C# (подключить C++ либу можно, но вызывать её код можно только из C#). Unity использует форк Mono двухлетней давности, будут ли они переходить на dotnet6 неизвестно. Многие штуки, которые в UE бесплатны, надо покупать у сторонних разработчиков. Качество кода сторонних плагинов просто ужасно, спасибо сайтам, на которых можно скачать платные плагины и посмотреть за что просят несколько десятков баксов. Я не видел ни одного плагина для рантайма, у которого был бы оптимальный код, который приятно читать, многие не понимают разницы между полем и свойством и постоянно дёргают вычисляемый геттер вместо того, чтобы сохранить результат в локальную переменную (самое популярное Vector3.normalized, особо упоротые вызывают 3 раза по отдельности для x, y и z), не догадываются, что умножение на 0.5 быстрее деления на 2 и т.д. Да что там сторонние разработчики, если даже в самой Unity используется camelCase для public полей и свойств, а почти все обучающие материалы приучают не пользоваться инкапсуляцией, назначая сериализуемым полям модификатор public. Считаю, что в плохом качестве игр виноват не движок, а кодеры, которые C# только в Unity видели.
Godot развивается странно и медленно. Мне непонятно, зачем надо пилить собственный физический движок вместо того, чтобы обновить bullet до актуальной версии и глубже его интегрировать(прикрутить многопоточность, например). Методы для физических запросов странные: есть понятный raycast, а есть странный cast_motion, который можно использовать с любым примитивом(sphere, box, capsule, convex), но который возвращает массив с двумя дистанциями (безопасная дистанция до столкновения и дистанция, на которой произойдет столкновение), хотя я бы хотел знать точку попадания, нормаль, объект, с которым произошло пересечение. Баги не исправляют годами: колеса (VehicleWheel) не крутятся и не поворачиваются, если находятся в воздухе (не касаются земли); строгая типизация в gdscript не работает(вываливается ошибка), если из скрипта_1 ссылаться на скрипт_2, а из скрипта_2 ссылаться на скрипт_1(в моем случае в скрипте_1 был метод, который принимает аргумент типа скрипт_2, а скрипт_2 пытался вызывать этот метод из скрипта_1, на GitHub баг висит с 2018 года, обещание пофиксить переносили от версии к версии, сейчас обращают исправить в 4.0). Писать на GDNative тот ещё квест, проще форкнуть движок и расширять движок модулями.
Считаю, что UE4 лучший движок на рынке. Но им трудно пользоваться из-за его размеров. Будь бы у него такой же простой и безопасный API, как у Unity/Godot, то в сторону Unity я бы даже не смотрел.
Создадут очередного оператора, которому дадут доступ к банковской тайне и заставят платить за это. Я уже со счета сбился сколько уже операторов придумали.
Оператор фискальных данных, которому надо передавать все чеки (налоговая и коммерческая тайны) и платить за это
Оператор ЭДО, через которого надо сдавать всю отчётность (включая налоговые декларации) и платить за это
Оператор маркировки, которому тоже необходимо сообщать при каждой продаже маркированного товара не только код (выбывающий из оборота), но и номер чека, регистрационный номер ККТ, ИНН, стоимость товара. Платить за генерацию уникальных кодов для каждой единицы товара (чем вам не майнинг?)
Оператор мусорный реформы, которому я обязан платить за то, что теперь вместо одной централизованной и бесплатной свалки, на каждой улице помойки (мусор из баков достают животные)
Оператор ЕГАИС
Оператор Меркурия
Оператор ЕБС
Платон
etc...
Зачем нужны ФНС и налоги, когда есть операторы и законы, обязывающие платить им дань (иначе штраф или тюрьма).
На официальном сайте, например.
На винде работает последняя 10 версия 10.5.10, на Android 10.5.3
Не знаю. Для себя решил (и на Android, и на Windows) откатом на последнюю рабочую версию и отключением автообновлений.
Пару месяцев назад "новая версия" Tor Browser для Android, внезапно, перестала блокировать рекламу, оказалось, что отвалился uBlock (и все остальные расширения, кроме встроенных NoScript и HTTPS everywhere), пришлось вернуть старую версию и отключить обновления. А теперь на Винде браузер радостно сам обновился до "новой версии" и тоже начал показывать рекламу, причина та же, что и на Android - uBlock не работает (другие расширения не проверял, галочка "разрешить в приватных окнах" стоит). Снова пришлось накатить предыдущую версию и отключить автоматическое обновление. Очень подозрительное совпадение (или диверсия?).
Не могу сказать про все биржи, но Binance без каких-либо колебаний реагирует на изменения законодательства в любой стране (уже сейчас действуют ограничения для пользователей из США/Китая/ЮАР/Сингапура). Также напомню, что Binance в РФ был заблокирован, но после принятия закона о ЦФА, внезапно,
вся запрещённая информация на его сайте исчезла идоступ к сайту разблокировали.Вы правы насчёт верификации, её легко пройти "отфотожопив паспорт" или можно "найти человека за небольшую сумму". Но что делать когда в один прекрасный день биржа заблокирует ваш аккаунт на котором пара тысяч/десятков тысяч/сотен тысяч баксов из-за того, что вы когда-то заводили крипту через обменник/майнинг пул, на который вчера США (например) наложили санкции? Как отправить досудебную претензию (или подать в суд), если аккаунт зарегистрирован на несуществующего (или левого) человека?
Хм... Значит я был очень близок к цели)
Моё решение было задать maxWalkSpeed сразу равным скорости бега, а в рантайме при ходьбе уменьшать (при беге восстанавливать) эту скорость. Но мне показалось, что такое решение "плохо пахнет".
Не имею профессионального опыта, скажу, как новичок, который пробовал Unity, Godot и UE4.
Размер движка. UE4 просто огромный. Надо скачать 12гб (что довольно не быстро для клиента Ростелекома с ADSL), на диске он будет занимать чуть меньше 30гб. Собрать из исходников ещё сложнее (мне не хватило старого SSD на 90гб, который я заботливо для этого освободил).
Поддержка IDE. В UE4 огромное количество макросов, подсказки по которым мне смог показать только Rider (но он хочет денег, даже от новичков и инди с нулевым бюджетом на разработку). VS Code и VS2019 с макросами вообще никак не помогали, с тем же успехом можно набирать код в блокноте. Для VS2019 есть Visual Assist, но он тоже не бесплатный :-(
Сложный API. Что в первую очередь будет делать новичок? Лично я полез делать Character Controller. Вроде UE4 в этом плане лучше всех, из коробки есть ACharacter, который умеет ходить/плавать/летать/приседать, умеет взаимодействовать с физикой и даже мультиплеер уже поддерживает. Но вот возможности бегать (или ложиться, например) нет. Кажется, что недостающую возможность можно очень легко и быстро реализовать. Для этого надо расширить два класса UCharacterMovementComponent и ACharacter. Наследуемся от UCharacterMovementComponent и офигиваем: получившийся класс унаследовал целую кучу переменных и методов от всей иерархии наследования, в которых новичок просто утонет. Официального гайда по расширению функционала контроллера персонажа нет, но я, как новичок продвинутый, решил поглядеть исходники, чтобы добавить режим бега, по аналогии с режимом ходьбы (банальное увлечение maxWalkSpeed в рантайме триггерило античит и персонажа телепортировало назад в режиме мультиплеера). Открываем UCharacterMovementComponent.cpp и офигиваем второй раз: 12к строк кода и это если не открывать исходники базовых классов, которые выше по иерархии. Много ли новичков умеют читать чужой код, да ещё и в таком объеме? Я умею, но как добавить дополнительный режим передвижения (без костылей) быстро сообразить не смог, ибо режимы передвижения перечислены в enum и задачка расширять функционал этого класса явно не для новичка. В защиту UE скажу, что в Unity встроенный Character Controller просто ужасен и его лучше писать с нуля: с физикой никак не взаимодействует, коллбек OnControllerColliderHit выделяет память в куче при каждом вызове, на форуме самой Unity можно найти сообщения от разработчиков от 2015 года, что этот контроллер был временным решением и они делают новый (его можно найти на GitHub'е, но он заброшен с конца 2019). Также UE единственный (из троицы) использует полноценное наследование, в Godot наследование не настоящее, в Unity его вообще нет и мы пишем обертки (MonoBehaviour) над стандартными компонентами.
Game Framework. Для новичка это именно минус. В Unity/Godot новичок создаёт пустую сцену, запускает и видит черный экран. Далее добавляет камеру, снова запускает и видит свою пустую сцену, а в Unity может ещё и подвигать камеру в scene view, пока сцена запущена, т.е. все логично и очевидно. UE в аналогичной ситуации магическим (для новичка) образом сам добавит дефолтный pawn (с летающей камерой) в сцену. Как новичок, я бы хотел видеть Game Framework в виде подключаемого плагина, но как не новичку мне очень не хватает подобного фреймворка в Unity/Godot, где производится изобретать собственные велосипеды.
Размер билда. Как новичок и инди-разработчик я вряд-ли смогу запилить полноценный проект с качественными моделями/текстурами/анимациями/сюжетом, поэтому в качестве целевой платформы лучше всего подходят мобильные устройства, где можно обойтись простыми low poly style моделями и простым/отсутствующим сюжетом. Будут ли довольны пользователи размером в 100+ мб в игре, в которой нет ни навороченной графики, ни длинного сюжета с озвученными диалогами?
Я не топлю за Unity или Godot, в обоих движках есть вещи, которые лично мне не нравятся. У Unity закрытые для простых смертных исходники, писать можно только на C# (подключить C++ либу можно, но вызывать её код можно только из C#). Unity использует форк Mono двухлетней давности, будут ли они переходить на dotnet6 неизвестно. Многие штуки, которые в UE бесплатны, надо покупать у сторонних разработчиков. Качество кода сторонних плагинов просто ужасно, спасибо сайтам, на которых можно скачать платные плагины и посмотреть за что просят несколько десятков баксов. Я не видел ни одного плагина для рантайма, у которого был бы оптимальный код, который приятно читать, многие не понимают разницы между полем и свойством и постоянно дёргают вычисляемый геттер вместо того, чтобы сохранить результат в локальную переменную (самое популярное Vector3.normalized, особо упоротые вызывают 3 раза по отдельности для x, y и z), не догадываются, что умножение на 0.5 быстрее деления на 2 и т.д. Да что там сторонние разработчики, если даже в самой Unity используется camelCase для public полей и свойств, а почти все обучающие материалы приучают не пользоваться инкапсуляцией, назначая сериализуемым полям модификатор public. Считаю, что в плохом качестве игр виноват не движок, а кодеры, которые C# только в Unity видели.
Godot развивается странно и медленно. Мне непонятно, зачем надо пилить собственный физический движок вместо того, чтобы обновить bullet до актуальной версии и глубже его интегрировать(прикрутить многопоточность, например). Методы для физических запросов странные: есть понятный raycast, а есть странный cast_motion, который можно использовать с любым примитивом(sphere, box, capsule, convex), но который возвращает массив с двумя дистанциями (безопасная дистанция до столкновения и дистанция, на которой произойдет столкновение), хотя я бы хотел знать точку попадания, нормаль, объект, с которым произошло пересечение. Баги не исправляют годами: колеса (VehicleWheel) не крутятся и не поворачиваются, если находятся в воздухе (не касаются земли); строгая типизация в gdscript не работает(вываливается ошибка), если из скрипта_1 ссылаться на скрипт_2, а из скрипта_2 ссылаться на скрипт_1(в моем случае в скрипте_1 был метод, который принимает аргумент типа скрипт_2, а скрипт_2 пытался вызывать этот метод из скрипта_1, на GitHub баг висит с 2018 года, обещание пофиксить переносили от версии к версии, сейчас обращают исправить в 4.0). Писать на GDNative тот ещё квест, проще форкнуть движок и расширять движок модулями.
Считаю, что UE4 лучший движок на рынке. Но им трудно пользоваться из-за его размеров. Будь бы у него такой же простой и безопасный API, как у Unity/Godot, то в сторону Unity я бы даже не смотрел.