Всё о Tilemap в Godot Engine 4

Поділитися
Вставка
  • Опубліковано 26 вер 2024

КОМЕНТАРІ • 111

  • @NobodyHere539
    @NobodyHere539 Рік тому +65

    Годный туториал. Наконец-то у многих исчезнут проблемы с новой TileMap. Спасибо за труд.

    • @m0h49
      @m0h49 Рік тому

      У вас тоже не плохие гайды... очень даже не плохие я бы сказал)))

    • @NobodyHere539
      @NobodyHere539 Рік тому

      @@m0h49 Но я не делал никакие гайды...

    • @_1mrscool11_9
      @_1mrscool11_9 2 місяці тому

      Нобади это действительно ты? я в шоке

    • @NobodyHere539
      @NobodyHere539 2 місяці тому

      @@_1mrscool11_9 да это я

  • @КонстантинГолубович
    @КонстантинГолубович 7 місяців тому +6

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

  • @zelyakalex9965
    @zelyakalex9965 Рік тому +16

    Это лучший урок по TileMap2D. Жду урок по динамической навигации)

  • @DwarfBormotun
    @DwarfBormotun Рік тому +5

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

  • @anastasialorem5671
    @anastasialorem5671 Рік тому +4

    Довольно подробно и понятливо, в самый раз для ознакомления👍
    С возвращением в эфир

  • @user-secretno
    @user-secretno Місяць тому

    Очень крутой туториал, я столько нового узнал, спасибо

  • @vindikeitor
    @vindikeitor 4 дні тому

    Имба, спасибо)

  • @frontend-pashtet
    @frontend-pashtet Рік тому +3

    Очень полезный урок. Спасибо

  • @neriper1
    @neriper1 Рік тому +2

    Спасибо, очень отличный туториал!👍

  • @АртёмКовалёв-ь9в
    @АртёмКовалёв-ь9в 6 місяців тому

    Гайд, достойный подписки с колокольчиком и уважения)

  • @SpekikOfficial
    @SpekikOfficial Рік тому +1

    Ура, вернулся. Жду обучающих видосов каждый день

  • @egopos
    @egopos Рік тому +1

    Пипец, ты вернулся🎉

  • @yasenkrasen1581
    @yasenkrasen1581 6 місяців тому

    Подписался на дзен ради Годо! Спасибо.

  • @EhoTenchi
    @EhoTenchi 9 місяців тому +3

    5:05 шикарный переход, просто вырезано - и теперь включай оракула где что и куда ты залез.
    После этой минуты можно закрывать видео таким успехом...

  • @mrhouse2077
    @mrhouse2077 Рік тому +1

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

  • @akovemil9528
    @akovemil9528 Рік тому +2

    Добрый день!
    Туториал по рандомной генерации мира из тайлов!

  • @javanana54
    @javanana54 11 місяців тому +1

    Очень крутой урок получился, хотелось б большо по Godot 4👍👍

  • @ТоХа-ЛоХ
    @ТоХа-ЛоХ Рік тому +1

    спасибо что делаешь такие качественные туториалы))))

  • @sergentinamas2135
    @sergentinamas2135 Рік тому +1

    Отличный видос! Определенно лайк

  • @TheOrionMoran
    @TheOrionMoran 9 місяців тому

    Отличный гайд!

  • @СлонМармон
    @СлонМармон Рік тому +1

    👍класс

  • @irayala
    @irayala Рік тому +1

    оо нормальное обьяснение что же происходит в тайл мап))👍

  • @Толик-д8о
    @Толик-д8о 4 місяці тому

    Спасибо. помогли очень.

  • @yujeck
    @yujeck Рік тому

    В годоте конечно тайлмапы супер пиздатые

  • @Daniil-sq9lo
    @Daniil-sq9lo Рік тому +1

    Наконец объяснили нормально , а то куча проблем намутил от не знания

  • @lexlind
    @lexlind 2 місяці тому

    Зря перестал ролики записывать, хорошо получилось.

  • @АртёмМельник-ж7ц

    Ты вернулся!!!

  • @puck_rayzi
    @puck_rayzi Місяць тому +2

    13:50. Я всё включил, но у меня пропали все деревья, а персонаж становиться невидимым когда к ним подходит, что делать?

  • @РустамШангареев-е5ф

    Большое спасибо за подробный туториал

  • @Antip4
    @Antip4 Рік тому

    Спасибо большое за такое полезное видео!

  • @ВадимПостников-ъ2з
    @ВадимПостников-ъ2з 7 місяців тому

    Спасибо

  • @gadasss1193
    @gadasss1193 Рік тому +1

    жду новый ролик

  • @didoge5545
    @didoge5545 6 місяців тому +1

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

    • @oktopusskills
      @oktopusskills  6 місяців тому

      если не появляется сетка - важны не габариты тайлов. Надо проверить в какой вкладке вы находитесь, для рисования. Внизу надо выбрать не "Набор тайлов", а TileMap. Убедиться, что выбран инструмент карандаш

  • @666GooglMan66
    @666GooglMan66 Рік тому

    Ты бомба❤

  • @dimargauxhorus
    @dimargauxhorus Рік тому

    Вообще супер видео спасибо огромное!

  • @skysoft1103
    @skysoft1103 Рік тому

    Пока Рома возвращался, перешёл на Unreal, но следить за Octopus не перестану :)

  • @evdmalphysics
    @evdmalphysics 2 місяці тому

    Спасибо за туториал. Созрел вопрос. Как реализуются рампы и наклоны ландшафта на многоуровневых картах в 2d, 2.5d играх? Или проще будет не морочить голову и это реализовывать в 3d?

    • @oktopusskills
      @oktopusskills  2 місяці тому +1

      Наложение достигается за счёт многослойности тайлмэп, сортировки по оси Y, коллизия на скосах, где игрок должен упираться в "стену". Если нужен прыжок - отключается коллизия на время прыжка. Иной раз, можно проверить направление прыжка и на какой высоте располагается тайл, куда игрок должен "приземлиться". А высоту можно указать через слои, data самих тайлов, если с высотой они меняются, иными способами. Разумеется в 2D такие вещи делаются, можно сказать, "костыльно", ведь мы искусственно будто бы добавляем третью ось в двухмерном пространстве. Но это не так сложно, как кажется. Изометрию немного сложнее в этом плане делать, на мой взгляд, лучше сначала попробовать в обычном 2D, а потом уже со знанием дела в 2.5D

    • @evdmalphysics
      @evdmalphysics 2 місяці тому

      @@oktopusskills в голове образ 2d это карта рельефа без перепадов как в Warcraft 2, а в 2.5d перепады как в red alert 2, age of empires 2. 2.5 d без перепадов, наверное, heroes 4 или Majesty.
      Состенами понял. Наклоны как задавать - не понял.

  • @nevvimore
    @nevvimore Рік тому

    Жду ещё уроки

  • @Tolik12385
    @Tolik12385 3 місяці тому +1

    Здравствуйте, хочу попросить вас о помощи. Сами понимаете - мало людей которые кодируют в годот на c#. Я делаю свою игру ПВП, где есть персонаж, карта и несколько типов мобов. Мне надо сделать так, чтобы моб сам появлялся в определённых координатах с определённым промежутком времени, но совсем не знаю как это сделать. Мог ли бы пожалуйста чуть чуть помочь?

    • @oktopusskills
      @oktopusskills  3 місяці тому

      Тут не имеет значения на чем писать. Алгоритм действий будет одинаков: таймер для появления монстров у какого нибудь объекта, условно, MobSpawner, ждать ивента о завершении отсчёта таймера и сравнить моба в определённой координате. Либо я не понял сути вопроса

    • @Tolik12385
      @Tolik12385 3 місяці тому

      @@oktopusskills дело в том, что я не могу связать все в один код. Я не знаю как месту спавна придать координаты и поставить промуток времени. Просто не получается написать код из-за очень маленького опыта в программировании

    • @oktopusskills
      @oktopusskills  3 місяці тому

      @@Tolik12385 откройте в документации годо раздел "ваша первая игра", пройдите все шаги. У вас сложится, во-первых, мнение о движке, во-вторых, подобные вопросы отпадут, заодно, узнаете нравится ли вам всё это)

    • @Tolik12385
      @Tolik12385 3 місяці тому

      @@oktopusskills хорошо, попробую посмотреть документацию, но это всё точно нравится) Весь год смотрел онлайн курсы, просто в некоторых моментах нам всё таки не донесли информацию

  • @LegionDarkFox
    @LegionDarkFox 4 місяці тому

    Годный туториал.. У меня один вопрос..
    Звучит смешно.. Я хочу попробовать сделать типа что то вроде старбоунда/террария на годоте. Но не понимаю как делать некоторые вещи.
    Толи спавнить чанки, а они уже блоки.. Или весь мир можно зарегенить в одну тайловую карту через скрипт (наделе 2 ибо задник)? Или в варианте с тайловой картой придется резать ее на чанки что бы оптимизировать?
    (хотя я пока не понимаю как "шуп перлина" из "белого шума" со всякой обработкой образует террайны и биомы и разделяется на чанки.)

    • @oktopusskills
      @oktopusskills  4 місяці тому

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

    • @LegionDarkFox
      @LegionDarkFox 4 місяці тому

      @@oktopusskills Давай я уточню ибо не понял. .Ибо я реально не понимаю может ли это осилить годо.
      стандартный мир в терарии 8400х2400 блоков.
      как такое переваривает годо? Тоесть я просто к примеру беру и рисуют на тайловой карте от 0 и до 8400 координаты тайлами нужное.. или мне же придется это как то оптимизировать..или это уже умеет сам годо?
      ну да.. по сути про танцы с шумом логично.. мучать отдельно.. я тока знаю что там вроде на коком то этапе это все превращается в текстуру.

  • @diobrando5839
    @diobrando5839 9 місяців тому

    Подскажите, как достать элементы из tilemap? То есть все тайлы которые были нарисованы. Чтобы потом поставить на определённые тайлы какие-нибудь сооружения

  • @pandalove3162
    @pandalove3162 4 місяці тому +1

    Поему когда я добавляю коллизию текстурка становиться синей?

    • @_1mrscool11_9
      @_1mrscool11_9 2 місяці тому

      может просто колизия своим цветом перекрывает текстуру?

  • @Vlados_Ados
    @Vlados_Ados 8 місяців тому

    мне одному это напоминает терарию

  • @Shelpface
    @Shelpface Рік тому

    Отличный урок!!! Ещё толком не использовал новые тайлмапы, но это видео поможет быстрее разобраться, спасибо! Кстати, может быть, ты и без меня знаешь, но здесь 12:56, вместо двух get_axis, можно использовать один get_vector, который даже нормализуется по умолчанию!

    • @oktopusskills
      @oktopusskills  Рік тому +1

      Спасибо! Да, уже после записи заметил про get_vector)

    • @xiaomixiaomi1468
      @xiaomixiaomi1468 9 місяців тому +1

      ​@@oktopusskillsпривет брат а как создать свой TileMep??? Но бесплатно

  • @thechrom007
    @thechrom007 Рік тому

    Отличный видос! Но... не все же любят рок))
    Лучше использовать какую-то нейтральную музыку

  • @mexvision-3556
    @mexvision-3556 10 місяців тому

    Сделал уровень с помощью тайлсета. Но когда персонаж двигается, периодически видны зазоры между ними. Тайлы хорошие, рисовал сам, все 32х32. В редакторе все ок. Но вот когда камера движется, появляются зазоры в 1 пиксель. Кто-то сталкивался с подобным? Экспериментальным путем выяснил что такое происходит только когда включено плавное следование камеры за игроком.

    • @oktopusskills
      @oktopusskills  10 місяців тому

      Вообще, проблема встречалась постоянно в Godot 3 версии. Но если столкнулись, лучшее, что можно сделать - добавить по пикселю со всех сторон, а в тайлмэп указать зазор через offset

  • @ВадимТимошин-ш7ъ

    Привет, подскажи пожалуйста, как делать генерацию Tilemap прямо в коде?
    Сейчас у меня скрипт привязанный к Node2D и там что-то вроде этого:
    for x in max_x:
    for y in max_y:
    var tile_id = generate_id(noise.get_noise_2d(x, y))
    if (tile_id != -1):
    $TileMap.set_cell(1, (x, y), 0, (0, 1))
    Я делаю процедурную генерацию и функция generate_id будет генерировать тип тайла, это заготовка на будущее, пока она просто говорит есть тайл или нет.
    А видос очень полезный, просто и понятно объяснено, спасибо

    • @oktopusskills
      @oktopusskills  Рік тому +1

      Приветствую! А в чём конкретно вопрос? Как будто бы решение уже пишется, а сам вопрос максимально абстрактный, даже нет инфы будет ли автотайлинг или нет. В целом, по работе с тайлмеп из кода - тоже будет видео, сложно сказать насколько скоро, учитывая, что следующие видео уже определены по тематике. Если будет конкретная проблема и вопрос - добро пожаловать в дискорд сервер (ссылка в описании), там коммуницировать проще, да и помочь через голосовые чаты с демонстрациями экрана. Удачи с проектом!

    • @ВадимТимошин-ш7ъ
      @ВадимТимошин-ш7ъ Рік тому +1

      @@oktopusskills Да, точно, самое главное я забыл сказать. Я затупил, извини. Я тогда в дискорде более подробно опишу проблему. Но все равно спасибо

    • @ВадимТимошин-ш7ъ
      @ВадимТимошин-ш7ъ Рік тому +1

      Хм, я не знаю что я сделал, но все починилось. Я просто пересоздал проект, со всеми теми же настройками. И все работает. Раньше при запуске был просто серый экран. А в новом проекте все генерируется

    • @oktopusskills
      @oktopusskills  Рік тому +1

      @@ВадимТимошин-ш7ъ из-за того, что не видел проекта, не могу сказать наверняка, может быть много причин, вплоть до отсутствия скрипта на ноде)

  • @Galaktikaa
    @Galaktikaa Рік тому

    Почему ты в качестве полноценного примера не создал изометрическую 2д рпг игру с персонажем и его прокачкой, инвентарем, ящиками, сундуками, бочками, мобами, боссами и т д?

    • @godot_enjoyer
      @godot_enjoyer Рік тому

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

  • @lorein_4368
    @lorein_4368 3 місяці тому

    А если y-sort надо сделать для нескольких слоев в карте с разными z индексами? Это возможно?

    • @oktopusskills
      @oktopusskills  3 місяці тому

      Для каждого слоя включаете y_sort_enabled и указываете z_index там же

    • @lorein_4368
      @lorein_4368 3 місяці тому

      @@oktopusskills Просто персонаж исчезает и появляется (делает y-sort?) только со слоем с одинаковым с ним индексом

    • @oktopusskills
      @oktopusskills  3 місяці тому +1

      @@lorein_4368 не забывайте о локальном центре координат тайлов и игрока. Попробуйте персонажа на слой выше поставить и посмотреть, исчезнет ли проблема

  • @KIBERTAIM
    @KIBERTAIM 5 місяців тому

    Где новые захватывающие туториалы ?

  • @hohloma428
    @hohloma428 8 місяців тому

    Не совсем понял, как маска для автотайлинга работает :(

    • @oktopusskills
      @oktopusskills  8 місяців тому

      Да, автотайлинг тянет на отдельный экскурс. Пока можете в доке глянуть, потом, возможно, запишу отдельно про это

    • @hohloma428
      @hohloma428 8 місяців тому

      @@oktopusskills Вот только что посмотрел англоязычный гайд, потом прочитал доки, но всё равно разобраться не смог :/
      Мне нужно простейшую 3х3 сетку сделать, но всегда получается какая-то каша из тайлов
      Возможно дело в том, что у меня лишь 8 из 9 ячеек имеют тайл (пустота по середине)
      Но в любом случае я уже больше часа пытаюсь решить эту маленькую проблему и ничего не получается :)

  • @redsaer_shitposts
    @redsaer_shitposts 5 місяців тому

    отличный гайдик

  • @SaysAnX
    @SaysAnX Рік тому

    And canvas layer with bar?

  • @f0rem336
    @f0rem336 Рік тому

    🎩
    🥸
    Моё почтение

  • @_1mrscool11_9
    @_1mrscool11_9 2 місяці тому

    есть ли способ добавить тайл на любое свободное на слое место в процесе игры?

    • @oktopusskills
      @oktopusskills  2 місяці тому

      @@_1mrscool11_9 вы можете получить информацию о тайле в указанной позиции на конкретном слое. Если get_cell() вернёт null -значит тайла в клетке нет

    • @_1mrscool11_9
      @_1mrscool11_9 2 місяці тому

      @@oktopusskills а добавить файл через код можно? Допустим я хочу чтобы по нажатию левой кнопки Миши в зоне где мог бы быть тайл добавить определённый тайл если его нету

    • @oktopusskills
      @oktopusskills  2 місяці тому

      @_1mrscool11_9 Можно всё что угодно) проверяете позицию тыка мыши, конвертируете в координату на тайловой сетке tilemap.local_to_map(позиция мыши)
      Получаете тайл из этой позиции, а дальше крутите им как хотите, ставите новый и тд.

    • @_1mrscool11_9
      @_1mrscool11_9 2 місяці тому

      @@oktopusskills спасибо, вы очень помогли!

  • @datche2403
    @datche2403 Рік тому

    Надеюсь будут новые видео по годот?

  • @kk-gu4cm
    @kk-gu4cm Рік тому

    Го новые полный тутор по godot на C# пожалуйста

    • @oktopusskills
      @oktopusskills  Рік тому

      По шарпу, если и будет, то не в ближайшее время, по той причине, что сейчася веду очные занятия по годо на gds, а ближайшие видео будут и для канала, и для закрепления материала ученикам) А так - к шарпу с удовольствием вернусь как нибудь

    • @oktopusskills
      @oktopusskills  Рік тому

      опять же, api один и тот же, и адаптировать любое будущее видео под шарп не составит труда

  • @thewolf-vm8hm
    @thewolf-vm8hm Рік тому

    Люди, помогите, как сделать эффект слоумо? Просто я делаю игру где основной механикой будет замедлять или останавливать время, но я не знаю как это сделать. Буду крайне признателен, если скажите как это сделать

    • @oktopusskills
      @oktopusskills  Рік тому

      Есть несколько способов. Самый простой - заюзать у класса Engine метод time_scale(ваш_множитель)

    • @thewolf-vm8hm
      @thewolf-vm8hm Рік тому

      @@oktopusskills СПААСИБОО, ТЫ ОЧЕНЬ СИЛЬНО ПОМОГ, ПРЯМ ОТ ДУШИ

  • @V_viktor0
    @V_viktor0 11 місяців тому

    Что такое Tilemap

  • @Zloy_Kritic
    @Zloy_Kritic 11 місяців тому

    сказали, что бесплатные ассеты, а в итоге один из них платный) 2 доллара просит

    • @oktopusskills
      @oktopusskills  11 місяців тому

      при скачивании вам нужно нажать "no thanks". Частая практика в ассетсторах - предложить условный донат)

    • @Zloy_Kritic
      @Zloy_Kritic 11 місяців тому

      @@oktopusskills Не заметил этой надписи, спасибо :)

  • @m0h49
    @m0h49 Рік тому +1

    Хочу намутить какую нибудь халтуру по гайдам, еще, но времени никак нет, семья и прочее))

  • @kovalenkosv40
    @kovalenkosv40 Рік тому

    Все норм только музыка говняная мешает

  • @m0h49
    @m0h49 Рік тому

    Спасибо

  • @dimargauxhorus
    @dimargauxhorus Рік тому

    Я вот только первый раз решил создать игру скачал годом, ничего не понимаю, было круто увидеть туториал по годо 4😅😅😅

  • @Aleeex800
    @Aleeex800 Рік тому

    Ты ожил, невероятно!

  • @javanana54
    @javanana54 10 місяців тому

    а можно ли как то в Tilemape в сцене изменить локальный центр )?

    • @oktopusskills
      @oktopusskills  10 місяців тому

      локальный центр ноды, которая в сцене, а сцена - часть тайлмап?)

    • @javanana54
      @javanana54 10 місяців тому

      @@oktopusskills задача была такой, чтоб когда игрок находился за деревом то дерево становилось прозрачным, и я нечего не придумал как сделать новую сцену и добавить ее в TileMape

    • @oktopusskills
      @oktopusskills  10 місяців тому

      @@javanana54 можно сделать по разному. Можно добавить в сцену дерева area2d и при ивенте пересечения с игроком добавлять прозрачности. Можно сделать шейдером для спрайта в сцене дерева. А можно вообще простым способом в лоб, так сказать. К ноде спрайта персонажа добавляем ноду PointLight2D, ей в Texture запихиваем спрайт персонажа (будет нашей маской для силуэта). В Range выставляем маску Item Cull Mask только 5ую, например. У Спрайта наших деревьев и других объектов, которые должны будут просвечивать персонажа ставим в Visibility -> Light Mask помимо уже выбранной 1ой еще 5ую (короче, ту же, что выставляли у PointLight2D. Всё. Можем покрутить у PointLight2D blend mode и energy. Как нибудь встрою такую штуку в видео

  • @ViTalityYT
    @ViTalityYT 8 місяців тому +1

    Фоновая музыка мешает воспринимать информацию

  • @wildtigor4056
    @wildtigor4056 Рік тому

    Круто спасибо всё чётко и понятно