コード例 #1
0
        protected static void CreateScene()
        {
            m_SceneManager = mRoot.CreateSceneManager(SceneType.ST_GENERIC);

            m_Camera = m_SceneManager.CreateCamera("myCamera1");
            m_Camera.ProjectionType = ProjectionType.PT_ORTHOGRAPHIC;
            m_Camera.SetPosition(-1, 2000, 0);
            m_Camera.NearClipDistance = 5;
            m_Camera.FarClipDistance  = 2501;
            m_Camera.LookAt(Vector3.ZERO);

            Viewport viewport = mRenderWindow.AddViewport(m_Camera);

            viewport.BackgroundColour = ColourValue.Black;
            m_Camera.AspectRatio      = viewport.ActualWidth / viewport.ActualHeight;


            var context  = ZmqContext.Create();
            var receiver = new MessageReceiver(context);

            receiver.Listen();
            m_Bus = new MessageBus(new MessageSender(context), receiver);

            var creator = new ShapeCreator(m_SceneManager);

            creator.CreateUnitTrianlge();
            creator.CreateStar();

            //m_Object = new GameObject(m_SceneManager);
            //m_Path = new Path(4, new CircularMotion(0, 50, new Angle(0), new Angle(Math.PI / 10), 20, Vector.Zero), m_Bus);
            //m_Circle = path.CreatePathTo(new Vector2(100, -100), new Vector2(0, 10), Vector2.ZERO);
            //m_Circle = new CircularMotion(0, 50, new Angle(0), new Angle(Math.PI/2),2);
            m_Linear = new LinearMotion(0, new Vector(10, 0), Vector.Zero);

            m_SceneManager.AmbientLight = new ColourValue(1, 1, 1);

            mNinjaEntity = m_SceneManager.CreateEntity("Ninja", "triangle");

            mNinjaNode = m_SceneManager.RootSceneNode.CreateChildSceneNode("NinjaNode");
            mNinjaNode.AttachObject(mNinjaEntity);
            mNinjaNode.SetPosition(500, 0, -500);

            m_ClickStar = m_SceneManager.CreateEntity("Star", "star");
            m_ClickNode = m_SceneManager.RootSceneNode.CreateChildSceneNode("ClickNode");
            m_ClickNode.AttachObject(m_ClickStar);

            mLight                = m_SceneManager.CreateLight("pointLight");
            mLight.Type           = Light.LightTypes.LT_POINT;
            mLight.Position       = new Vector3(250, 150, 250);
            mLight.DiffuseColour  = ColourValue.White;
            mLight.SpecularColour = ColourValue.White;
        }