public void OnUpdateInput(Axiom.Input.InputReader inputReader) { if (mposx != inputReader.AbsoluteMouseX || mposy != inputReader.AbsoluteMouseY) { mposx = inputReader.AbsoluteMouseX; mposy = inputReader.AbsoluteMouseY; Core.BrowserManager[_browserId].MouseMove(mposx, mposy); } string status = "off"; if (inputReader.IsMousePressed(MouseButtons.Left)) { status = "on"; IsPressed = true; Core.BrowserManager[_browserId].MouseDown(MouseButton.Left); } if (!inputReader.IsMousePressed(MouseButtons.Left) && IsPressed) { Core.BrowserManager[_browserId].MouseUp(MouseButton.Left); //var _camera = Game.Context.Camera; //var _renderWindow = Game.Context.RenderWindow; //var _ray = _camera.GetCameraToViewportRay( // inputReader.AbsoluteMouseX / (float)_renderWindow.Width, // inputReader.AbsoluteMouseY / (float)_renderWindow.Height); //RaySceneQuery _sceneQuery = _root.SceneManager.CreateRayQuery( // _ray, (uint)SceneQueryTypeMask.WorldGeometry); //_sceneQuery.AddWorldFragmentType(WorldFragmentType.SingleIntersection); //_sceneQuery.AddWorldFragmentType(WorldFragmentType.CustomGeometry); //var results = _sceneQuery.Execute(); //foreach (RaySceneQueryResultEntry result in results) //{ // if (result.SceneObject != null) // { // result.SceneObject.ShowBoundingBox = true; //var woot = _ray.GetPoint(result.Distance); //Vector3[] corners = result.SceneObject.GetWorldBoundingBox().Corners; //var res = (from v in corners // orderby v.Distance(woot) // select v).Take(4); ////var i = 1; ////i++; //foreach (var v in res) //{ // var e = _root.SceneManager.CreateEntity("1BasicCube" + r.Next().ToString(), PrefabEntity.Cube); // e.MaterialName = "CBDynamicMaterial"; // var s = Root.Instance.SceneManager.RootSceneNode.CreateChildSceneNode(); // s.Position = v; // s.Scale = new Vector3(0.5f, 0.5f, 0.5f); // s.AttachObject(e); // s.Yaw(45); //} // } //} IsPressed = false; } //_element.Text = String.Format("X: {0} Y: {1} Status: {2}", // inputReader.AbsoluteMouseX, // inputReader.AbsoluteMouseY, // status); }