Всё о Tilemap в Godot Engine 4

Поделиться
HTML-код
  • Опубликовано: 15 ноя 2024

Комментарии •

  • @NobodyHere539
    @NobodyHere539 Год назад +67

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

    • @m0h49
      @m0h49 Год назад

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

    • @NobodyHere539
      @NobodyHere539 Год назад

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

    • @_1mrscool11_9
      @_1mrscool11_9 4 месяца назад

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

    • @NobodyHere539
      @NobodyHere539 4 месяца назад

      @@_1mrscool11_9 да это я

  • @КонстантинГолубович
    @КонстантинГолубович 9 месяцев назад +7

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

  • @puck_rayzi
    @puck_rayzi 2 месяца назад +3

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

  • @DwarfBormotun
    @DwarfBormotun Год назад +6

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

  • @zelyakalex9965
    @zelyakalex9965 Год назад +16

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

  • @АртёмКовалёв-ь9в
    @АртёмКовалёв-ь9в 8 месяцев назад +1

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

  • @akovemil9528
    @akovemil9528 Год назад +2

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

  • @yasenkrasen1581
    @yasenkrasen1581 8 месяцев назад +1

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

  • @EhoTenchi
    @EhoTenchi 11 месяцев назад +3

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

  • @user-secretno
    @user-secretno 3 месяца назад

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

  • @Толик-д8о
    @Толик-д8о 6 месяцев назад +1

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

  • @diobrando5839
    @diobrando5839 11 месяцев назад +1

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

  • @evdmalphysics
    @evdmalphysics 3 месяца назад +1

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

    • @oktopusskills
      @oktopusskills  3 месяца назад +1

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

    • @evdmalphysics
      @evdmalphysics 3 месяца назад

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

  • @frontend-pashtet
    @frontend-pashtet Год назад +3

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

  • @TheOrionMoran
    @TheOrionMoran 10 месяцев назад +1

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

  • @redsaer_shitposts
    @redsaer_shitposts 7 месяцев назад +1

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

  • @neriper1
    @neriper1 Год назад +3

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

  • @anastasialorem5671
    @anastasialorem5671 Год назад +5

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

  • @yujeck
    @yujeck Год назад

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

  • @didoge5545
    @didoge5545 7 месяцев назад +1

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

    • @oktopusskills
      @oktopusskills  7 месяцев назад

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

  • @lexlind
    @lexlind 4 месяца назад +1

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

  • @vindikeitor
    @vindikeitor Месяц назад

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

  • @LegionDarkFox
    @LegionDarkFox 6 месяцев назад +1

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

    • @oktopusskills
      @oktopusskills  6 месяцев назад +1

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

    • @LegionDarkFox
      @LegionDarkFox 6 месяцев назад +1

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

  • @pandalove3162
    @pandalove3162 5 месяцев назад +2

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

    • @_1mrscool11_9
      @_1mrscool11_9 4 месяца назад +1

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

  • @СлонМармон
    @СлонМармон Год назад +1

    👍класс

  • @gadasss1193
    @gadasss1193 Год назад +2

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

  • @Aleeex800
    @Aleeex800 Год назад +1

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

  • @egopos
    @egopos Год назад +2

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

  • @mexvision-3556
    @mexvision-3556 Год назад +1

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

    • @oktopusskills
      @oktopusskills  Год назад

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

  • @SpekikOfficial
    @SpekikOfficial Год назад +1

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

  • @nevvimore
    @nevvimore Год назад +1

    Жду ещё уроки

  • @mrhouse2077
    @mrhouse2077 Год назад +1

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

  • @yubert-s2f
    @yubert-s2f 25 дней назад +1

    Когда новий видос братан

  • @ВадимТимошин-ш7ъ
    @ВадимТимошин-ш7ъ Год назад +2

    Привет, подскажи пожалуйста, как делать генерацию 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  Год назад +2

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

    • @ВадимТимошин-ш7ъ
      @ВадимТимошин-ш7ъ Год назад +2

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

    • @ВадимТимошин-ш7ъ
      @ВадимТимошин-ш7ъ Год назад +2

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

    • @oktopusskills
      @oktopusskills  Год назад +2

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

  • @Tolik12385
    @Tolik12385 4 месяца назад +2

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

    • @oktopusskills
      @oktopusskills  4 месяца назад

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

    • @Tolik12385
      @Tolik12385 4 месяца назад

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

    • @oktopusskills
      @oktopusskills  4 месяца назад

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

    • @Tolik12385
      @Tolik12385 4 месяца назад

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

  • @skysoft1103
    @skysoft1103 Год назад

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

  • @Suunsuuun
    @Suunsuuun Год назад +1

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

  • @m0h49
    @m0h49 Год назад

    Спасибо

  • @sergentinamas2135
    @sergentinamas2135 Год назад +1

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

  • @ТоХа-ЛоХ
    @ТоХа-ЛоХ Год назад +1

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

  • @Daniil-sq9lo
    @Daniil-sq9lo Год назад +1

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

  • @Suunsuuun
    @Suunsuuun Год назад

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

    • @oktopusskills
      @oktopusskills  Год назад

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

    • @Suunsuuun
      @Suunsuuun Год назад

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

    • @oktopusskills
      @oktopusskills  Год назад

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

  • @lorein_4368
    @lorein_4368 4 месяца назад

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

    • @oktopusskills
      @oktopusskills  4 месяца назад

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

    • @lorein_4368
      @lorein_4368 4 месяца назад

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

    • @oktopusskills
      @oktopusskills  4 месяца назад +1

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

  • @irayala
    @irayala Год назад +1

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

  • @dimargauxhorus
    @dimargauxhorus Год назад

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

  • @666GooglMan66
    @666GooglMan66 Год назад

    Ты бомба❤

  • @SaysAnX
    @SaysAnX Год назад

    And canvas layer with bar?

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

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

  • @datche2403
    @datche2403 Год назад

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

  • @KIBERTAIM
    @KIBERTAIM 7 месяцев назад

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

  • @thechrom007
    @thechrom007 Год назад

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

  • @Galaktikaa
    @Galaktikaa Год назад

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

    • @godot_enjoyer
      @godot_enjoyer Год назад

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

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

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

  • @_1mrscool11_9
    @_1mrscool11_9 4 месяца назад

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

    • @oktopusskills
      @oktopusskills  4 месяца назад

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

    • @_1mrscool11_9
      @_1mrscool11_9 4 месяца назад

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

    • @oktopusskills
      @oktopusskills  4 месяца назад

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

    • @_1mrscool11_9
      @_1mrscool11_9 4 месяца назад

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

  • @Antip4
    @Antip4 Год назад

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

  • @dimargauxhorus
    @dimargauxhorus Год назад

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

  • @kk-gu4cm
    @kk-gu4cm Год назад

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

    • @oktopusskills
      @oktopusskills  Год назад

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

    • @oktopusskills
      @oktopusskills  Год назад

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

  • @Vlados_Ados
    @Vlados_Ados 9 месяцев назад

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

  • @wildtigor4056
    @wildtigor4056 Год назад

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

  • @thewolf-vm8hm
    @thewolf-vm8hm Год назад

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

    • @oktopusskills
      @oktopusskills  Год назад

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

    • @thewolf-vm8hm
      @thewolf-vm8hm Год назад +1

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

  • @Zinlon
    @Zinlon Год назад

    Что такое Tilemap

  • @Shelpface
    @Shelpface Год назад

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

    • @oktopusskills
      @oktopusskills  Год назад +1

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

    • @xiaomixiaomi1468
      @xiaomixiaomi1468 11 месяцев назад +1

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

  • @f0rem336
    @f0rem336 Год назад

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

  • @hohloma428
    @hohloma428 10 месяцев назад

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

    • @oktopusskills
      @oktopusskills  10 месяцев назад

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

    • @hohloma428
      @hohloma428 10 месяцев назад

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

  • @Ega3
    @Ega3 3 дня назад

    Там опять обнова...

  • @Zloy_Kritic
    @Zloy_Kritic Год назад

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

    • @oktopusskills
      @oktopusskills  Год назад

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

    • @Zloy_Kritic
      @Zloy_Kritic Год назад

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

  • @m0h49
    @m0h49 Год назад +1

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

  • @kovalenkosv40
    @kovalenkosv40 Год назад

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

  • @ViTalityYT
    @ViTalityYT 9 месяцев назад +2

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

  • @ВадимПостников-ъ2з
    @ВадимПостников-ъ2з 8 месяцев назад +1

    Спасибо