Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Регистрируясь, я даю согласие на обработку данных и условия почтовых рассылок.
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр Обычные девчонки Алиса и Вика отправились на поиски друга, который перестал выходить на связь, и угодили в безумный водоворот странных событий на затерянном острове. Им очень нужна ваша помощь! Играйте три-в-ряд и выполняйте задания. Удачи!

ВегаМикс 2

Казуальные, Три в ряд, Головоломки

Играть

Топ прошлой недели

  • solenakrivetka solenakrivetka 7 постов
  • Animalrescueed Animalrescueed 53 поста
  • ia.panorama ia.panorama 12 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая «Подписаться», я даю согласие на обработку данных и условия почтовых рассылок.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Маркет Промокоды Пятерочка Промокоды Aroma Butik Промокоды Яндекс Путешествия Промокоды Яндекс Еда Постила Футбол сегодня
0 просмотренных постов скрыто
0
CHERNOMOR.STUDIO
CHERNOMOR.STUDIO
Свидетели Godot'овы

Godot 4. SceneTree root access speed test⁠⁠

1 год назад

Какой самый быстрый способ доступа к общему корню дерева сцен? Давайте потестируем...

Не самое популярное место для тем по Godot, но видос снимать лень, а поделиться инфой хочется. Тем более это такой олдскул, встречающийся, например, на офф. сайте php или на разных форумах, где в сообщениях десятилетней+ давности люди тестили скорость тех или иных команд и именно так определялось, чем лучше пользоваться.

В общем, задался я вопросом доступа к глобальному корню, начал тестить 4 известных мне способа это сделать и получил неожиданный результат. Выполним сначала прогон с вызовами всех четырёх вариантов, закончим одиночными. Для теста использовалась пустая 2D сцена с кнопкой и скриптом на корне сцены, выглядит вот так.

Структура сцены, показан сигнал на кнопке

Структура сцены, показан сигнал на кнопке

Конечно, такой цикл следует оборачивать в функцию и вызывать её, а не тупо копипастить весь цикл, но... Я так и сделал и это замедлило общую скорость в 2 раза! Хотя соотношение результатов не изменилось, поэтому вот финальный вариант нашего тестового скрипта.

Как бы вы написали такой код?

Как бы вы написали такой код?

Строка №12 написана с нарушение стайлгайда, там не рекомендуется использовать однострочную запись, но оказалось, что так цикл работает незначительно быстрее...

После первых прогонов выяснилось, что фукция, вызываемая первой, почти всегда работает медленнее, хотя изредка бывает так, что замедления не происходит. Поэтому пришлось прогнать в разных вариантах порядка. Тут как раз помогла обёртка в лямбду.

Не знаю, как бы я выкручивался без функций первого класса, добавленных в Godot 4.

Не знаю, как бы я выкручивался без функций первого класса, добавленных в Godot 4.

Количество шагов цикла выбрано в 100 000, т.к. это достаточно, чтобы результаты были заметными, с учётом замедления от лямбда функций. При большем шаге разлёт в скорости каждого из вариантов сглаживается, эффект замедления первого test становится незаметен, а это нам не нужно. В самом конце (на скриншоте не видно) я повторил порядок 1,2,3,4, чтобы сравнить его с самой первой группой. Прогнав несколько раз, стало понятно, что во всех вызовах, кроме самого первого, порядок вызовов не влияет на результат. Отсюда, достаточно вызвать 3 одинаковых группы и отбросить результаты в первой четвёрке.

Финальный вариант группового теста

Финальный вариант группового теста

Результаты:

1 место - f1 = 0.032 - 0.037
2 место = 3 место - f3 и f4 = 0.033 - 0.050
4 место - f2 = 0.038 - 0.063

Стабильно хуже всех работает get_tree().root. Это прямой доступ к полю root объекта SceneTree, возвращаемого методом get_tree(). Видимо из-за итерации по объекту, которой, видимо, не происходит в таком объёме при других вариантах. Между остальными тремя различие ситуативно, поэтому я бы просто везде использовал $/root.

