никак, кроме сглаживания (не сильно дешовое по ресурсам ни разу) чтоб сгладить/замаскировать/убрать эффект. и то тогда намои взгляд "пиксель арт" пойдет лесом, суть его как бы))
хм. думал что у вас все же какой-то плагин обертка, а не просто библиотеку используете - поэтому и предположил что просто обновление фаила - не подходит.
вы саму сборку смотрели? фаил расковыривали? возможно банально вы используете 2019.3 и gradle чудит после "доработок" последних и в билде нет библиотеки)
в общем - не знаю что вам еще посоветовать, прям сейчас пробовать повторить и собрать - через чур проблемно. проще купить за 13 долларов и использовать. или вообще не использовать SQLite в приложении))
а вы её просто вставили? не меняя плагин обертку под C# ?
старые C# методы дергающие нативную часть могут быть несовместимы, ищите тогда на AssetStore готовый плагин..
при чем тут обновить?
вбить "set up android sdk path" в гугл и открыть первые же результаты религия не позволяет?
или вы уже все это попробовали и по прежнему не работает?
ох если б только интерфеис( уже конечно все лучше и лучше - но из за переделок в структуре gradle фаила и связанных с этим вещей - очень часто вылазят проблемы.
просто для примера проект на 2019.2 - собирался отлично, а на 2019.3 поломался к чертям, просто пропускает библиотеки потому что гугловые и фэисбучные сдк - не сделали совместимость с новой структурой. бага в гугл сервисах
второй еще более веселый пример. локально через shell команду на 2019.3 простеиший пустой проект без плагинов и тд - собирается. запускаем его же билд через gitlub-runner (той же командой в тот же shell на том же компе) - валится gradle , не умеет стартануть демонов процессов)))
принудительно вписываем юзать 3.2 версию грэдл плагина юнити вместо дефолтной 3.5 - все собирает снова.
в остальном как для получения навыков разработки - а почему нет то?@Griboks
ну заставят побегать студентов делов то.
а человек изучит юнити, AR (Vuforia), работу с картами/навигацией
я бы только GPS заменил на метки(картинки/QR коды и тд) для упрощения себе жизни, хотя общую карту с навигацией и подсказкой куда бежать - оставил бы. именно взаимодеиствие на локации - не gps чтоб сквозь этажи и стены не срабатывало или не требовало удачно попасть в область метр на мерт при барахлящей связи со спутником.
Griboks, вставлю еще один пункт сюда о том, что если будет в зданиях локация (какой-нибудь корпус на N этажей) то можно попрощаться с gps (который и так сильно по разному работать может от телефона к телефону)
GavriKos c 2019.3 вроде там еще веселее стало, не просто как проект, а как модуль/библиотеку проекта экспортировать можно.
и как раз для андроид и ios.
+ немного методов и примеров как дергать Юнити модуль из нативной приложухи. там свои лимиты в духе
"только полноэкранное" "один инстанс" "обмен сообщениями только" "не намудрите с активити"
но общая суть - встроить Юнити как "открыть показать 3D - пожмякать - вернуться в нативную часть" сделали)) хотя сто процентов баговое еще и с кучей подводных камней))
меня смущает только непонятность того, что делает Vector2.ClampMagnitude(v, 0);
выглядит будто вы в обоих случаях останавливаете rb.
еще момент в тем что вы инпут считываете не в Update() (а значит не каждый кадр, а значит отзывчивость не очень)
в остальном если вас устраивает как работает - то вполне себе и должно двигаться адекватно.
можно конечно заморочиться. выделить методы, которые отдельно вызывать:
"считать ввод"
"применить движение"
чтоб потом можно было эти методы отдельно тестировать и "заменять" куски логики.
но скорее всего вам это не требуется. просто сделаете считывание ввода в Update. применение ввода(само движение) в FixedUpdate.
ох черт.
суть вы таки не уловили - почитайте что такое нормированный вектор и попробуйте выяснить почему кусок с if (_x != 0 && _y != 0)
бесполезный и не нужный вообще.
может еще дополнительно перечитаете комментарий, где вам советуют сначала выяснить вектор направления, нормировать его и только потом учитывать скорость (уже зная в какую сторону её применять).
пока что к сожалению больше похоже на попытку выкрутится, чем осознать суть(
GavriKos, в идеале - конечно сам. но автор и оформил вопрос толково, и код приложил аккуратно и вопрос не бестолковый
и код не ужасный. думаю заслужил он небольшую экономию времени))
тем более если поймет суть и сам найдет/допишет.
я постарался аккуратно - не просто "вставь вот тут строчку"
instCube.transform.parent = Sphere.transform;
instCube.transform.localPosition = new Vector3(0f, 25f, 0)
в этом случае сместит относительно родителя,корректно и правильно.
instCube.transform.localPosition = new Vector3(0f, 25f, 0)
instCube.transform.parent = Sphere.transform;
в этом случае сначала сместит, а потом уже станет дочерним объектом и как там сместилось - не ясно и может быть бардак.
а про изменение позиции - если объект стал дочерним. то при изменении позиции родителя - он и так будет двигаться вместе с родителем.
если вам нужно чтоб он и с родителем двигался и еще дополнительно относительно родителя смещался - то вам надо на дочернем объекте писать свое движение. как ? это уже смотреть уроки и примеры, чтоб понять принципы основные.
Loli E1ON, нельзя. для структур посложнее обычно используют что-то в духе json записанное в string, но на небольшой массивчик можно и парочку ключей сделать, как вы предложили автору.
считайте расстояние отдельно для X отдельно для Y - что мешает?
Math.Abs(x1-x2)<=rangeX
Math.Abs - модуль числа, чтоб отрицательное значение правильно сравнить
что-то странно что на таком простом деле застряли.
повторю - читайте что из себя представляет Time.time. прям документацию юнити. https://docs.unity3d.com/ScriptReference/Time-time.html
прям выведите в консоль себе на апдеите
Debug.Log("Сейчас сравнивает с " + Time.time)
и попробуйте понять в чем суть.
если и после этого не будет понятно - сорян, но тогда я бы советовал бросать программирование или выспаться и завтра заново попробовать на свежую голову выяснить как сделать таимер в юнити.
Ярослав Яковлев, недавняя регистрация не отменяет необходимости прочитать правила оформления вопросов и четко описать все в вопросе, не добавляя комментарием потом,если спросят))
если же дело в том что падение ОЧЕНЬ быстрое, и проходит сквозь коллайдер - пробуйте сделать коллайдеры потолще, частоту обновления физики побольше, детектирование коллизий поменять в настройках коллайдеров.