         @context.canvas_screen.enabled = false
         for behaviour in @context.enabled_behaviours
             behaviour.on_enter_vr? left_cam, right_cam
+        {position, width, height, left, top} = @canvas.style
+        @old_canvas_style = {position, width, height, left, top}
+        if @canvas.style.width == '100vw' and @canvas.style.height == '100vh'
+            @set_mirror_zoom 1.3
+
+    set_mirror_zoom: (zoom) ->
+        {renderWidth, renderHeight} = @HMD.getEyeParameters("left")
+        ratio = renderWidth/renderHeight
+        @canvas.style.position = 'fixed'
+        @canvas.style.width = 200*zoom+'vw'
+        @canvas.style.height = (100*zoom/ratio) + 'vw'
+        @canvas.style.left = "#{-50*zoom+50}vw"
+        @canvas.style.top = "calc( -#{50*zoom}vw + #{50*ratio}vh )"
 
     destroy: ->
+        {position, width, height, left, top} = @old_canvas_style
+        @canvas.style.position = position
+        @canvas.style.width = width
+        @canvas.style.height = height
+        @canvas.style.left = left
+        @canvas.style.top = top
         @context.vr_screen = null
         @context.screens.splice @context.screens.indexOf(this), 1
         @context.canvas_screen.resize_to_canvas()

            behaviour.on_exit_vr?()
        return

    exit: -> @destroy()

    pre_draw: ->
        {HMD} = this

            mat4.copyArray @sst, @HMD.stageParameters.sittingToStandingTransform
            mat4.invert @sst_inverse, @sst
            mat3.fromMat4 @sst3, @sst
        @head_is_tracking = false
        # @to_Z_up = mat4.new 1,0,0,0, 0,0,1,0, 0,-1,0,0, 0,0,0,1
        # left eye viewport
        camera = left_cam = @scene.active_camera.clone()
