Как добавить эффект Parallax в GODOT 4 | Урок 2 | Подробный курс по Годот для начинающих с нуля
Vložit
- čas přidán 14. 08. 2023
- "Быстрый старт с Godot: Создание игр с удовольствием! 🎮🚀 Преодолейте начальные барьеры и начните свою игровую историю. Присоединяйтесь к нам, чтобы воплотить свои идеи в реальность!"
Ассеты для игры:
brullov.itch.io/oak-woods
luizmelo.itch.io/monsters-cre...
laredgames.itch.io/gems-coins...
Группа в Telegram:
t.me/+6zyiuofwIhM4NGNl
У кого начались проблемы из-за отражения фона, я натыкал решение! При создании проекта тип рендера вместо mobile, выбирайте compatibility(совместимость) и проблемы как не бывало
Также тип рендера можно изменить в правом верхнем углу внутри уде созданного проекта
Автор закрепи!
Спасибо за информацию
Мне и другим ребятам пригодилось, у нас тоже была проблема, как у Бати, что писал ниже
Спс думал что над с сайта а не с стима скачивать уже и тут ты
Лучший в мире человек! Спасибо тебе огромное и крепкого здоровья за столь дельное решение проблемы :3
@@sabityk5731 не за что)
Great introduction! I like your approach, explaining everything as we build the game along with you. Easy to understand even for me whose Russian is not ideal. I hope I can make it to the end!
Как же мне повезло, что я наткнулся на тебя... Просто неимоверное везение! Еще и все актуальное! Класс. Надеюсь ты не забросишь канал как это бывает с другими...
Спасибо за отзыв!) я тоже надеюсь что не заброшу)
Чувак, я люблю тебя! Я очень сомневаюсь, что замучу что-то серьезное, я больше по "побаловаться", но я просто в восторге от движущихся деревьев. Это РАБОТАЕТ! Невероятно! Спасибо!
Я тоже пока что просто побаловаться хочу и научиться хоть как нибудь программить, чтобы потом перейти с несерьёзного покет кода
19:00: сначала порисуй, только потом геймдев
20:00: мотивацию!
21:00 **рисует**
22:00: ну ладно, давайте, давайте
**можете сами нарисовать или ассеты взять** Оаооо **ещё десять минут ищет что-то подходящее, но в итоге решает сам нарисовать**
Пык-пык-пык-пык-пык..
Интересное меня ждёт приелючение;)
Большое спасибо за ещё один урок!
Отличный урок, благодарю, двигаемся дальше к вершине)
Спасибо!) удачи в изучении!
Потрясающий урок, спасибо большое.
Спасибо за отзыв!)
Спасибо, за ваши уроки, благодаря вам я быстро перейду с SFML на Godot!
Автор , здоровье тебе . Спасибо большое за такой труд . Если бы не ты , я бы не знала где брать информацию
Спасибо единственный нормальный курс по godot который я нашёл
Вау) очень приятно)
Все остальные давние и на наоврй версии не работают
Как-же ты хорош, спасибо огромное!!!
Спасибо!)
Спасибо учитель, работает. Жму руку.
😅 пожалуйста)
Мне не удалось подобрать подходящий ассет для образа ронина. Тогда я решил поискать пиксельных персонажей для игры в Pinterest. В итоге я нашёл несколько мобов и даже снаряд для одного из них на Яндекс Картинках. Но ронина я так и не нашёл, зато обнаружил Ичиго, который вполне может подойти на эту роль. Пока что буду использовать его. Хотя есть один недостаток - у них нет анимации смерти. Поэтому, когда они будут погибать, будет появляться дым.
СПАСИБО БОЛЬШОЕ ХОРОШО ЧТО Я ЗАШЕЛ ИМЕННО НА ВАС ПЛЕЙ ЛИСТ-КУРС
Замечательный урок, все получилось ❤
Спасибо) я очень рад)
Спасибо за урок.
Я изначально решил что буду пытаться писать код не на GDScript на c#. Если кому интересно, обращение к ScrollOffset на с# (Godot 4.1.1) выглядит так:
public partial class bg : ParallaxBackground
{
int speed = 100;
public override void _Process(double delta)
{
this.ScrollOffset -= new Vector2(speed * (float)delta, 0f);
}
}
Без приведения дельты к float ругается на несоответствие типов (delta по умолчанию объявляет как double).
Так же параллакс можно эмулировать через код задавая разную скорость дочерним нодам (ParallaxLayer'ам), по сути подменяя работу свойства Scale:
public partial class bg : ParallaxBackground
{
int speedBG1 = 5;
int speedBG2 = 25;
int speedBG3 = 50;
public override void _Process(double delta)
{
GetNode("ParallaxLayer").Position -= new Vector2(speedBG1 * (float)delta, 0f);
GetNode("ParallaxLayer2").Position -= new Vector2(speedBG2 * (float)delta, 0f);
GetNode("ParallaxLayer3").Position -= new Vector2(speedBG3 * (float)delta, 0f);
}
}
Привел это тут потому что сам новичок и не сразу понял как обращатся к дочерним нодам через c#, пришлось гуглить. Может кому поможет.
Спасибо за информацию, думаю пригодится для тех кто на C#
Хотя все-таки отдельное прописывание скорости не эмулирует ScrollOffset - нет вечного цикла фона, он прокатывается 2 раза и все. Тут похоже нужны ещё костыли связанные с фоном, короче ну нафиг.
@@7xAlpha я насколько понял поверхностно конечно гд скрипт где-то по медленнее сишарпа работать будет где-то нет.
Но насколько я не прав вопрос?
@@7xAlpha Так надо не ParallaxLayer Position менять, а ScrollOffset.X Напрямую его в c# менять нельзя, как в видео в gd, но можно присвоить ему значение из другой переменной. Вот так будет работать:
Vector2 v = ScrollOffset;
v.X = v.X - speed * (float)delta;
ScrollOffset = v;
@@Helevaster у меня само значение меняется, но задний фот не двигается почему то
ох классные уроки , мне нравится , очень подробно и понятно)
Спасибо большое, очень легко объяснеяшь все понятно
Огонь! Спасибо большое))
Пожалуйста!)
Увлекательно!
Чувак, ты ахрененен! Держи лайк!
чтож отличные уроки я подписался ))
Спасибо!)
Продолжай уроки, Unity похоже умер))
Буду стараться)
Лучший Коммент в мире
Просто ТОП!!!
Спасибо за отзыв!)
Супер! Спасибо!)
Очень Увлекательно ))) Лайк + Подписка 100%
Спасибо!)
хорошее объяснение, спасибо за урок!
👍
Уже как то начинал проект в unity, поскольку по большей части художник - ушел не далеко. Между работой по художке, все хотелось вновь продолжить, при том что и в aseprite часто зависал и инди проекты многие вдохновляли. Наверное это первая серия уроков, которые за последнее время смогли меня побудить скачать godot и начать все заново. Спасибо✌
Спасибо за отзыв, я очень рад что чем то смог помочь)
А я хотел игру мечты сделать в унитя год назад полез сразу в 3d и нахрапом вид сверху хотел сделать искал уроки не понял как забил на унитя , щас решил сделать игру в два д в три Дэ возни много считаю в планах освоить в два Дэ по урокам и gd скрипт.
я новичок,скачал Unity и godot , в Unity я сидел пытался по гайду заставить треугольник прыгать и бегать ,фон провалился вниз ,треугольник тоже, ,гигантский код на C# ради этого , мучался 3 часа и как то ничего особо не вышло ,решил все таки пойти в Gadot и получаю удовольствие от процесса и от урока=)наверно останусь
@@sundeopanda Тоже самое)
@@SkyAvia я доделал игру по этому уроку, но у меня всё сломалось в конце так как автор тысячу раз менял код и на каждом новом видео у него уже другой код, в итоге я подошёл к финалу и у меня весь проект встал в стопор, но прикольный опыт, но этому надо тонну времени посвящать и делать игры это мучения какие то )))
Спасибо огромное!!!
👍
Спасибо за уроки, на русском таких мало)
Ну это подписка и лайк
Спасибо!
Легенда
из тебя получился бы отличный преподаватель ) все так подробно и понятно объясняешь.
Спасибо!)
Здравствуйте! Люблю ваши уроки. очень познавательны. У меня есть вопрос, если можно. Созданный background со скриптом и параллаксом можно применить на следующие сцены (уровни) игры? или для каждой сцены нужно создавать свой background? например, есть одна сцена в одной локации(допустим лес) , а другая сцена уже в другой локации. например город. буду очень благодарен если объясните.
Спасибо, очень полезно!
Спасибо за отзыв
Новый год = новое хобби😂 Спасибо пробую годо
спасибище !
Как доделаешь курс, обязательно смонтируй все ролики в 1 и выстави на канал, длинные ролики лучше ранжируются! Успехов!
Спасибо большое!)
Круто
Очень круто, но можно больше туториалов как сделать такое де с телефона, а то я не очень понимаю и по минут 20 разбираюсь как создать папку и загрузить
Спасибо за уроки, подписался. Может дойдут руки разобраться и переложить мою игру на godot сделанную несколько лет назад в construct classic. Игра получилась Без звука и только под одно разрешение экрана))
Пожалуйста) надеюсь получится!) круто я тоже когда-то в construct игры создавал
спасибо спасибо спасииииибоо
Пожалуйста 👍
все сработало - пасябки
Пожалуйста)
Спасибо
И тебе спасибо)
А X не достигнет в какой-то момент Integer overflow? Что тогда произойдет?
А можно сделать локации и как то поверхность которую можно копать ?
помогите пожалуйста делаю на другой версии и при обращении к scroll offset выдает ошибку что или как сделать
Можно ли использовать другие языки
Может я что-то делаю не так, но в пробном окне при движении мыши фон начинает дико лагать. Помогите, пожалуйста(
Можно ли за фон поставить гифку?
Все классно, круто, вопросов к создателю видео нет
Но вопрос по движку
Почему мы где то должны сами прописывать в скриптах данные?(т.е. тот же scroll_offset.x += speed * delta, а в параллакс лейер уже мышкой выбирать значения?) Как понять, где нужно самому писать, а где можно в интерфейсе значения измеить? Попытался к леййеру так же обратиться, как и к бг
Написал: motion_scale.x = 0.5 выдало ошибку. С БГ тоже самое, попытался не скрипт писать, а напрямую в меню справа выбрать значение оффсет, так же ошибка
И как понять после такого, где нужно ручками прописывать, а где выбирать? Если это нигде не обозначается
зы не бейте тапками, попытаюсь вывести кодинг игр в свое хобби, так что, не особо понимаю что к чему пока...
для продвижения
👍
Я не думал, что у меня настолько мощный ноут.. Я эти 100 скорости привёл, так экран просто ЛЕТЕЛ
Вот это да, пасибо)
👍
спасибо за курс. Кстати, когда разворачиваешь игру на фулл скрин все ломается, как это исправить можно? чтоб и в окне норм выглядело и в фулл скрин
Пожалуйста) я дальше по курсу об этом говорю, project -> project settings -> window -> там находим stretching mode и выбираем canvas item, вроде так
@@GameCrafter_GD спасибо за помощь
Привет, я работаю на линуксе, у меня не переносится ни один файл в сам godot, т.е. я не могу перенести ни из браузера, ни из файлов и т.д.
Все збс, но есть вопрос, когда я увеличиваю экран на полный, то сам фон остается таким же старым размером, как сделать так, чтобы и фон увеличивался вместе с экраном
В телеге в разделе FAQ вроде была инструкция)
ты когда растягиваешь фоновую картинку, тем самым обозначая размер экрана уровня, ты это делаешь просто от балды ? те это не имеет ни какого значения вне зависимости от разрешения играна и тп ? те я к тому что этим всегда можно пренебречь?
Я его растягивал так чтобы в камере нормально отображался
что делать если перенести текстуры в игру или просто не дает ноут типо такой красный кружок зачеркнутый, или пишет что не удается его туда записать так как он заблокирован или используется или нет разрешений
перетащи папку с спрайтами в папку с игрой
Бесконечное вычитание разве со временем не приведет к переполнению переменной? Спасибо за курс, очень здорово что есть такой объемный материал на русском.
Спасибо за отзыв) а насчет переменной думаю там нормально все) хотя в любом случаю это было сделано просто для примера
Помогите, мне выдаёт ошибку типа "что вы имеете ввиду? "
scroll_offset.x он её не видит!
5:32 и параллакс вообще не отображается, его не повторяет, ПОЧЕМУ У ТЕБЯ ПОВТОРЯЕТСЯ ПРИ Y = 0!
НУ ЗАЧЕМ ЕЁ ОБНОВИЛИ!
Сорри не совсем понял проблему, попробуй скрины в телегу скинуть
Привет. Шикарные уроки. Но у меня не работает parralax background вместе с Camera2D. То есть анимированный бэкграунд как в уроке только вместе с Camera2d. Без камеры все работает как в уроке.
Привет, спасибо) могу посоветовать только пересмотреть ролик и переделать либо зайти в телеграмм группу и там спросить
Что делать если фон бесконечный,но когда первая подходит к концу на экране видно чёрное место и только через секунду появляется следующая.
Либо можно спрайт сдублировать а потом отзеркалить, либо в телеграмме предлагали воспользоваться параметром region, и там его растянуть а потом отзеркалить
@@GameCrafter_GD спасибо большое
Пацаны может кто знает как добавить оформление фона, если я кпримеру сижу с телефона
Отличный урок, единственное , что не получилось - это в меню фон очень быстро скролится, как можно исправить?
Спасибо) speed уменьшить можно, мы вроде 100 ставили
здравствуй, недавно начал учится и такой вопрос, когда ты игру открываешь во весь экран, у тебя кнопки и задний фон не расширяются, как это исправить?
Чел это вопрос размеров просто увеличь кнопки и фон
СПАСИБО ЛУЧШИЙ + ЛАЙК ПОДПИСКА РЕБЯТА... АВАЫЛАЛЖЫВАЖВМЫДВМ
Спасибо, что бы это ни значило)
Почему если зайти в полно екранный режим то там лажа
Здравствуйте, можете подсказать, рабоет ли копирование слоев в Compatibility? (а то у меня другие не поддерживают) Я делаю все как в уроке, но на 5:30 секунде, когда вы вводите параметры в mirror у меня просто не зеркалится. Можете подсказать, что мне делать? Может просто установить OpenGL? Слышал, что это может помочь
Здравствуйте, сперва нужно разобраться в чем именно проблема, возможно дело в другом, скиньте скрины с проблемой в телеграмм группу, надо посмотреть
@@GameCrafter_GDЗдравствуйте, спасибо, что ответили на мой комментарий! Я понял саою ошибку, она заключалась в том, что я parallax background не соединил с paralax layer, в этом и была ошибка
спасибо за уроки , но у меня проблема, в ассетах paralaxlayer , когда делаю дубликаты и вставляю ассеты туда, 1 не зеркалется. Остальные - зеркалатся - это норм ?
И темная иконка PLAY перемещается на отзеркаленные рисунки , не на месте , где буквы. а Иконка Quit остается на месте
По-моему у кого-то была подобная проблема, попробуй в телеге спросить
Вы решили проблему?
Папка с ассетами не прикрепляется к res// ПАМАГИТЕ
А я не понял что делает команда scroll_offset
Как объединить эффект параллакса с обычным статичным меню? Просто у меня в меню горы и облака. Облака двигаться я заставил, но вот, блин, горы тоже начали двигаться. Я пытался заставить горы остановиться, но сдался и решил создать отдельную сцену для гор, но тут новая проблема: новая сцена закрывает за собой старую, то есть горы закрывают облака. Что делать? Я пытался менять их местами. Даже сделал так, что горы стали дочерним узелом облаков, но они все равно монументально стоят впереди.
Сейчас я просто снес горы и любуюсь как облака движутся в полной пустоте.
Так мы вроде это проходили, если поместить спрайты гор и облаков на разные parallax layers то им отдельно можно будет задать motion scale, если motion scale = 0 то слой двигаться не будет
@@GameCrafter_GD ммм, учту, заранее спасибо.
Спасибо за уроки, но что делать если паралакс бек граунды не работают? То есть я делаю как на видео но зеркало не работает, но именно переставляет мой фон, а не копирует и причем переставляет не тот который в иерархии(то есть если в паралакс лайере 1 стоит фон 1,то перетаскивает 2)
у меня та же самая проблема. ты нашел как решить это? и еще при добавлении фона на сцену с Play и Quit, у меня перемещается кнопка плэй.
у меня возникла проблема, при перетаскивании файла в движок, он просто не перетаскивается, я пробовал все, даже другой ассет скачал, вся та же проблема. Кто может помочь решить ее, напишите пожалуйста в комментариях
А как самому сделать asset pack? Там какие то папки .
Незнаю что делать теперь...
Asset pack это просто набор из графики или звуков или каких либо других компонентов игры
Автор пропускает момент 6:49, что нужно сохранить сцену(Ctrl + S). Но урок все равно отличный! Спасибо!
Спасибо, видимо вырезал случайно)
А где рисуют эти ассеты? Как их свои нарисовать?
в каких то приложениях рисуют , графические редакторы ,спроси у людей которые их там выкладывают ,там вроде бы контакты внизу.=)
Привет,А что делать когда я переношу скачанную папку в Go dot То у меня за место курсора появляется запрещённый знак и не могу перенести?
Там надо достатить из зип папку и перенесьти
У меня не срабатывает mirroring.
делаю на Mac book. Может кто то сталкивался?
Подскажите решение.
По несколько раз все переделывал. Ни чего не получается.
Попробуй в телеграмм группе поспрашивать
Не знаю заметишь ли ты или нет, у меня возникла проблема, когда я пытаюсь перенести файл на res:// у меня не получается, как это можно изменить или исправить?
Ну чё, решил проблему, потому что она у меня тоже.
@@AliShabib-ov7kq да, решил, но уже не помню как, я вроде то ли переместил его в другую папку, то ли зделал чтобы этот файл с текстурами стал другим (типо пдф или что то типо того) надеюсь ты понял
@@KalifJafis ну да понял спасибо
@@KalifJafis подскажите пожалуйста как не понимаю ответьте пожалуйста
автор, у меня эта команда подсвечивается красным цветом scroll_offset.x = -= speed * delta
scroll_offset.x (=) -= speed * delta без равно которое отметил напиши
Что делать если у меня первый фон (задний) не зеркалится, но если продублировать его ещё раз вместе с со слоем паралакса, то отзеркалит всю сцену, если добавить такую сцену в меню, то фон первой кнопки уходит вправо на отзеркаленую часть
Попробуй еще раз пересмотреть ролик про parallax, скорее всего проблема с иерархией нодов, порядок очень важен, если проблема останется, скинь скрины в телеграмм чат там разберемся
Решил проблему? У меня тоже самое, причем один-в-один, включая баг с кнопкой.
Подтверждаю, у меня тоже баг с кнопкой. дело может быть в версии движка?
@@user-qo8gx2jz6t судя по всему, да, баг движка. Проблему не решил, пока просто отложил возню с фоном.
Надо сменить рендер в настройках проекта на гл_компатибилити и тогда все нормально, рамка не едет. Нашёл решение в интернете, эта ишью уже открыта некоторое время.
Скажите пожалуйста что делать если в паралаксе первый слой миррорит второй а первый вообще не мирорится?
Скорее всего ты что-то перепутал в слоях, по-любому нужно разбираться, кидай скрины в телеграмм
Добрый вечер!
Подскажите, пожалуйста, что делать, если ассеты не добавляются для фона?
Перетягиваешь папку из проводника в годот, а вместо курсора появляется круг с перечёркнутой чертой, говорящей, что перетащить такой файл сюда нельзя..
Можешь попробовать, правой кнопкой мыши кликнуть по корневой папке res в godot, и выбрать там open in file manager, вроде так, тогда откроется папка проекта
@@GameCrafter_GD Спасибо!
Уже получилось другим способом. Прямо в проводнике в папку «рес» поместил.
Появилась другая проблема!)))
Задний фон ооочень странным образом миррорится. Миррорю, следуя инструкциям в видео, первый, а, по итогу, миррорится второй. Миррою второй, а миррорится третий)
@@alexanders_1 нужно проверить в какой parallax layer какой фон помещен, видимо порядок спутан
@@GameCrafter_GD Тоже подумал, что мог спутать, но два раза сделал. На видео снял, другим показал - не я один увидел.
@@alexanders_1 в телеграм скинь скрины, вместе подумаем)
Когда перезахожу в программу все ломается и исчезают вкладки: menu, level, bg и ошибки какие то, не сохраняет и не запускает игру, 2 раза переделал все работало и в один момент опять так же пропало все.
Уроки отличные и полезные, спасибо
Очень странно, у меня за время работы на движке такого не было, попробуй обратиться в тех поддержку
Не работает paralaxlayer. В motion двигается следующий за ним слой
Мне удалось исправить эффект паралакса. Нужно в правом верхнем углу выбрать не Forward+, а mobile или совместимость
Что делать если я в точь в точь всё сделал как на видео, но фон не двигается в меню?
Значит скорее всего что-то пропустил)
Аналогичная проблема у меня
не могу найти ассеты для хил бара(
помогите! скиньте ссылку пожалуйста !
Под первым роликом ссылка на ассеты должна быть
@@GameCrafter_GD спасибо
У меня строка кода, которая отвечает за перемещение фона, выделяется красным и проект не запускается
в группу скрин
@@user-mj7jb5gz4h я уже удалил годот
что делать если пишешь scroll_offset но оно выдает красную ошибку
Без контекста не отгадаю, скинь в телегу скрины с ошибкой и кодом
а как сделать обычный статичный фон одноцветный
создай TextureRect либо ColorRect добавляй фото для текстуры, а для цвета в инспекторе выбери цвет.
Если у тебя уже есть кнопки, нажми на этот скрипт и зажми шифт и стрелку вверх ,когда этот нод/скрипт станет первым отпускай, после того как перенёс настраивай прозрачность или цвет для кнопок.
у меня гадот не пропускает папку с графикой
1:55 как мне перенести файлы у меня телефон
delta это время между кадрами, а дальше всё по классике
расстояние = скорость * на время
Не совсем понял коммент, это вопрос или рекомендация?
@@GameCrafter_GD Видики классные. Спасибо. Это комментарий к тому месту где вы объясняете про delta.
Мне кажется требовалось более чёткое объяснение. Ну и написал какое.
Delta это время прошедшее от одного кадра до другого в реальном мире.
Получается если объект двигался со скоростью 100 юнитов/сек, то расстояние будет 100 * delta = 100 юнитов.
Так лучше для понимания delta.
@@smarthedgehog3185 спасибо за пояснение)
ТЫ супер ! продолжай !!!!
я даже свою кошку заставил на тебя подписаться )))
)) спасибо!
ребят срочно ответьте почему я переношу фон с папки в нудное место а он не переходит срочно!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
такаяже проблема
по отдельности
перетаскивай
2:02 А как на телефоне делать?
Сорри за телефон ничего сказать не смогу, попробуй в группе в телеге поспрашивать
Кто знает как убрать размытие спрайтов в
годот
Project -> project settings -> rendering -> textures -> default texture filter -> и тут linear поменять на nearest
как сделать кнопки полупразрачными?
Справа в инспекторе есть вкладка visibility, в ней есть параметр modulate если на него нажать, появится настройка цветовых каналов, четвертый канал отвечает за прозрачность, его и нужно крутить
@@GameCrafter_GD как добавить на кнопки текстуру? Ну или же цвет, скажи пожалуйста!
@@Rut_Gunney нужно использовать нод texture button, дальше в роликах я рассказывал