Handle Scene Transitions, Doors and Persistence like a Commercial Game

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

КОМЕНТАРІ • 51

  • @lDeath489
    @lDeath489 Рік тому +12

    I'm glad you keep doing progress despite the awful news. Whatever happen, you will overcome it and use it as a positive moment. Even if you had to move on to new engine.

    • @uxxix
      @uxxix Рік тому +12

      He probably recorded this in advance. Pretty tough spot.

    • @lDeath489
      @lDeath489 Рік тому +3

      @@uxxix 😭
      I'm sorry, I'm gonna go full preach mode xD. Ignore it if is annoying:
      The more the pain the better we become. That's why most amazing people are those who have the most painful and unexpected moments and yet they find peace in going through these tough times and they shape who they are instead of becoming weak. So I'm sad for situation but I'm not worried. Positive will begin to form and show up if we accept these struggles and learn from them.

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

      ​@@lDeath489some will grow some will not. I feel like killing myself

    • @Change-jy1rl
      @Change-jy1rl Рік тому +2

      why is everyone such a drama queen

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

      @@Change-jy1rl sometimes that's what is needed for the moment. Sometimes it is annoying and unnecessary. So I understand.

  • @Nathidraws
    @Nathidraws Рік тому +26

    Next tutorial: Why i started using Unreal Engine

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

      Anyone got a tutorial how to painlessly kill myself? 😂 I lost 3 years of my life and everyone is just like eh just switch engines MAKInG GAMES IS EASY xd

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

      Or Godot.

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

      Unreal is terrible for 2d so I think you mean Godot

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

    When having 2 PlayerInputs on the same scene, AutoSwitch no longer works because each Player Input "claims" a control scheme.
    My recommendation for the UserInput Class to work is, instead of adding a Player Input component to the UserInput Class gameobject and having a Static Reference to it, to have a Serialized Field private reference to the Player Input Component of the Player and get the InputActions references in Start instead of Awake to avoid null references.

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

    This was a lot more complicated than I expected 😂. I did get a game transitioning from one scene to another while playing around with a few bits a few months ago, but I remember the coding being much simpler (though I imagine also a lot more limited than what you’ve set up, I.e. mine was just one door and it went from scene 1 to scene 2).
    I’ll have to watch this a couple more times I think to make sure I’m understanding it properly before I try to implement anything similar!

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

    A good follow-up video would be how to use dependency injection for your "persistent objects".

  • @fireraccoon_
    @fireraccoon_ Рік тому +3

    I like it. I really like your tutorials. For me is ok how you presented it. As always i learn something new!

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

    Amazing, love how your brain thinks. So grateful for your videos sir.!

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

    Although I'm planning on moving away from Unity, I think the basic scripting principles behind this are really good and helpful!

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

    Passei muitos dias procurando como fazer isso, e esse tutorial me salvou. Parabens pelo grande trabalho!
    I spent many days looking for how to do this, and this tutorial saved me. Congratulations on a great job!

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

    10:56 if you use Mouse controls in your game, make sure to disable Raycast Target on the Inspector of the panel.

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

    Is this really how they do it? Everything feels like we are fighting the system and creating unnecessary dependencies, but ey.... I haven't released a game...

  • @bogoid
    @bogoid Рік тому +10

    dude not giving a single f*ck about unity going nuts❤

    • @fjohnson-o4t
      @fjohnson-o4t Рік тому +6

      He might have started editing the video before the crazyness went live.

  • @st.altair4936
    @st.altair4936 Рік тому +1

    Godot tutorials from now? 🤖🔪💠

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

    Thanks a lot! I really needed this video:)

  • @reglan_dev
    @reglan_dev Рік тому +23

    A little feedback: next time, you could include a "Unity Tutorial" word in your video's name, soo that everyone knows instantly that this is a tutorial video

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

      and its useless because of new Unity Runtime Fee; too bad

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

      ​@@borisnaftaliev2911doubt that will even affect you.

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

    Really great

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

    How can this be used to spawn on the left or right to the portal instead of the middle of the portal

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

    the first person in my mind after unity trndimg news , i feel soo sad for you. you and your wife lost many things to get into this after all the one thing which you trusted made this kind of step is soo sad , i know its very pain i want to cry for you , BUT i have to Say
    Just puk of evrything happend , past is past Dont leave our dreams by others mind:
    If you have to Achevie the Goal change the Strategy,Not the goal- by lord krishna

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

    Hey, the Scene Field class does not appear to work when it comes to renaming the scene. The script renames the scene in the string field only if the editor for the object is open.

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

    For some reason, when I tried the new Input setup, the controls are no longer detected. Any idea what I might be missing. I copied the UserInput script and in Player.cs used, for example, moveInput = UserInput.MoveInput.x;.

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

    Nice tutorial have you seen about this unity fee ??? 0.20 cents per install of the game even if some one keep reinstaling the game just for trolling the developer will have to pay for it this is crazy unity is going down the hill are you thinking about migrating your game to unreal ???

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

    Do you think it's really worth to make all this shenanigans to work around "dont destroy on load"
    what if you just let it be gone, and have a player on every scene?
    I don't see a point in keeping stuff as the same object.
    except something like a music player

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

      the dont destroy on load is to keep state. If you destroy and reload each scene the reloaded object will have whatever value was saved in the scene. IE you cannot keep persistance between scene loads.

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

      @@Fenga i don't feel like storing data on the game object itself is a good idea in most cases, only seems useful for music dont stop playing between scenes imo

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

      @@reversamente im curious, how do you then store gamestate between scenes ? Do you serialize to disk each load - i guess not, but im just wondering

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

    Does this mean you will still use Unity going forward?

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

    I love how you don't give a f***😂 this unity stuff won't stick

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

      Even if they try to walk back these changes, they'll just try them again but worse one, two, three years from now. Anyone starting a project in Unity now has to understand they're basically signing up to pay any arbitrary fee Unity invents in the future.

  • @rafaelhuard
    @rafaelhuard Рік тому +6

    Oof timing.

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

    Some useful information, but misleading title.
    A lot of simplifications: you should use async scene loading, use animations for scene transitions, very bad limitation with door enums, and so on.

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

      I don’t think in this particular case that the door enum is a bad solution - enums can be bad when they might need to be expanded and you need to do more than a simple bool if the values are equal. As long as the check is just for equivalent value, then it’s easy to expand on it in the one place the enum is defined. Another solution over the enum would be ScriptableObjects. Make an SO type DoorID, and then you can just make the field holding that on each door readable and just check if the one assigned to the exit door matches that on the entrance door. But both are doing the same thing in essence.

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

    Please, we've heard about your difficulties in making your games so you guys can fulfill your dream. Heck, I could even offer to give you a hand, no cost, to move to something else but please, don't stay in Unity. It's a risk and it could become your worst financial decision. I'm not joking.

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

      Are you serious about that? Will you move my game to a different engine for free? Or are those just empty words

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

      @@maciejtyczynski6836 Who are you?

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

    damn you don't care don't you

  • @Coco-gg5vp
    @Coco-gg5vp Рік тому

    First