Example #1
0
        public void SetCameraMode(EditorCameraMode md)
        {
            m_mode = md;
            switch (md)
            {
            case EditorCameraMode.Perspective:
                m_cameraCtrl = new NPerspectiveCameraController();
                break;

            case EditorCameraMode.Top:
            {
                NOrthoCameraController cameraCtrl = new NOrthoCameraController();
                cameraCtrl.SetOrientation('Y');
                m_cameraCtrl = cameraCtrl;
            }
            break;

            case EditorCameraMode.Front:
            {
                NOrthoCameraController cameraCtrl = new NOrthoCameraController();
                cameraCtrl.SetOrientation('Z');
                m_cameraCtrl = cameraCtrl;
            }
            break;

            case EditorCameraMode.Side:
            {
                NOrthoCameraController cameraCtrl = new NOrthoCameraController();
                cameraCtrl.SetOrientation('X');
                m_cameraCtrl = cameraCtrl;
            }
            break;
            }
        }
Example #2
0
        public NEViewport()
        {
            m_view = new NViewport();
            int w = NEditorEngine.Instance().Config.ClientWidth;
            int h = NEditorEngine.Instance().Config.ClientHeight;

            m_minCameraSight = 500;
            m_maxCameraSight = 300000;
            m_Sight          = 0.25f;
            m_cameraSight    = m_minCameraSight * (1 - m_Sight * m_Sight) + m_maxCameraSight * (m_Sight * m_Sight);
            m_view.Camera.SetPerspective(MathConst.PI / 4, w, h, 1.0f, m_cameraSight);
            m_cameraCtrl = new NPerspectiveCameraController();
            InitializeComponent();
            this.Dock = DockStyle.Fill;
            this.SetStyle(ControlStyles.AllPaintingInWmPaint | ControlStyles.UserPaint, true);

            m_view.HandleWnd  = this.Handle;
            m_view.RenderMode = ERenderMode.Unlit;
            this.NEViewPort_SizeChanged(this, null); // set view pos/size

            NEWidgetsRender widgets = CreateWidgetsRender();

            m_view.WidgetsRender = widgets;
            widgets.AddViewport(this);

            //-- context menu
            m_menu = new ContextMenuStrip();
            ToolStripMenuItem viewMenu = new ToolStripMenuItem("Render mode");

            foreach (ERenderMode rm in Enum.GetValues(typeof(ERenderMode)))
            {
                ToolStripItem item = viewMenu.DropDownItems.Add(rm.ToString());
                item.Click += new EventHandler(this.OnMenuClickRenderMode);
            }
            m_menu.Items.Add(viewMenu);

            ToolStripItem cameraItem = m_menu.Items.Add("Reset camera");

            //--
            m_mainTimer = new NGameTimer();
            m_mainTimer.Reset();
        }
 /// <summary>
 /// 绑定Camera Controller对象
 /// </summary>
 public void SetCameraCtrl(NEditorCameraController cameraCtrl)
 {
     this.propertyGrid.SelectedObject = cameraCtrl;
 }