[Tutorial] A real dynamic light system

  • Construct 2 (or 3) needs to take care of this topic. Either by making it easy to use the current system or developing a more powerful one. Don't misunderstand, I have no intention to give more work to the Scirra Team, but I do believe that as an engine that gives the power of programming to people who can't write code, it must have a feature like this usable by the common developer.

  • Construct 2 (or 3) needs to take care of this topic. Either by making it easy to use the current system or developing a more powerful one. Don't misunderstand, I have no intention to give more work to the Scirra Team, but I do believe that as an engine that gives the power of programming to people who can't write code, it must have a feature like this usable by the common developer.

    Yes, everything can be made accessible, fast and still versatile.

  • Joannesalfa's alternative is, indeed, the best solution I've ever seen until now. I made some tests with it, it's easy to use and probably more useful than Pode's work. I use Sprite DLight to create my Normal Maps, the results are great (I tried every existing tool anyway). Hum. I shall continue to use it in different cases, then I'll probably write a tutorial "Dynamic light in Construct 2" to expose every single thing I learned about that on these past 3 months. The different solutions, how to apply them etc. All.

    I'm glad to see that I'm definitely not the only one to wait for an alternative made by Scirra to deal with that.

    We shall wait. And we will see. For now, I have some work hehe.

  • I shall continue to use it in different cases, then I'll probably write a tutorial "Dynamic light in Construct 2" to expose every single thing I learned about that on these past 3 months. The different solutions, how to apply them etc. All.

    I'd love to read it

  • It's ready, and takes almost 25 pages. I'll add some gifs and probably a video, and I'll have it corrected by a real english dude (I'm french, I did my best to write everything correctly but I suppose there's still some incomprehensible bullshit somewhere) then I'll submit it. Any feedback will be welcome, so when I'll post it there, feel free to say anything. It should be available in two weeks, maybe earlier.

  • It's ready, and takes almost 25 pages. I'll add some gifs and probably a video, and I'll have it corrected by a real english dude (I'm french, I did my best to write everything correctly but I suppose there's still some incomprehensible bullshit somewhere) then I'll submit it. Any feedback will be welcome, so when I'll post it there, feel free to say anything. It should be available in two weeks, maybe earlier.

    Cool! looking forward to it!

  • It's ready, and takes almost 25 pages. I'll add some gifs and probably a video, and I'll have it corrected by a real english dude (I'm french, I did my best to write everything correctly but I suppose there's still some incomprehensible bullshit somewhere) then I'll submit it. Any feedback will be welcome, so when I'll post it there, feel free to say anything. It should be available in two weeks, maybe earlier.

    Sounds great

  • Looking forward to the tutorial

  • i saw these videos and i am wondering Ashley if its possible to make it happen in c2. Or in c3.

    i know this made with unity and its hard to compete but the result is fantastic the normals the lights very polished and clear..hope one day we have the ability to achieve something like that.

    also i saw this

    where the lighting effects is great too..

    don't get me wrong but the normals and the lights/shadows in c2 i think is at a very beginning status so far and im still confusing to use them properly. Also as my first priority in a game is the artistic part (cause art is my hobby) i think that games with great implementation of lighting system boost a game really up.lighting in game is the alpha and omega so why not to have at least better choises?

    Ashley is it difficult to have lights (point lights, directional lights(with rotation capability like particles ) etc with fade out, different colours and shadows more realistic? I mean no cube-based shadows but with more details and lets say to have the option in the game to choose between levels of shadows quality low (cube shaped shadows, medium and higher (more complex, based in the sprites collision points). and another idea is some sprites to emit light based on the colision points too.like a hexagon to emit light from six diffrent directions..

  • spy84 , is this even possible with webGl technology..? And even if there are features that are not been utilized by the engine yet, this is probably due to compatibility issues. Ashley wants Construct to produce stuff that run on every platform on all modern devices. This is a huge area to cover and this promise, unfortunately, comes with many compromises.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • I'm not really clear what people are asking for - things like point lights are already supported (just use a radius of 0), and linking to a half-hour long video with loads of effects does not really make it clear what you're emphasising... and other effects like fade-out can be done with layer effects. You suggest making lights cast shadows from collision poylgon points too, and, erm, that's exactly what it does already. So I don't really know what you want that can't be done already?

  • Ashley is it possible to upload a tutorial how to make something to have the same results like the games in the videos i uploaded above?i think that lighting system is very basic so far. and a video of loads of effects propably is the way to ask if we could have such effects and if we already have it how to use it, so a tutorial maybe is vital. cause the topic has the title " a REAL dynamic light system" thats the reason i post something i want to achieve as a result and asked you before IF it is possible.

    it will be nice if we can have effects like these on SoundSphere with c2 and as you say its possible please give your advise

  • Ashley , what is been asked is for a unified "lighting" system that takes into account any light(s) position, color, intensity withing the layout, and reacts accordingly to both:

    a) Illuminating the scene (casting shadows, preferably with a falloff option)

    b) Responding to any normal maps.

    The lighting-shadowing system that exists in c2 now is problematic, having more than one light sources produces artifacts, it needs a lot of preperation just to achieve a simple falloff effect and it doesn't react at all with normal textures.

    The normal-bump effect within c2 is not useful for most situations.

    I hope the above make sense, I can't express my self more clearly that this, I'm sorry, we are hitting the language barrier here

  • Well, you can do quite well already with a few layer effects and techniques - here's an example with 2 moving lights casting shadows, each with fade-out: https://dl.dropboxusercontent.com/u/15217362/2waylight.capx

    It does become difficult though when the lights move further apart. Because they draw shadows instead of light, it's quite tricky if one light is casting a shadow over another. It's hard to make it brighten the shadow back to lightness.

    The best approach is to start with darkness, and then add lights on top, additively blending so they contribute light. This means later lights can light up areas that are in the shadow of other lights. It also makes colored lights easy. Then you can multiply-blend the resulting "lighting map" with the background, and it applies lighting to the game.

    I thought we'd need nested layers to do this, but no! It's also already possible: https://dl.dropboxusercontent.com/u/15217362/3waycoloredlights.capx

    The real trick is multiply is associative. It's hard to have your background and then have multiple lights on top of that, because it's difficult to render the lights together and then multiply blend the end result without nested layers. So - you can render all the lights first, and multiply the background on top of that! It works out the same because a x b is the same as b x a, so the ordering doesn't matter. So here the crux of the trick is you'll notice the background layer on top of all the lights.

    You're right, this would make a good tutorial

  • Well, you can do quite well already with a few layer effects and techniques - here's an example with 2 moving lights casting shadows, each with fade-out: https://dl.dropboxusercontent.com/u/15217362/2waylight.capx

    It does become difficult though when the lights move further apart. Because they draw shadows instead of light, it's quite tricky if one light is casting a shadow over another. It's hard to make it brighten the shadow back to lightness.

    The best approach is to start with darkness, and then add lights on top, additively blending so they contribute light. This means later lights can light up areas that are in the shadow of other lights. It also makes colored lights easy. Then you can multiply-blend the resulting "lighting map" with the background, and it applies lighting to the game.

    I thought we'd need nested layers to do this, but no! It's also already possible: https://dl.dropboxusercontent.com/u/15217362/3waycoloredlights.capx

    The real trick is multiply is associative. It's hard to have your background and then have multiple lights on top of that, because it's difficult to render the lights together and then multiply blend the end result without nested layers. So - you can render all the lights first, and multiply the background on top of that! It works out the same because a x b is the same as b x a, so the ordering doesn't matter. So here the crux of the trick is you'll notice the background layer on top of all the lights.

    You're right, this would make a good tutorial

    Links are not working ^^''

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