, Jr. Member
we can get into it, but it’s a little bit of a chore to use and might not even be a factor given the way you’re doing things. it’s hard for me to tell here though bcs you’re also directly editing the transform of the proxy between views, which may have it’s own effect entirely in terms of displaying what was previously written to the stage in another area. i couldn’t really be sure without playing with the code directly.
try this: in addition to the code you’re currently using to render either side correctly, try setting the scissor rectangle property on stage3dproxy or context3d between view renders, as it might have the same effect you’re looking for as the stencil buffer in this instance. basically you’re just restricting which pixels get written to. it may be that rendering the stage again is overwriting the information rendered with the previous view, even though it’s in a different area you wouldn’t expect to get rendered.
i think the last time you tried the scissor rectangle, it was technically sort of working, just that each half was rendering with a filter centered at the center of the stage rather than the views, but now that you are resizing and positioning the proxy, something entirely different is going on.
Another thing to try: it could be that when you reposition the proxy, you are also just moving all the pixels you just rendered to the other side, and then writing over them with the second view. if that is the case, then you can’t accomplish anything by moving the x property. however you may be able to creatively resize it to re-center the fish-eye, depending on if the filter changes with proportions and stretches or maintains a square-ish aspect ratio. after rendering the first view with the proxy at .5 width, change the proxy to 1.5 width and set the scissor rect render from .5-1 width, thereby centering the filter at .75 width as desired.
And yet another method entirely: if all else fails, i suspect that you may be able to get away with rendering each view to a texture using a proxy at .5 width, and then resize the proxy to full and render a 3rd orthographic view of two planes displaying the textures. it’s kind of a gross workaround and i’ve never really played with render textures, but i think it theoretically would work as intended. as i understand it, that’s sort of how reflections are rendered.
i expect that somewhere between those techniques lies your solution, hopefully at least. let me know how it works out, and if the results are weird screen-cap those too. if none of that works i may just be inclined to compile some version of this myself just to tinker with and find out exactly what is happening.