Ещё с первого проекта подумывал сделать игровую дебаг-консоль, ибо когда имеешь дело с веб играми, которые работают через яндекс-плагин, сложно отследить ошибки. Вернее, я не знаю как.
Поэтому настало время зафигачить легко прикручиваемый к любому проекту функционал.
Завтра его доделаю и могу публикнуть, чтобы вам уже не пришлось бегать по граблям. Напишите или киньте реакцию, если оно вам вообще надо.
А ещё завтра расскажу, как играл с корутинами и скролл вью и проиграл.
Поэтому настало время зафигачить легко прикручиваемый к любому проекту функционал.
Завтра его доделаю и могу публикнуть, чтобы вам уже не пришлось бегать по граблям. Напишите или киньте реакцию, если оно вам вообще надо.
А ещё завтра расскажу, как играл с корутинами и скролл вью и проиграл.
🔥4
Огоньки есть, это хорошо 🙂 Чем большему числу людей интересно то, что я делаю, тем непреодолимее желание сделать качественно. Встраиваемая консоль уже готова, но до вечера я её ещё немного причешу и сделаю миниобзор, т.к. стараюсь для вас 😇
А пока история про попытку подружить корутину и автоскроллинг.
Корутину я часто использую вместо Update(), особенно если постоянное обновление в течение всей игры не требуется. Запустил, прогоняешь код, пока условие выполняется или остановил, если больше не надо.
Но вот в Scroll View это не сработало как надо. А именно: в content попадает GameObject, content size fitter просчитывает новую высоту Vertical Layout, через подписку на событие запускаю корутину и начинаю крутить со скорость, например _speed * Time.deltaTime. Итерации проходят через yield return null; НО! Оказалось, что fitter не сразу обновляет размер и надо ставить задержку перед выполнением.
Тогда возникает риск запустить корутину несколько раз. А если её стопорить перед новым запуском, то эта самая задержка будет на время замораживать автоскролл. Особенно это будет видно при большом потоке сообщений.
Update в этом случае оказался спасением: закинул в него логику с двумя проверками (_isAutoscrollOn && _scrollRect.verticalScrollbar.value > 0) и чилишь спокойно.
Не исключено, что я придумал велосипед на костылях. Но всё работает и вы при желании сможете переделать под свои нужды.
А пока история про попытку подружить корутину и автоскроллинг.
Корутину я часто использую вместо Update(), особенно если постоянное обновление в течение всей игры не требуется. Запустил, прогоняешь код, пока условие выполняется или остановил, если больше не надо.
Но вот в Scroll View это не сработало как надо. А именно: в content попадает GameObject, content size fitter просчитывает новую высоту Vertical Layout, через подписку на событие запускаю корутину и начинаю крутить со скорость, например _speed * Time.deltaTime. Итерации проходят через yield return null; НО! Оказалось, что fitter не сразу обновляет размер и надо ставить задержку перед выполнением.
Тогда возникает риск запустить корутину несколько раз. А если её стопорить перед новым запуском, то эта самая задержка будет на время замораживать автоскролл. Особенно это будет видно при большом потоке сообщений.
Update в этом случае оказался спасением: закинул в него логику с двумя проверками (_isAutoscrollOn && _scrollRect.verticalScrollbar.value > 0) и чилишь спокойно.
Не исключено, что я придумал велосипед на костылях. Но всё работает и вы при желании сможете переделать под свои нужды.
Сорян за говнозвук. Пришлось крутилки выкручивать, чтобы хотя бы получилось разборчиво.
This media is not supported in your browser
VIEW IN TELEGRAM
Одно из заданий, которое сейчас на проверке. Надо было сделать, чтобы при нажатии на куб он распадался на разноцветные и вдвое меньше предыдущего. Так же вероятность распада на мелкие кубы должна снижаться вдвое. Поверхность окружена коллайдерами, чтобы кубы не разлетались и где-то часа полтора я городил огород с рейкастом, а потом заметил слой "ignore Raycast" в списке слоёв объекта в инспекторе 😅 Теперь не приходится бросать луч, просто обрабатывается юньковский метод OnMouseUpAsButton(), который лежит в классе - компоненте куба
👍4
У школы дрессировки, в которой я состою, скоро ДР. У нас традиция на 2 дня выезжать из города, кататься на сноубордах.
А вот в качестве символического подарка я за 4 дня сварганил тематическую монополию.
А вот в качестве символического подарка я за 4 дня сварганил тематическую монополию.
🔥4👍1
Media is too big
VIEW IN TELEGRAM
Это видео с прошлого года. В этом надо прибавить скорости
This media is not supported in your browser
VIEW IN TELEGRAM
Продолжаю обучение. Долго откладывал это задание, т.к. одно дело кодить и совсем другое рисовать тайлами. Это не проект, чисто иду по урокам. По заданию надо было сделать бег, прыжки, патрулирование врагов и сбор монет.
Этот отчёт менторы раз 10 ещё отклонят (естественно). Сделать что-то по ТЗ - не проблема. А вот сделать без говнокода - пока прям муторно.
Этот отчёт менторы раз 10 ещё отклонят (естественно). Сделать что-то по ТЗ - не проблема. А вот сделать без говнокода - пока прям муторно.
👍4
Media is too big
VIEW IN TELEGRAM
Продолжаю проходить курс по Unity. Очередное задание отправил на проверку. За январь узнал много нового касаемо разработки. И хоть ещё подтупливаю, но уже на меня не наводят ужас всякие SOLID, SRP и какие-нибудь MVP. Правда, я тащу информацию отовсюду. Даже с нейронкой DeepSeek поболтал за разработку.
🔥1😐1
Почитайте примеры нейросетки. Это же гениально 😂
😁9👍1