How to fade transition between scenes in Godot in 5 minutes

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

КОМЕНТАРІ • 49

  • @Aivin
    @Aivin 3 роки тому +10

    The only clear tutorial on youtube
    Thanks!

  • @karazou1
    @karazou1 3 роки тому +6

    Very concise tutorial. Im a unity developer trying out Godot and its been a good experience. Thank you for making this.

  • @drze7910
    @drze7910 3 роки тому +4

    Man, you are so fast for everything hahaha... You deserve a sub for that!

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

    Great tutorial! You helped me a lot, thanks!

  • @animanoir
    @animanoir 2 роки тому +7

    I love this bite syzed tutos. To the point, no need to ramble about anything else. I... I LOVE YOU!

  • @geeksinsuits
    @geeksinsuits 2 роки тому +1

    Nice tutorial worth a subscribe !

  • @jjl1328
    @jjl1328 3 роки тому +3

    This is almost perfect for me but the canvas layer is 'blocking clicks' and interactions with the scene... trying to figure out how to work around this.

    • @jontopielski6227
      @jontopielski6227  3 роки тому +5

      Set the Mouse settings (on the right, in the inspector side) from Pass to Ignore on all control nodes in the new canvas layer

    • @jjl1328
      @jjl1328 3 роки тому +1

      @@jontopielski6227 Perfect, thank you.

    • @rx3443
      @rx3443 2 роки тому

      @@jontopielski6227 thx !!

  • @daguido742
    @daguido742 3 роки тому +2

    wow this was fast i almost missed how you recorded the keyframes tbh

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

    Also, the code is really small. It's hard to read sometimes. Zoom of some sort would've been helpful.

  • @MinisterGold
    @MinisterGold 9 місяців тому +2

    Tbh, you need to be more explicit about where you're moving your mouse and where you're clicking. Instead you're just kind of going there so I have to look around, rewind multiple times and ask myself "wait.... where are they going?"

  • @devkidgames857
    @devkidgames857 3 роки тому +2

    When I instanced the scene, it caused all my buttons to stop functioning entirely. And I mean buttons as in nodes the keys on my keyboard work fine. Anyone know why?

    • @poupi3300
      @poupi3300 3 роки тому

      I have the same problem

    • @poupi3300
      @poupi3300 3 роки тому +1

      I just found the solution => Change the layer level of your TransitionScreen node to something like -100 by default, and change it to 100 when you start the transition (otherwhise your effect stay behind)

    • @rx3443
      @rx3443 2 роки тому

      @@poupi3300 thxxx but how to rechange in layer 100 ?

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

    There is many things in Godot that are too hard to figure out the method without tutorials.

  • @Axenide
    @Axenide 3 роки тому +2

    Hey! I loved your video. Is there a way to do it with more scenes?

    • @jontopielski6227
      @jontopielski6227  3 роки тому +3

      Yeah it's a little bit hard to explain in a youtube comment but I'll try. The general idea is to have a function where you pass the next scene you want to start. In that function, you set a local variable to that scene and then you start the transition screen. In the signal callback function for the transition screen finishing, you set the scene using the reference that you set in the first function. The end result would be something like this:
      var next_scene = null
      func set_scene(scene):
      $TransitionScreen.start_transitioning()
      next_scene = scene
      func _on_TransitionScreen_faded_to_black():
      for child in $CurrentScene.get_children():
      child.queue_free()
      $CurrentScene.add_child(next_scene.instance())
      Edit: I should add that you'll want this to be the Main scene and make it a singleton (Autoload) so that any scene can call Main.set_scene(load("res:my/next/scene.tscn"))

    • @Axenide
      @Axenide 3 роки тому +3

      @@jontopielski6227 Thank you! I actually found other way to do it but this is better xD
      Thanks a lot

  • @roadtomillion9499
    @roadtomillion9499 3 роки тому +1

    Can we use yield instead connecting signals?
    Sry if it's too dumb I'm learning btw

    • @InsanityForce
      @InsanityForce 3 роки тому

      That's how I did it, it works great.
      func set_UI(uiscene : PackedScene) :
      screen_fader.play("to_dark")
      #GDScriptFunctionState yield(object: Object = null, signal: String = "")
      yield(screen_fader, "animation_finished")
      for child in ui_control.get_children() :
      child.queue_free()
      var new_ui = uiscene.instance()
      new_ui.init()
      ui_control.add_child(new_ui)
      screen_fader.play("to_normal")

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

    this video is great but i have a question. I made an Rpg game whitch switches between scenes but if i go back to a scene it relodes everytink as it was but i don`t want it to so could you show us how to do this ?

  • @YMRKJAY
    @YMRKJAY 2 роки тому

    what do i do if i want to add a transition on an already made scene do I put that scene into a container? sorry il mew to godot

  • @rosokucingganteng2365
    @rosokucingganteng2365 3 роки тому +1

    Thank you!!

  • @Gakusangi
    @Gakusangi 3 роки тому

    fade_in, fade_out.

  • @AniketKumar-dl1ou
    @AniketKumar-dl1ou 3 роки тому +1

    Very helpful :)

  • @waterteafan9264
    @waterteafan9264 2 роки тому

    assert didnt work on release, idk why

  • @marktime.
    @marktime. 2 роки тому

    when i instance the TransitionScreen.tscn in my game it fills the screen with black

    • @geeksinsuits
      @geeksinsuits 2 роки тому

      Right click the node , click editable children . Then click on the Rect node and make it transparent.

    • @marktime.
      @marktime. 2 роки тому

      @@geeksinsuits worked thanks

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

    damn I wish I was this good at coding, trying to learn but I'm just too damn stupid haha

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

    Otherwise, the tutorial was helpful, but yea those improvement would help alot imo

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

    Is this tutorial applicable to Godot 4?

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

      4:41
      For Godot 4, it's now instantiate() to start the 2nd scene.

  • @RuaanRuaan
    @RuaanRuaan 4 роки тому +1

    Thnx

  • @fa-pm5dr
    @fa-pm5dr 3 роки тому

    great

  • @DrNabeel20
    @DrNabeel20 3 роки тому

    Nice 👍🏻

  • @somekindofplayer2765
    @somekindofplayer2765 3 роки тому

    thx

  • @tanimsk
    @tanimsk 3 роки тому +1

    thanks but you were really fast

  • @ImDash
    @ImDash 3 роки тому

    hi, i have a little problem, when i want to start the game, the transition start and i don't press any key. But the transition works when i press a key.

    • @jontopielski6227
      @jontopielski6227  3 роки тому

      Are you calling transition() in the _ready() function of TransitionScreen? Also make sure that the autostart toggle isn't selected in the AnimationPlayer for any of the animations. It's the little toggle arrow thing next to the animation name.

    • @ImDash
      @ImDash 3 роки тому

      @@jontopielski6227 thanks you

    • @xMonkeydud137x
      @xMonkeydud137x 3 роки тому

      @@jontopielski6227 This didn't work for me :(

  • @legendarymuramasa2247
    @legendarymuramasa2247 2 роки тому +1

    Tutorial too fast, doesn't work and it broke my game

  • @pascalinefonteh8109
    @pascalinefonteh8109 3 роки тому

    Sorry but your cursor moves too fast for my eyes and I can barely see what your typing because of the size even with my glasses