I am trying to figure out how cameras and nodes respond to each other and it is still unclear to me.
I don't know if this is the expected result or not, but as this seems strange and not-intuitive to me I thought it worth posting to ask.
For the jedis able to solve it mentally without even opening the patch, I'll try to explain here.
Otherwise, just copy/paste the patcher below.
The patch consists in a node "B" with 2 subnodes "C and D" attached to it, each containing a gridshape.
A(render) => B(node) =>C(node containing red shape)
=>D(node containing green shape)
I also have a camera @capture 1.
Now, I want to switch between drawto's on the camera.
If I drawto A or B, I get both shapes displayed in the texture output by the camera, with the viewing transform of node B/C/D.
And that is fine.
Now if I drawto C :
1) node D go its own way thru B to the render, therefore is displayed in the window, which is OK.
2) rasterization of node C is intercepted by the camera which is ok, but the red plane is also undergoing the viewing transform from B.
I would have expected than the camera capture the red plane, but only with the viewing transforms of node C,
as this would kind of reproduce what happens if I set the gridshapes context to A (aka the main render) : the gridshape does *not* undergo the viewing transform.
Maybe there are good reason for that, but I fail to understand it so far.
BTW, there is also an initialization bug mentionned in the patch.