Help Creating materials that change depending on their background

So, this is a bit of a weird question, but I am asking for some help creating materials that change depending on their background, similar to the text in this music video, specifically the material near the start that is a negative of its background:

any help?

render two passes, one with the background and the other with the text, and in the composition, use the text as a mask for any effects you want to apply.

How do I do that? I’m a bit of a noob.


place your text in a different layer from the rest of the scene, create two render layers, one for the scene with the layer with the text excluded, and the other with just the text.
On the passes for the text, you may want to include the normal pass, and any that can be usefull for the composition.
In the compositor (node editor), add the two render layers and play with nodes.
Depending from the kind of effect you want to get, you may need different configurations, so I leave it up to you.

further reading:

I’m using cycles, any different?

No difference! Cycles was created with this same workflow in mind.
Only ligthning and shading will differ, but even so, you can use both engines one for each pass.