Welcome, Guest. Please login or register. Did you miss your activation email?

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - WeezoMaster

Pages: [1]
1
Graphics / Working with shaders with multiple views and renderTexture
« on: September 22, 2019, 07:04:29 pm »
Hello everyone,

It's the first time I post on this forum, and as my problem is about shaders, I think I'm posting under the good section ^^.

I'm working on a game engine since the last two years and recently wanted to play with shaders.
I wanted to recreate the effect of heat distorsion and find this tutorial here:  https://github.com/SFML/SFML/wiki/Source:-HeatHazeShader

Everything seems to work, except when my player moves.

To be more precise, my tilemaps layers and sprites are rendered on a renderTexture.
Also, I've created two sf::views, one which follows the player by setting the centerPosition to
its coordinates. The renderWindow draws the resulting sprite with the shader on the second view. With this combination I can follow the player all over the map by having just a renderTexture of the size of the window (1280*720).

However, I noticed that by moving the player, the distortion was "above" the rendering.
I would have preferred the distortion to be "fixed" when the player moves.

I created a small, clean project available here: https://github.com/WeezoMaster/sfml_shader_distorsion
I modified the original shader to freeze the distortion. The ultimate goal would be to move the player and make the distortion "scroll" also.

I don't know if the problem comes from my code or if I have to modify the shader.
I hope I have been clear enough. I have been working on it for several days without having had a satisfactory solution.

Thank you in advance!

Pages: [1]