コード例 #1
0
ファイル: Scene_Shapes2.cs プロジェクト: dreamsxin/engine-1
        public override void Start()
        {
            this.Configuration.BackgroundColour = Rgba32.LightSlateGrey;

            CommonDemoResources.Create (Platform, Engine);

            returnScene = this;

            // create a sprite
            var billboard = new BillboardPrimitive(this.Platform.Graphics);

            billboardGo = this.SceneGraph.CreateSceneObject("billboard");

            var mr = billboardGo.AddTrait<MeshRendererTrait>();
            mr.Mesh = billboard.Mesh;
            mr.Material = new Material("Default", CommonDemoResources.UnlitShader);
            mr.Material.SetColour("MaterialColour", RandomGenerator.Default.GetRandomColour());

            target = billboardGo.Transform;

            markerGo = this.SceneGraph.CreateSceneObject ("marker");

            markerGo.Transform.LocalScale = new Vector3 (0.05f, 0.05f, 0.05f);

            var markerMR = markerGo.AddTrait<MeshRendererTrait> ();
            markerMR.Mesh = new CubePrimitive(this.Platform.Graphics).Mesh;
            markerMR.Material = new Material("Default", CommonDemoResources.UnlitShader);
            markerMR.Material.SetColour("MaterialColour", Rgba32.Red);

            cam = this.CameraManager.GetRenderPassCamera ("Default");

            this.SceneGraph.DestroySceneObject(this.CameraManager.GetRenderPassCamera ("Debug"));
            this.SceneGraph.DestroySceneObject(this.CameraManager.GetRenderPassCamera ("Gui"));

            this.RuntimeConfiguration.SetRenderPassCameraTo ("Debug", cam);
            cam.Transform.Position = new Vector3(2, 1, 5);
            cam.RemoveTrait<OrbitAroundSubjectTrait> ();

            las = cam.GetTrait<LookAtSubjectTrait> ();
            las.Subject = billboardGo.Transform;

            this.Engine.InputEventSystem.Tap += this.OnTap;
        }
コード例 #2
0
ファイル: Demo.cs プロジェクト: dreamsxin/engine-1
        public static List<Entity> Generate(Scene scene)
        {
            var objects = new List<Entity>();
            var cubeModel = new CubePrimitive(scene.Platform.Graphics);
            var billboardModel = new BillboardPrimitive(scene.Platform.Graphics);
            var teapotModel = new TeapotPrimitive(scene.Platform.Graphics);
            var cylinderModel = new CylinderPrimitive(scene.Platform.Graphics);
            var sphereModel = new SpherePrimitive(scene.Platform.Graphics);
            var torusModel = new TorusPrimitive(scene.Platform.Graphics);

            objects.Add(CreateShapeGO(scene, "Default", cubeModel.Mesh, 2));
            objects.Add(CreateShapeGO(scene, "Default", billboardModel.Mesh));
            objects.Add(CreateShapeGO(scene, "Default", teapotModel.Mesh, 1));
            objects.Add(CreateShapeGO(scene, "Default", cylinderModel.Mesh));
            objects.Add(CreateShapeGO(scene, "Default", sphereModel.Mesh));
            objects.Add(CreateShapeGO(scene, "Default", torusModel.Mesh, 1));
            objects.Add(CreateShapeGO(scene, "Default", torusModel.Mesh, 2));
            objects.Add(CreateShapeGO(scene, "Default", torusModel.Mesh, 0));
            return objects;
        }