Одиночный тест я решил не проводить из-за всё того же замедления первого вызова. Провёл сдвоенный как на скриншоте и так для каждого из четырёх.

f1 = 0.034
f2 = 0.040
f3 = 0.035
f4 = 0.035

В среднем, f1 и здесь оказался быстрее. Спорный результат у f3 и f4. Понятно, что одно является сокращённой записью (не люблю слово синтаксический сахар) другого. Повторение в строенном варианте тоже ничего не дело. Вроде как действительно различия нет. Но, есть ещё один вариант тестирования, приближенный к реальным кейсам, т.к. связан он с записью результата любого из четырёх методов в переменную и доступа к этой переменной.

Изменён код на строке 13, и в функции, принимающей сигнал кнопки.

Изменён код на строке 13, и в функции, принимающей сигнал кнопки.

Результат ожидаемо одинаковый в пределах погрешности измерений и случайного разброса: от 0.004 до 0.011, что кратно быстрее доступа к корню через любой из четырёх методов. Отсюда можно сделать вывод, что в скриптах Godot 4, где нужен доступ к глобальному корню, стоит создать переменную с помощью синтаксиса вроде "@onready var root = get_tree().get_root()", т.к. такой код будет наиболее быстрым, и использовать уже её. Применение $/root по месту удобно и хорошо читаемо, но работать будет незначительно медленнее. Насколько это будет заметно в проекте? Зависит от частоты вызовов, но скорее всего незаметно. Однако, задача этой статьи - найти наиболее быстрый способ доступа и она выполнена, это вариант f1 записанный в переменную.

Показать полностью 6
[моё] Godot Engine Godot Длиннопост
2
6
Boogernator
Boogernator
Свидетели Godot'овы

Godot. Градиентные переливы)⁠⁠

1 год назад

Всем привет, давно ничего не постил, вечно некогда)
Странное название, но я хз как это назвать ещё, но вот пример, это по работе делал анимашку пока идет поиск противника, про партиклы тут вроде особо нечего рассказывать, уже и так эти моменты пояснял, а вот фон на заднем плане, раньше не знал как сделать подобное, долго голову ломал)) Но нашел решение)

Перейти к видео

Ну в целом, мне кажется можно проще решение найти, но не хочется покадровую анимацию, не знаю, думаю ещё пока, но в целом этот задник сделан шейдером. И кому интересно я записал видос, как подобного плана делать эффекты, можно и лучше сделать конечно, я ещё только учусь, но базовой концепцией поделюсь) Может пригодится кому)


Может не все хорошо получилось, вернусь ещё к этой теме, можно и партиклами добиться примерно такого-же эффекта. Посмотрим ещё.

Спасибо, за внимание.

Показать полностью 1
[моё] Gamedev Инди Godot Engine Godot VFX Шейдеры Видео Без звука Вертикальное видео YouTube
0
8
Boogernator
Boogernator
Свидетели Godot'овы

Дамы с праздником)⁠⁠

1 год назад

Цветочек на партиклах в Godot4

Перейти к видео

Как говорится, от гиков бабам!!))
Всего вам наилучшего, поверьте даже IT-шникам без женщин трудно)

А кто не согласен, ну бог ему судья.

[моё] Godot 8 марта - Международный женский день Женщины Видео Без звука Вертикальное видео
5
9
Boogernator
Boogernator
Свидетели Godot'овы

Почему плохо работать в геймдеве!⁠⁠

1 год назад

Всем привет, возник спор за работу курьером и почему геймдев лучше, а мне тут есть что сказать и потому напишу свое мнение. Заголовок не бейт, это реально так и есть, щас попробую кратенько объяснить почему.

@LeonIlich, беседа с тобой надоумила написать пост, продолжу тут если ты не против)

