GUI and stereoscopic 3D

I'm trying to work on GUI for a stereoscopic 3d package(It includes 2 cameras, left and right and some scripts which divides the screen into two and each shows related camera view. The problem is GUI is rendered on the entire screen rather to be rendered on each camera. How can i tell each camera to render GUI separately in its own screen?

Thanks.

You can reference the actual pixel Rect of any camera with Camera.pixelRect. So to create a centered button of half the camera's dimensions in each camera, attach a script like this to each camera where you want the button to show:

    var myRect:Rect;
    void Start(){
        myRect=camera.pixelRect;
        myRect.x+=myRect.width/4;
        myRect.y+=myRect.height/4;
        myRect.width/=2;
        myRect.height/=2;
    }

    void OnGUI(){
        if(GUI.Button(myRect,"blub")){
            // do something
        }
    }

Another ppossibility would be to use the "older" GUIText/GUITexture objects instead of UnityGUI, which are always placed in a normalized coordinate system relative to each camera. However, I don't think you can selectively show such a object on only one camera, or even at different relative positions within these cameras. You can only switch all such objects on or off for a camera globally, by enabling/disabling the camera's GUILayer.