'been wondering…

What’s the rationale for the existence of a canvas_parent node between the PGVirtualFrame node and the canvas node? Why couldn’t the canvas node be directly under the PGVirtualFrame node?

The canvas_parent provides a place to assign the ScissorEffect, which is what clips the canvas to the visible portal.