Forum

Change pixels of source texture permanently

Hello Folks,

i’am trying to affect one texture by a 2nd. So basically the 2nd Texture (Camera Image) should change the color of the pixels of the source image/texture. This effect should be permanent and not only temporary as it would be when blending those two textures together.
So in the end the source image/texture should have “traces” of the camera image.

Has somebody an idea how to achieve this effect, or is my explanation completly unclear :)?

Cheers
d0t

https://discourse.vvvv.org/t/12226
i’ve would look in to this, but if u wanna change pixels permanently, you can also disable clear on render pin, and use some kind of luma keyer to get only bright pixels, and stroe them in ur renderer

Hey antokhio,

thanks for the answer. The problem with the clear Renderer pin is, that it doesn’t work with VideoIn as i understand it.
The Echo effect is more like a motion blur and will affect the source image also only in real time.
My idea was to more or less to affect the pixels of the source image permanently. So the camera image for instance should affect the pixels of the source image permanently. Like a watermark But over time the whole image would be affected and in the end the source image has traces of that camera image everywhere…

I was just thinking, if there is a way to write directly to the pixels of the source image in memory.

Something like:

read out pixels of source image;
Check where pixels of camera image == white;
at those positions add small value to red and blue of source image pixel.

Cheers
d0t

Hi, @antokhio is right, imo. If you look inside Echo, you’ll see how the texture is fed back in loop.
You basically should, imo, try to stop the constant change of the texture inside Echo.
I also think you could try (though performance wise I fear it is not so cheap) AsRaw (EX9.Texture) and S+H (Raw) to keep A as it has just been modified, and AsTexture (Raw) to feed it back to Renderer, but then again there’s for sure a better solution than AsRaw et cetera.

hey :]

Check where pixels of camera image == white;
at those positions add small value to red and blue of source image pixel.

this statement kinda wierd since if the pixel white means it has 1 on RGB so there is nowhere to add color from source… anyways here u go njoy porting this to dx9

d0t.rar (4.6 kB)