public TextureSceneViewPool(SceneViewController sceneViewController, String baseName, IntSize2 size)
 {
     pool = new LifecycleObjectPool <PooledSceneView>(createSceneViewWrapper, destroySceneViewWrapper);
     this.sceneViewController = sceneViewController;
     this.size     = size;
     this.baseName = baseName;
 }
 public SceneViewWindow(SceneViewController controller, CameraMover cameraMover, String name, BackgroundScene background, int zIndexStart)
 {
     this.zIndexStart      = zIndexStart;
     this.background       = background;
     this.controller       = controller;
     this.cameraMover      = cameraMover;
     this.name             = name;
     this.startPosition    = cameraMover.Translation;
     this.startLookAt      = cameraMover.LookAt;
     transparencyStateName = name;
     NearPlaneWorld        = 230;
     NearFarLength         = 450;
     MinNearDistance       = 1;
 }
示例#3
0
        public TextureSceneView(SceneViewController controller, CameraMover cameraMover, String name, BackgroundScene background, int zIndexStart, int width, int height)
            : base(controller, cameraMover, name, background, zIndexStart)
        {
            resourceLoader   = new ManualResourceLoader(this);
            this.TextureName = name;
            texture          = TextureManager.getInstance().createManual(name, MyGUIInterface.Instance.CommonResourceGroup.FullName, TextureType.TEX_TYPE_2D, (uint)width, (uint)height, 1, 0, ogreTextureFormat, TextureUsage.TU_RENDERTARGET, resourceLoader, false, 0);

            pixelBuffer          = texture.Value.getBuffer();
            renderTexture        = pixelBuffer.Value.getRenderTarget();
            this.RenderingEnded += TextureSceneView_RenderingEnded;

            rendererWindow       = new ManualWindow(renderTexture);
            this.RendererWindow  = rendererWindow;
            this.ClearEveryFrame = true;

            this.BackColor = new Engine.Color(0, 0, 0, 0);
        }
        public MDISceneViewWindow(RendererWindow rendererWindow, SceneViewController controller, CameraMover cameraMover, String name, BackgroundScene background, int zIndexStart)
            : base(controller, cameraMover, name, background, zIndexStart)
        {
            this.createBackground(((OgreWindow)PluginManager.Instance.RendererPlugin.PrimaryWindow).OgreRenderTarget, false);

            //MDI Window
            mdiWindow = new MDIDocumentWindow(Name);
            mdiWindow.AllowedDockLocations = DockLocation.Center;
            mdiWindow.SuppressLayout       = true;
            mdiWindow.Content              = this;
            mdiWindow.SuppressLayout       = false;
            mdiWindow.Caption              = Name;
            mdiWindow.Closed              += new EventHandler(mdiWindow_Closed);
            mdiWindow.ActiveStatusChanged += new EventHandler(mdiWindow_ActiveStatusChanged);

            PrimaryActionSelect.FirstFrameDownEvent   += selectEvent;
            SecondaryActionSelect.FirstFrameDownEvent += selectEvent;

            this.RendererWindow = rendererWindow;
        }
示例#5
0
        internal CameraInputController(SceneViewController sceneViewController, EventManager eventManager)
        {
            this.sceneViewController = sceneViewController;
            this.eventManager        = eventManager;
            eventManager[GuiFrameworkCamerasInterface.MoveCameraEventLayer].OnUpdate += processInputEvents;

            mouseWheelTimer           = new Timer(UPDATE_DELAY);
            mouseWheelTimer.AutoReset = false;
            mouseWheelTimer.Elapsed  += mouseWheelTimer_Elapsed;

            MoveCamera.FirstFrameDownEvent += rotateCamera_FirstFrameDownEvent;
            MoveCamera.FirstFrameUpEvent   += rotateCamera_FirstFrameUpEvent;

            TogglePanMode.FirstFrameDownEvent  += togglePanMode_FirstFrameDownEvent;
            TogglePanMode.FirstFrameUpEvent    += togglePanMode_FirstFrameUpEvent;
            ToggleZoomMode.FirstFrameDownEvent += toggleZoomMode_FirstFrameDownEvent;
            ToggleZoomMode.FirstFrameUpEvent   += toggleZoomMode_FirstFrameUpEvent;

            if (zoomGesture != null)
            {
                zoomGesture.GestureStarted  += zoomGesture_GestureStarted;
                zoomGesture.Zoom            += ZoomGesture_Zoom;
                zoomGesture.MomentumStarted += zoomGesture_MomentumStarted;
                zoomGesture.MomentumEnded   += zoomGesture_MomentumEnded;

                rotateGesture.GestureStarted  += rotateGesture_GestureStarted;
                rotateGesture.Dragged         += rotateGesture_Dragged;
                rotateGesture.MomentumStarted += rotateGesture_MomentumStarted;
                rotateGesture.MomentumEnded   += rotateGesture_MomentumEnded;

                panGesture.GestureStarted  += panGesture_GestureStarted;
                panGesture.Dragged         += panGesture_Dragged;
                panGesture.MomentumStarted += panGesture_MomentumStarted;
                panGesture.MomentumEnded   += panGesture_MomentumEnded;
            }
        }
示例#6
0
 public SceneStatsDisplayManager(SceneViewController sceneViewController, RenderTarget displayStatsTarget)
 {
     this.displayStatsTarget            = displayStatsTarget;
     sceneViewController.WindowCreated += sceneViewController_WindowCreated;
 }
        public SingleViewCloneWindow(NativeOSWindow parentWindow, WindowInfo windowInfo, SceneViewController controller, CameraMover cameraMover, String name, BackgroundScene background, int zIndexStart, bool floatOnParent)
            : base(controller, cameraMover, name, background, zIndexStart)
        {
            IntVector2 location = SystemInfo.getDisplayLocation(windowInfo.MonitorIndex);

            location.y          = -1;
            osWindow            = new NativeOSWindow(parentWindow, "Clone Window", location, new IntSize2(windowInfo.Width, windowInfo.Height), floatOnParent);
            this.rendererWindow = (OgreWindow)OgreInterface.Instance.createRendererWindow(new WindowInfo(osWindow, "CloneWindow"));
            this.createBackground(rendererWindow.OgreRenderTarget, true);
            this.RendererWindow = rendererWindow;
            osWindow.show();
            osWindow.Closed += osWindow_Closed;

            transparencyStateName           = controller.ActiveWindow.CurrentTransparencyState;
            controller.ActiveWindowChanged += controller_ActiveWindowChanged;
        }
示例#8
0
 public CloneCamera(SceneViewController sceneViewController, UpdateTimer timer)
 {
     this.sceneViewController = sceneViewController;
     this.timer = timer;
     timer.addUpdateListener(this);
 }