protected override void OnInit(object sender, EventArgs e) { Camera.LookAt(Vector3.Zero, new Vector3(0, 0, -10f)); Box box = new Box(1, 1, 1); Sphere sphere = new Sphere(1, 16); Arrow arrow = new Arrow(1, 1, 3, 0.5f) { PositionV3 = new Vector3(-2.5f, 0, 0) }; AvengersUtd.Odyssey.Graphics.Meshes.BoundingBox bbox = new AvengersUtd.Odyssey.Graphics.Meshes.BoundingBox(4); sphere.PositionV3= new Vector3(0f, 3f, 0); RenderableNode rNodeBox = new RenderableNode(box) { Label = "RBox" }; RenderableNode rNodeSPhere = new RenderableNode(sphere); RenderableNode rNodeBBox = new RenderableNode(bbox); FixedNode fNodeGrid = new FixedNode { Label = "fGrid", Position = Vector3.Zero }; CameraAnchorNode coNode = new CameraAnchorNode(); Scene.Tree.RootNode.AppendChild(fNodeGrid); Scene.Tree.RootNode.AppendChild(coNode); fNodeGrid.AppendChild(rNodeSPhere); fNodeGrid.AppendChildren(arrow.ToNodes()); fNodeGrid.AppendChildren(bbox.ToNodes()); DeviceContext.Immediate.InputAssembler.PrimitiveTopology = PrimitiveTopology.TriangleList; Hud = Hud.FromDescription(Game.Context.Device, new HudDescription( width: Game.Context.Settings.ScreenWidth, height: Game.Context.Settings.ScreenHeight, zNear: Game.CurrentRenderer.Camera.NearClip, zFar: Game.CurrentRenderer.Camera.FarClip, cameraEnabled: true, multithreaded: true )); OdysseyUI.CurrentHud = Hud; Game.Logger.Init(); Hud.BeginDesign(); Game.Logger.Log("Prova1"); Game.Logger.Log("Prova2"); Game.Logger.Log("Prova3"); Game.Logger.Log("Prova4"); Game.Logger.Log("Prova5"); Button bConnect = new Button() { Size = new System.Drawing.Size(120, 30), //Content = "Start", Position = new Vector2(1800, 0) }; Button bTracking = new Button() { Size = new System.Drawing.Size(120, 30), //Content = "Start", Position = new Vector2(1800, 40) }; //bConnect.MouseClick += (sender, e) => { tracker.Connect(); }; //bTracking.MouseClick += (sender, e) => { tracker.StartTracking(); }; //TouchRayPanel rp = new TouchRayPanel { Size = Hud.Size, Camera = this.Camera }; //Hud.Add(rp); //rp.Add(bConnect); //rp.Add(bTracking); //rp.SetTracker(tracker); Game.Logger.Activate(); Hud.Init(); Hud.EndDesign(); //Scene.BuildRenderScene(); //Hud.AddToScene(this, Scene); IsInited = true; //tracker.StartBrowsing(); }
public override void Init() { clock = new Timer() { Interval = 1000 }; stopwatch = new Stopwatch(); clock.Elapsed += delegate { lCountDown.Content = (--countdown).ToString(); if (countdown == 0) { BoxRenderer boxR = new BoxRenderer(Game.Context); Global.Window.Dispatcher.BeginInvoke(new Action(delegate { Game.ChangeRenderer(boxR);boxR.StartNew(); })); clock.Stop(); } }; //Camera.LookAt(new Vector3(3,0f, 3), new Vector3(-6.5f, 5.55f, -6.5f)); int[] condition = conditions[Test.BoxIndex % conditions.Count]; bool[] arrowCondition = arrowConditions[condition[1]]; boxSize = new float[] { arrowCondition[0] ? 1.5f : 4.5f, arrowCondition[1] ? 1.5f : 4.5f, arrowCondition[2] ? 1.5f : 4.5f }; box = new Box(1, 1, 1); box.ScalingValues = new Vector3(boxSize[0], boxSize[1], boxSize[2]); sWidget = new ScalingWidget(box); RenderableNode rNodeBox = new RenderableNode(box) { Label = "RBox" }; float[] axis = axes[condition[2]]; FixedNode fNodeFrame = new FixedNode { Label = "fGrid", Position = Vector3.Zero, Rotation = Quaternion.RotationYawPitchRoll(MathHelper.DegreesToRadians(axis[0]), MathHelper.DegreesToRadians(axis[1]), MathHelper.DegreesToRadians(axis[2])) }; fNodeBox = new FixedNode { Label = "fBox", }; NewSession(); CameraAnchorNode coNode = new CameraAnchorNode(); Scene.Tree.RootNode.AppendChild(fNodeFrame); Scene.Tree.RootNode.AppendChild(coNode); fNodeBox.AppendChild(rNodeBox); fNodeFrame.AppendChild(bbox.ToBranch()); fNodeFrame.AppendChild(fNodeBox); FixedNode nWidget = sWidget.ToBranch(); fNodeBox.AppendChild(nWidget); DeviceContext.Immediate.InputAssembler.PrimitiveTopology = PrimitiveTopology.TriangleList; Hud = Hud.FromDescription(Game.Context.Device, new HudDescription( width: Game.Context.Settings.ScreenWidth, height: Game.Context.Settings.ScreenHeight, zNear: Game.CurrentRenderer.Camera.NearClip, zFar: Game.CurrentRenderer.Camera.FarClip, cameraEnabled: true, multithreaded: true )); OdysseyUI.CurrentHud = Hud; Hud.BeginDesign(); bNew = new Button() { Size = new System.Drawing.Size(120, 60), Content = "New Session", Position = new Vector2(1760, 0) }; Button bSession = new Button() { Size = new System.Drawing.Size(120, 30), Content = "Next", Position = new Vector2(1760, 40) }; bSession.MouseClick += (sender, e) => { //Test.BoxIndex++; Test.Count= (Test.Count + 1) % conditions.Count; BoxRenderer boxR = new BoxRenderer(Game.Context); Global.Window.Dispatcher.BeginInvoke(new Action(delegate { Game.ChangeRenderer(boxR); boxR.StartNew(); })); }; Button bStop = new Button { Size = new System.Drawing.Size(120, 60), Content = "Stop", Position = new Vector2(0, 1020) }; bStop.TouchUp += (sender, e) => { stopwatch.Stop(); Stop(new BoxEventArgs(startTime,DateTime.Now, true)); }; lCountDown = new Label() { Content = "3", Position = new Vector2(800, 300), IsVisible = false, TextDescriptionClass = "Huge" }; rp = new TouchRayPanel { Size = Hud.Size, };//Camera = this.Camera }; rp.SetScalingWidget(sWidget); rp.SetBox(box); rp.SetFrame((IBox)bbox); rp.SetArrowConditions(arrowCondition); rp.SetAxis(axis); Hud.Add(rp); //rp.Add(bSession); //rp.Add(bConnect); //rp.Add(bTracking); // rp.Add(bStop); rp.Add(bNew); rp.Completed += (sender, e) => ((BoxRenderer)Game.CurrentRenderer).Stop(e); bNew.MouseUp += delegate { if (startingNewSession) return; startingNewSession = true; Hud.BeginDesign(); lCountDown.IsVisible = true; Hud.Controls.Add(lCountDown); Hud.EndDesign(); clock.Start(); }; Hud.Init(); Hud.EndDesign(); Scene.BuildRenderScene(); Hud.AddToScene(this, Scene); IsInited = true; }
public override void Init() { Camera.LookAt(Vector3.Zero, new Vector3(0, 5, -10f)); Sphere lightSphere = Primitive.CreateSphere(1f, 8); lightSphere.Name = "LightSphere"; lightSphere.SetBehaviour(new MouseDraggingBehaviour(Camera)); Odyssey.Graphics.Meshes.BoundingBox box = AvengersUtd.Odyssey.Graphics.Meshes.BoundingBox.FromSphere(lightSphere); Odyssey.Graphics.Meshes.Grid grid = new AvengersUtd.Odyssey.Graphics.Meshes.Grid(50, 50, 8, 8); Sphere sphere = Primitive.CreateSphere(6f, 10); sphere.Name = "BigSphere"; //sphere.DiffuseColor = new Color4(1.0f, 0.867f,0.737f,1.0f); sphere.PositionV3 = new Vector3(0f, 0, 20f); RenderableNode rNodeSphere = new RenderableNode(sphere); RenderableNode rNodeLightSphere = new RenderableNode(lightSphere); RenderableNode rNodeBox = new RenderableNode(box); //RenderableNode rNodeSky = new RenderableNode(skybox); RenderableNode rNodeGrid = new RenderableNode(grid); FixedNode fNodeSphere = new FixedNode { Position = new Vector3(5, 0, -5) }; FixedNode fNodeGrid = new FixedNode {Label = "fGrid", Position = grid.PositionV3 }; //Box box2 = new Box(new Vector3(0.25f, 0.25f, 0.25f), 1, 1, 1); Box box2 = new Box(1, 1, 1); box.PositionV3 = new Vector3(0, 5, 0); RenderableNode rNodeBox2 = new RenderableNode(box2) { Label="RBox"}; CameraAnchorNode coNode = new CameraAnchorNode(); Scene.Tree.RootNode.AppendChild(fNodeSphere); Scene.Tree.RootNode.AppendChild(fNodeGrid); Scene.Tree.RootNode.AppendChild(coNode); fNodeSphere.AppendChild(rNodeSphere); fNodeSphere.AppendChild(rNodeLightSphere); fNodeSphere.AppendChild(rNodeBox); fNodeGrid.AppendChild(rNodeGrid); fNodeGrid.AppendChild(rNodeBox2); DeviceContext.Immediate.InputAssembler.PrimitiveTopology = PrimitiveTopology.TriangleList; Hud = Hud.FromDescription(Game.Context.Device, new HudDescription( width: Game.Context.Settings.ScreenWidth, height: Game.Context.Settings.ScreenHeight, zNear: Game.CurrentRenderer.Camera.NearClip, zFar: Game.CurrentRenderer.Camera.FarClip, cameraEnabled: true, multithreaded: true )); OdysseyUI.CurrentHud = Hud; Game.Logger.Init(); Hud.BeginDesign(); Game.Logger.Log("Prova1"); Game.Logger.Log("Prova2"); Game.Logger.Log("Prova3"); Game.Logger.Log("Prova4"); Game.Logger.Log("Prova5"); Button bConnect = new Button() { Size = new System.Drawing.Size(120, 30), //Content = "Start", Position = new Vector2(1800, 0) }; Button bTracking = new Button() { Size = new System.Drawing.Size(120, 30), //Content = "Start", Position = new Vector2(1800, 40) }; bConnect.MouseClick += (sender, e) => { tracker.Connect(); }; bTracking.MouseClick += (sender, e) => { tracker.StartTracking(); }; TouchRayPanel rp = new TouchRayPanel { Size = Hud.Size, Camera = this.Camera }; Hud.Add(rp); rp.Add(bConnect); rp.Add(bTracking); rp.SetTracker(tracker); Game.Logger.Activate(); Hud.Init(); Hud.EndDesign(); Scene.BuildRenderScene(); Hud.AddToScene(this, Scene); IsInited = true; tracker.StartBrowsing(); //EyeTrackerServer server = new Odyssey.Network.EyeTrackerServer(); //server.Start(); }
protected override void OnInit(object sender, EventArgs e) { //AvengersUtd.Odyssey.Text.TextManager.DrawText("prova"); Camera.LookAt(Vector3.Zero, new Vector3(0,5,-10f)); Box box = new Box(1, 1, 1); Sphere sphere = new Sphere(1, 16); Arrow arrow = new Arrow(1, 1, 3, 0.5f) { PositionV3 = new Vector3(-2.5f, 0, 0) }; AvengersUtd.Odyssey.Graphics.Meshes.BoundingBox bbox = new AvengersUtd.Odyssey.Graphics.Meshes.BoundingBox(4); sphere.PositionV3 = new Vector3(0f, 3f, 0); RenderableNode rNodeBox = new RenderableNode(box) { Label = "RBox" }; RenderableNode rNodeSPhere = new RenderableNode(sphere); RenderableNode rNodeBBox = new RenderableNode(bbox); FixedNode fNodeGrid = new FixedNode { Label = "fGrid", Position = Vector3.Zero }; CameraAnchorNode coNode = new CameraAnchorNode(); Scene.Tree.RootNode.AppendChild(fNodeGrid); Scene.Tree.RootNode.AppendChild(coNode); fNodeGrid.AppendChild(rNodeSPhere); fNodeGrid.AppendChildren(arrow.ToNodes()); fNodeGrid.AppendChildren(bbox.ToNodes()); DeviceContext.Immediate.InputAssembler.PrimitiveTopology = PrimitiveTopology.TriangleList; Hud = Hud.FromDescription(Game.Context.Device, new HudDescription( width: Game.Context.Settings.ScreenWidth, height: Game.Context.Settings.ScreenHeight, zNear: Game.CurrentRenderer.Camera.NearClip, zFar: Game.CurrentRenderer.Camera.FarClip, cameraEnabled: true, multithreaded: true )); OdysseyUI.CurrentHud = Hud; Hud.BeginDesign(); Game.Logger.Log("Prova1"); Game.Logger.Log("Prova2"); Game.Logger.Log("Prova3"); Game.Logger.Log("Prova4"); Game.Logger.Log("Prova5"); //Game.Logger.Log("Prova1"); //Game.Logger.Log("Prova2"); //Game.Logger.Log("Prova3"); //Game.Logger.Log("Prova4"); //Game.Logger.Log("Prova5"); //Game.Logger.Log("U MAD?"); //Game.Logger.Log("PROBLEM?"); LogEvent.UserInterface.Write("U MAD?"); LogEvent.Engine.Write("YO DAWG"); TexturedIcon crosshair = new TexturedIcon { Position = new Vector2(512f, 512f), Size = new Size(64, 64), Texture = Texture2D.FromFile(Game.Context.Device, "Resources/Textures/crosshair.png") }; Hud.Add(crosshair); //Hud.Add(new Panel //{ // Position = new Vector2(500f, 175f), // Size = new Size(200, 200) //}); Hud.Add(new DecoratorButton { Position = new Vector2(550f, 300f), }); Hud.Add(new RayPickingPanel { Size = Hud.Size, Camera = this.Camera }); Game.Logger.Activate(); Hud.Init(); Hud.EndDesign(); //Scene.BuildRenderScene(); //Hud.AddToScene(this, Scene); // //lightSphere.SetBehaviour(new FreeMovementGamepadBehaviour(50)); IsInited = true; }