Page 1 of 1

Lighting

Posted: April 9th, 2017, 4:31 am
by Norbert
I was thinking it would be cool if lighting would be more modern (example; mirror). I very briefly looked into it for SDL, but it's too complicated. If I'm not mistaken, it would require rendering the entire scene to a texture (*), then pixel manipulation (*,*) to add a black layer of 50% opacity, excluding 200px circles around flames. If each scene only had 1 flame, I could've probably pulled it off by using a large, partially transparent, image. Of course, the 'real' way to do it would be a 2.5D side-scrolling remake in a modern game engine. Then adding the light sources would be relatively easy. Actually, that would be Prince of Persia Classic then, I guess.

Re: Various

Posted: April 9th, 2017, 5:27 pm
by David
Norbert wrote:I was thinking it would be cool if lighting would be more modern (example; mirror).
Here is my attempt on a separate branch: https://github.com/NagyD/SDLPoP/commit/ ... 2e72e9cfd8
I did not use per-pixel manipulation, only an image of a circle, and clever use of blend modes.

BTW, the Genesis version has something similar, but it's only a background: https://www.popot.org/level_editors/ima ... p-0.7b.png

Also, I have seen a few 2D games that do lighting, like SuperTux, or ZZT in dark rooms.

Re: Various

Posted: April 9th, 2017, 5:31 pm
by Norbert
David wrote:
Norbert wrote:I was thinking it would be cool if lighting would be more modern (example; mirror).
Here is my attempt [...]
Very cool! :D

[Edit: Suggestion, maybe if a room has no torches at all, make everything even darker. Or maybe the number of torches could determine how dark the room is? Either way, I really like this. This should totally make it into the main branch (as an option)...]

Re: Lighting

Posted: April 15th, 2017, 9:28 am
by David
Moved posts to a new topic.

Re: Lighting

Posted: April 30th, 2017, 9:26 am
by David

Re: Various

Posted: May 7th, 2017, 9:59 am
by David
Norbert wrote:This should totally make it into the main branch (as an option)...
I merged this into the master branch: https://github.com/NagyD/SDLPoP/commit/ ... 76356aa79c

Re: Lighting

Posted: September 12th, 2017, 8:57 pm
by Falcury
Suggestion: maybe we could use a noise function (e.g., 2D Perlin noise) to generate a couple of animation frames with varying amounts of darkening, in order to simulate a flickering effect. The radius of the effect would then probably have to be a bit bigger, and the intensity would have to smoothly decrease with distance to the torch.