So lets say I have on level that is “dark world” that is not visible…and one that is Light world that is currently visible…I would like to be able to have my character “emit a mask portal” so that he’s able to transition between seeing the dark world and light world through that mask.
Similar how Dishonored 2 does it - except for more apparent - like 2 levels stacked on top of each other but only rendering one at a time - and transitioning between them through masks
there are a few ways to do this.
All of them have some + and -, but anyway, all of them are difficult.
Basically, you will always have two cameras - 1st is player camera, and 2nd is some scene capture which copy player camera moves and renders to that crystal material by screen aligned coordinates.
Easy way is 2 levels on some fixed distance one from another. with this way it is easy to handle light rendering and physics.
Hard way is to have 2 levels in one place and render them using some render layers, render groups, or maybe stencil buffers.