За Геймдев:
Плюсы: Неплохо платят, учишься новому, в целом интересно.
Минусы: Забудь, что есть что-то остальное, ты всецело на одном проекте, особенно в предрелизе. Даже играть уже некогда будет. Кранчи, Кранчи, Кранчи!!!
Я два года даже не загорал, на рыбалке не был ещё больше)

За Курьера:
Голова всегда свободна!

Много чего хочется написать, но когда я работал продавцом и курьером, я делал игру своей мечты. Мой странный микс MOO2, космических рейнджеров и моей любимой Eve Online, тут и суть астероиды копать. Это примерно месяц разработки фултайм в одно лицо.

Перейти к видео

Сейчас я на работе пытаюсь сделать стилизованные трейлы и они суммарно у меня съели больше времени, чем предыдущая разработка, хотя опытные юнитисты, скажут, что тут делов-то на две копейки, в целом так, но мне надо на Godot) И у меня мало ещё опыта в VFX)

Перейти к видео

Вот как думаете интересно мне это делать вместо своих космических корабликов?
В целом мне тоже нравится, интересно.

Вот GameArtTeaser c работы,
на 50 секунде два моих эффекта попали в ролик даже)

Это прикольно, занятный проект, играется интересно, скоро будет альфатест, что интереснее всего для моих подписчиков и этой группы, это проект на Godot версия 4.1.1, много было сложностей, но много интересных решений, Godot походу годен не только для индиков на коленке собранных.

Все офигенно, но есть один минус! Последний коммит в своей разработке, я сделал в июне, аккурат перед тем, как перейти на фултайм в студию, да я работаю удаленно, но у меня нету сил и энергии сидеть на двух стульях, я или там или там, потому мне любопытен был вариант подработки курьером, но подработкой, там и 20к не заработаешь, там потеть и пыхтеть надо.
Лучше сосредоточится на чем-то одном, я на пятом десятке решил начать специализироваться на VFX, не успеваю я за программистами, но мне хватает бекграунда, чтобы с ними нормально сотрудничать) Собаки лают, караван идет, со временем все лучше и лучше получается уже.
Вот вам и путь из продавца, три года назад кажись я писал первый пост про шейдеры, и на пятом десятке обрел новую профессию с шестизначным окладом в не самом популярном пока движке)

Ругайте, критикуйте, ну я старался делиться всем чем мог и писал о чуть ли не каждом шаге, иногда срывало и бухал и дичал, но ровная дорога редко бывает. Может мне чаще надо было писать, о том, как не получалось то или другое, может действительно чаще буду писать теперь, не о конкретных реализациях, а больше о концепциях, чтобы на мысль верную навести, мои реализации далеки от идеала, меня тут много хейтили за них, но концепции были верные, а реализации, это дело наживное) Вопрос опыта, всего-лишь)

Спасибо за внимание, всем удачи!! Осилит дорогу идущий!

Показать полностью 3
[моё] Инди Gamedev Личный опыт Godot Godot Engine Курьер Видео Без звука YouTube Длиннопост
10
2
DELETED
Серия Главная

Почему создать игру – это как побеждать боссов на ironman? Рубрика "Сделай сам" или "За кулисами попаболи"⁠⁠

1 год назад

Сегодня запускаем экспедицию в самое сердце игрового девелопмента, где каждый баг – это босс из соулс игры, а каждый релиз – это эпическая драка возле ларька.

Буду рассказывать как я начал делать игры и как продвигается процесс от и до.

Начнем с классики: разрабатывать игры так же сложно, как и очень сложно.

🔥 Идея, которая посетила меня после прохождения "Game Dev Tycoon" – создать свой тайкун с блэкджеком и развитием.

Основа была такая же, но реализация отличалась. Вместо того, чтобы просто меняя локации, разрабатывать игры, я решил внести больший смысл в технологии, которые открываются по ходу развития.

