[Effects&Shaders] Need help giving an atmosphere to my game

  • Hi my fellow constructers !

    Here is my issue i've been trying to fix for few days.

    I'm currently making a Metroid-Like game where the player can explore a "huge" world, getting upgrades ect.. I want to give main zones a colorfull identity, each one has to be different. But I'm making my game in one layout only, and the transition has to be very smooth according to the position of my character. I've already tried to manually change background RGB channels each tick with a position based expression. But the amount of zones i want to implement makes it an enormous mess (i've only managed to go from purple to light blue according to my x position) Even with that, i don't manage to grant my near background the same greyish color to imitate depth.

    Should i keep trying getting colors right using RBG/tick method ? Should i use effects ? If yes can i get a bit of help, i'm a complete newbie about this.

    Thank you a lot (here's the screenshot of my world actually)

  • Hi! It's a bit hard to give advice without some more info about how your level is set up. I'm also working on a Metroid style game and have divided my different zones into different layouts which are linked. But there is of course nothing stopping you doing everything on one layout - in fact there are many advantages to it as well. Are you backgrounds made up of multiple layers for parallax scrolling or are they just single static images? Do the backgrounds need to scroll both horizontally and vertically? Do the background elements need to change, or only the colours? Does the colour transition need to be smooth, or can it be immediate? A lot will also depend on how you have set up your game's camera. Games like Metroid use a zone based approach, where each screen's boundaries are limited until the player transitions through a door - are you using something similar to that?

  • Hi !

    Indeed i haven't been clear enough, i made a sketch of how my world is designed to help you picture this.

    To answer your questions, all the layers (both backgrounds, ground, foreground, sky) have to scroll vertically and horizontally with a different parallax ratio. Actually, backgrounds aren't animated and they won't "change" during the gameplay. The transition between colors has to be the smoothest to indicate the players where they are going at. My camera is completly free, following the player, and there is no cinematic yet.

    Also, I'd like to make a day/night cycle but i already have all my ideas, i'll be using a vignette effect, lowering luminosity and contrast.

    Thank you for giving interest to my request !

  • Interesting! Ok so I think I understand, but correct me if I'm wrong - you want the transition to be very slow, but also reactive to your movements - so if you were walking from Forest Town to Spirits Zone the background colour would start off green, and then as you walked further to the right more purple and less green would be added until it was completely purple (when arrived at spirit town). A gradual transition like that will certainly be more tricky and yes, I think the only way to do it would be by setting the colours every tick (or at least a very small time increment). I don't know how to do it off the top of my head (although someone else here might have some suggestions). One thing that MIGHT help to visualise it, is looking at how a slider bar is put together - although it is different, there are certainly some similarities to your problem - there is a video here which goes through how to make a slider bar in construct 2

    Subscribe to Construct videos now

    The similarities I see, are that the slider bar needs a minimum value (your initial colour), a maximum value (the colour you want to change to) and a step (how far along your journey you are/how far between start and end colours you are). You would probably need to set up a bunch of variables to keep track of starting and ending colours and then change these depending on what part of the screen you are on (either by checking x,y position in the layout or using collision triggers). It sounds like you may have already set up something like that so I'm not sure if it's any help...

  • Exactly !

    I think too, but that way is very fastidious, and has a lot of testing/mathematical research to do, and can lead to a lot of major issues (about teleporting and stuff). Well, the other issue is to accord my near/far background to the color of the ... background. I can't find any effect that allows it. I might be doing something wrong but I reeaaaly struggle finding the right blend mode+effect combo. Have you any idea ?

    (PS: Thank you for the tutorial, it actually helped me for my night & day cycle !)

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • How are you changing the colours at the moment, are you using the "tint" effect or something different?

  • If it were me, I would have an object between each zone: while overlapping this zone to the left or right, set the tint effect based on the zone. You could set a target and interpolate toward it.

Jump to:
Active Users
There are 1 visitors browsing this topic (0 users and 1 guests)