Forum rules - please read before posting.

Custom Scene Transitions

Greetings all.

I have been trying to figure this out for some time so hoping someone can help. When I transition from one scene to the next I would like to create my own animated transition instead of having a fade to black or hardcut and load in the new scene. 

Is there a way to do this in AC? If not could someone point me in the right direction to accomplish the task?  

Most appreciated 

Comments

  • Check this tutorial, it should provide a good starting point: http://www.adventurecreator.org/tutorials/creating-loading-bar
  • I actually thought about this, so am i right in saying this.
    My scenes almost instantly load so I could create a loading scene that plays an animation (overlay it) and then load in the new scene? 
  • Yes, that should definitely be possible.

    Depending on your specific setup, some ActionList logic may be needed if you want to show the full animation before switching to the new scene.

  • edited April 2017
    Yes, a scene with an overlaid a UI or an sprite renderer would probably do it. Since lots of adventure games are not too heavy they tend to load too fast for any loading screen, so some trickery is probably necessary for this, lol. Else you could also simply leave this to camera fadeins and fadeouts (if you make them long enough then it won't feel too sudden). 
  • Thanks for the tips all :)
  • FWIW, you can easily do a crossfade transition by checking Overlay current screen during switch? in the Scene: Switch Action.

    Following that up with a Camera: Fade Action in the new scene (to fade in) will give a crossfade effect - since the camera's "fade texture" is a screenshot of the game before the scene change.
  • Hi Chris, yeah I know about that thanks. I wanted a little more control  like something from our animation sampler for the game 
    (kicks in at 10 seconds)


  • Ah, right.  Yes, in that case, I'd second @Alverik's suggestion of an animated UI.  It needn't be a Loading one, just a regular one that you call before the Scene: Switch.

    You could actually make use of parameters to automate this whenever you want to change scene - just call a dedicated ActionList that handles the transition, which changes the switched-to scene value dynamically.
  • Thanks Chris :)
    Will give it a bash, always so helpful 
  • Got it working thanks guys!!!
  • Hello,

    I'm trying to recreate this same transition as seen in the video. I have created an empty scene with the animation (scene 6), and used this scene as a "loading scene" (before going to scene 3 or 4, go to 6). But I can't make it "transparent" so I can see the previous one. It just overlaps with the skybox and then switches.

    Also, I noticed the animation I created using the Animator (just two black bars on top and down) don't even start, and the scene changes before they even start moving. I have to say, there is no script or whatsoever attached. Just the animation.

    Not sure if anyone can help because this recreates a really cool feeling in the game.

    Thanks.

  • I don't know what transparent effect you're referring to with the example video above, but you shouldn't have to rely on a loading scene for the transition. Loading scenes are specialized and don't function as regular scenes with e.g. OnStart cutscene logic etc.

    Have an Animator in place to move your black bars, but be sure to wait for the animation to play before calling your "Switch: Scene" Action.

  • Hello Chris,
    Thanks for your feedback. Don't worry about the "transparent effect". I already understood what you meant and could get it play nice. Though I do have a problem. First things, first, here's the link of the photo:

    https://ibb.co/QHfr7BP

    So basically what I'm doing is this: the scenario moves a bit (it's a spaceship), then calls the "Scene Transition" animation (two black bars on top and bottom closing in to each other), and after that it should switch to the next scene. The problem is that I noticed that after the animation plays, it goes back about a fraction of a second to the same scenario I'm in, and then switches. It creates a little effect as if it never flew, and practically makes the animation useless. I want to keep it smooth: animate, then swiftly switch scenes.

    I tried overriding it with a back screen so it appears on top of it, but still it goes back one fraction of a second before switching. I also tried adding some engine/wait in parallel so when the animation is playing, despite the time it has passed, switch! but no luck. I'm thinking the engine/wait can't overwrite animations when they are running...

    I honestly don't know what else I can do...
    Any help or feedback will be greatly appreciated.

    Thanks a lot.

  • The Animator in your screenshot isn't the one being called in your ActionList. Can you share an image of that, as well as how the effect actually looks in-game?

    It may be a case of the way your Animator is configured to react once the "Scene Transitions" animation has ended. You'll want to make sure this animation does not loop or transition to another state once it's complete - it should remain on the last frame of its animation.

  • Hello Chris,

    Yes, the animator you see is for the other animation (since both run at the same time). My bad. Here’s the correct one.

    https://ibb.co/yhHSjv4

    Next, the effect in action: two black bars, no Sprite renderer until the animation starts. They both close in. This is the last effect I want before transitioning, and yes, to run once. The problem is that after it runs, there is just one fraction of a second where it goes back to the start of the scene before transitioning.

    https://ibb.co/zmfxHCs

    This next one is the effect in place before switching the scene:

    https://ibb.co/N75pFZ3

    And finally this one is that frame it shows before switching. You may see that the animator wants to start again. Exactly like you said, I want it to run once. Maybe here’s the issue? How can I make it remain on that last frame?

    https://ibb.co/j8QDf4G

    Hope this is enough to find out the problem.
    Thanks a lot!

  • edited October 2021

    Your Animator has transitions defined, but you are triggering the animation by naming it directly in your Action.

    In this case, transitions are not necessary. Delete them to make sure it doesn't transition back to the idle animation after completing.

    Make sure also that the transition animation asset doesn't have "Loop Time" set in its Inspector.

  • Thanks a lot! It worked like a charm :smiley:
    As always, your AC engine is awesome!!!

Sign In or Register to comment.

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Welcome to the official forum for Adventure Creator.