Например, сначала включается ваш интерфейс, неотличимый от Тетриса: черно-белый экран и пиксельный мир. Но после открытия технологии "Высокое разрешение" игра преображается и становится четче.

На данный момент битва не выиграна, но потуги творчества ещё продолжаются! 🛠👾 ⌨️

А ещё есть телеграм https://t.me/mint_pix3l

Почему создать игру – это как побеждать боссов на ironman?  Рубрика "Сделай сам" или "За кулисами попаболи"
Показать полностью 1
Gamedev Godot Игры Telegram (ссылка)
1
17
Boogernator
Boogernator
Свидетели Godot'овы

Godot. Простая молния на базе Line2D⁠⁠

1 год назад

Всем привет, кратенько, как сделать такую молнию, расширеная версия по созданию цепной молнии, будет позже, не знаю даже когда)

Спасибо за внимание!

[моё] Gamedev Godot Engine Godot Инди VFX Видео YouTube
1
2
Biscuitchan
Biscuitchan
Инди игры

Новая версия альфы⁠⁠

1 год назад

Звучит сильно, на деле можно посмеяться.

Планировала много, но как всегда получилось далеко не всё:

- Изменила несколько уровней

-Добавила батуты и падающие шипы

-Добавила несколько текстур земли

Последнее мне было особенно нужно, чтобы не путаться при создании уровней. Дальше постараюсь получше продумать, что ещё можно добавить в геймплей.

Так как в программировании до этого проекта я не сильно разбиралась, то приходится много времени тратить на понимание теоретической части архитектуры проекта. Когда попыталась изменить набор навыков для разных времён года, поняла, что можно было сделать систему проще, но в итоге, просто продублировала игрока несколько раз и убрала из кода то, что хотела.

Не самый лучший вариант, но на данный момент быстрый и помогает двигаться дальше. Так как добавлять новые способности игроку не намерена, а скорее просто буду работать над интерактивными объектами вокруг это не должно сильно мешать в будущем. Во всяком случае, на этот проект хватит.

Внизу ссылка на новую версию:

https://drive.google.com/file/d/1aIGOnKdyLduyZUf3Vj2unpYaw8V...

Показать полностью
[моё] Gamedev Разработка Инди игра Godot Текст
2
8
Boogernator
Boogernator
Свидетели Godot'овы

Godot. VFX Lighting⁠⁠

1 год назад

Всем привет, давно кроме дичи ничего не постил, нечего было, был творческий застой, нового делать не учился, работал работу, на том что умел до этого.

Перейти к видео

Небольшой прорыв для меня случился за три месяца, я понял, как могу сделать годную, нетормозящую цепную молнию, без всяких шейдеров и тд, будет работать шустро и в вебе и на гавномобилках. Снег пикабушный может мотивировал, а может просто допер наконец-то, про фаерболл уже писал, это для меня этапы. Сначала научится делать фаербол, вроде ок получаются) С молниями было сложно)

Перейти к видео

Такая была, но это простая, это просто покадровая анимация, жена нарисовала я добавил, а вот чтобы била откуда надо и куда надо и не была покадровой или партиклы использовала, ну вот первый видос, к ней конечно добавлю ещё искр партиклами при касании, но тут она технически другая и так просто на самом деле.

Я все одно наверное заморочусь и запишу видос, да наверное и сюда тоже выложу не только на ютюб, просто захотелось поделиться, что наконец-то это случилось и молнии, тоже скоро походу научусь делать годные)

Всем удачи, с наступающим. Сорян за зехера мои периодические, когда долго что-то не получается, в уныние впадаю(

P.S. Эта молния не будет тормозить, как снег на пикабу, это вообще по сути Line2D простой)

Показать полностью 1
[моё] Gamedev Инди Непонятно Godot Godot Engine Видео Без звука Длиннопост
0
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Маркет Промокоды Пятерочка Промокоды Aroma Butik Промокоды Яндекс Путешествия Промокоды Яндекс Еда Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии