public void Remove() { CelestialBody celestialBody = Tools.GetCelestialBody(body); CityLightsManager.Log("Removing City Lights obj"); Transform transform = Tools.GetScaledTransform(body); if (transform != null) { CityLightsManager.Log("Removing scaled obj"); OverlayRenderer.Remove(transform.gameObject, scaledMat); GameObject.DestroyImmediate(transform.gameObject.GetComponents <ScaledCityComponent>().First(sc => sc.GUID == materialName)); LocalCityComponent lc = FlightCamera.fetch.mainCamera.gameObject.GetComponents <LocalCityComponent>().FirstOrDefault(sc => sc.GUID == materialName); if (lc != null) { GameObject.DestroyImmediate(lc); } } if (mainMenuBody != null) { GameObject.DestroyImmediate(mainMenuBody.GetComponents <ScaledCityComponent>().First(sc => sc.GUID == materialName)); } materialPQS.Remove(); GameEvents.onGameSceneLoadRequested.Remove(SceneLoaded); GameObject.DestroyImmediate(materialPQS); }
private void getGame() { bool doDelay = false; while (doLoop) { Process[] procs = Process.GetProcessesByName("csgo"); if (procs.Length > 0) { game = procs[0]; break; } else { doDelay = true; } Thread.Sleep(100); } if (doDelay) { Thread.Sleep(10000); getGame(); return; } if (render == null) { render = new OverlayRenderer(game, this); } render.Start(); }
public void LoadContent(ContentManager content) { _contentManager = content; _furnitypes = new Dictionary <int, Furnitype>(); loadFurniXml(); splashScreenManager = new SplashScreenManager(content, new Vector2i(0, 5)); splashScreenManager.Start(); overlayRenderer = new OverlayRenderer(content); overlayRenderer.Hide(); hotelOverview = new HotelOverviewContent(content, Vector2.Zero); navigatorManager = new NavigatorManager(content); roomManager = new RoomManager(content); furniManager = new FurniManager(content); catalogusManager = new CatalogusManager(content); inventoryManager = new InventoryManager(content); splashScreenManager.setPercentage(38); catalogusnotFoundIcon = new Image(content, "catalogue/icons/icon_1", Vector2.Zero); Thread thr = new Thread(() => SplashProgressThread()); thr.Start(); }
protected override void CreateTempComponent(EditableObject target) { if (target == null) { return; } RefreshVertexSculptSupport(target); if (!m_LikelyToSupportVertexSculpt) { return; } OverlayRenderer ren = target.gameObjectAttached.AddComponent <OverlayRenderer>(); ren.SetMesh(target.editMesh); ren.fullColor = s_FullStrengthColor; ren.gradient = s_BrushGradientColor; ren.vertexBillboardSize = s_VertexBillboardSize; EditableObjectData data; if (!m_EditableObjectsData.TryGetValue(target, out data)) { data = new EditableObjectData(); m_EditableObjectsData.Add(target, data); } data.TempComponent = ren; }
private void OnEnable() { // Enable overlay renderer OverlayRenderer overlayRenderer = Camera.main.transform.parent.GetComponentInChildren <OverlayRenderer>(true); overlayRenderer.gameObject.SetActive(true); }
private void OnDisable() { if (Camera.main == null) { return; } // Disable overlay renderer OverlayRenderer overlayRenderer = Camera.main.transform.parent.GetComponentInChildren <OverlayRenderer>(true); overlayRenderer.gameObject.SetActive(false); }
public void Apply() { CelestialBody celestialBody = Tools.GetCelestialBody(body); if (celestialBody != null) { GameObject go = new GameObject(); materialPQS = go.AddComponent <MaterialPQS>(); macroMat = materialPQS.Apply(celestialBody, cityLightsMaterial, ShaderLoaderClass.FindShader("EVE/TerrainCityLight"), true, false); macroMat.name = materialName; macroMat.renderQueue = (int)Tools.Queue.Geometry + 1; } Transform transform = Tools.GetScaledTransform(body); if (transform != null) { Renderer r = transform.GetComponent <Renderer>(); if (r != null) { scaledMat = new Material(ShaderLoaderClass.FindShader("EVE/PlanetCityLight")); cityLightsMaterial.ApplyMaterialProperties(scaledMat); scaledMat.SetTexture("_MainTex", r.material.GetTexture("_MainTex")); scaledMat.name = materialName; scaledMat.renderQueue = (int)Tools.Queue.Geometry + 1; OverlayRenderer.Add(r.gameObject, scaledMat); ScaledCityComponent sc = transform.gameObject.AddComponent <ScaledCityComponent>(); FieldInfo field = typeof(Sun).GetFields(BindingFlags.Instance | BindingFlags.NonPublic).First( f => f.Name == "scaledSunLight"); Light slight = (Light)field.GetValue(Sun.Instance); sc.Apply(scaledMat, slight); } } LocalCityComponent lsc = FlightCamera.fetch.mainCamera.gameObject.AddComponent <LocalCityComponent>(); Light light = Sun.Instance.GetComponent <Light>(); lsc.Apply(macroMat, light); ApplyToMainMenu(); GameEvents.onGameSceneLoadRequested.Add(SceneLoaded); if (HighLogic.LoadedScene == GameScenes.MAINMENU) { ApplyToMainMenu(); } }
protected override void CreateTempComponent(EditableObject target) { RefreshVertexSculptSupport(target); if (!likelyToSupportVertexSculpt) { return; } OverlayRenderer ren = target.gameObjectAttached.AddComponent <OverlayRenderer>(); ren.SetMesh(target.editMesh); ren.fullColor = s_FullStrengthColor; ren.gradient = s_BrushGradientColor; ren.vertexBillboardSize = s_VertexBillboardSize; tempComponent = ren; }
protected virtual void Awake() { // Find the primary tile map List <Tilemap> maps = new List <Tilemap>(); Camera.main.transform.parent.GetComponentsInChildren(maps); m_Tilemap = maps.Find(map => map.name == "Tilemap"); m_MapRenderer = m_Tilemap.GetComponent <MapRenderer>(); // Find unit renderer List <UnitRenderer> unitRenderers = new List <UnitRenderer>(); Camera.main.transform.parent.GetComponentsInChildren(unitRenderers); m_UnitRenderer = unitRenderers.Find(rend => rend.name == "Units"); // Find overlay renderer m_OverlayRenderer = Camera.main.transform.parent.GetComponentInChildren <OverlayRenderer>(true); }
/// <summary> /// Public constructor /// </summary> /// <param name="cartographer">Instance of the cartographer</param> /// <param name="eyetribeConnected">Whether an EyeTribe is connected</param> /// <param name="controllerConnected">Whether an Xbox 360 controller is connected</param> public MainWindow(Pose pose, ObstacleMap obstacleMap, ICartographer cartographer = null, INavigator nav = null, IDoorDetector doorDetector = null, OverlayRenderer overlayRenderer = null, bool eyetribeConnected = false, bool controllerConnected = false, SensorArray senorArray = null) { //Only done here because it is passed to this function Data.EyeTribeConnected = eyetribeConnected; Data.XboxConnected = controllerConnected; Data.Cartographer = cartographer; Data.Navigator = nav; InitializeComponent(); this.doorsControl.DoorDetector = doorDetector; this.CurrentPose = pose; this.doorsControl.SensorInfo = senorArray; this.overlayRenderer = overlayRenderer; this.NavigationTab.SetPose(this.CurrentPose); ConfigureOverlays(); Input.Input.DeviceChanged += Input_DeviceChanged; }
public static async Task ClientMessage(string aKey, string aValue) { switch (aKey) { case "RequestDocumentation": try { string html = DocumentationRenderer.Render(); await SendMessage("UpdateDocumentation", html); } catch (Exception exception) { string html = ExceptionRenderer.Render(exception); await SendMessage("UpdateException", "Documentation:" + html); } break; case "RequestOverlay": try { string html = OverlayRenderer.Render(aValue); await SendMessage("UpdateOverlay", html); } catch (Exception exception) { string html = ExceptionRenderer.Render(exception); await SendMessage("UpdateException", "Overlay:" + html); } break; case "RequestBeatmapset": try { LoadBeatmapSet(aValue); Func <string, Task>[] actions = new Func <string, Task>[] { RequestSnapshots, RequestChecks, RequestOverview }; if (State.LoadedBeatmapSetPath != aValue) { return; } Parallel.ForEach(actions, anAction => { anAction(aValue); }); } catch (Exception exception) { string html = ExceptionRenderer.Render(exception); await SendMessage("UpdateException", "Checks:" + html); await SendMessage("UpdateException", "Snapshots:" + html); await SendMessage("UpdateException", "Overview:" + html); } break; default: break; } }
static void Main() { //change the test file xml here and make sure it is in bin. string startingXMLFile = "ETRL_03_07.xml"; //string startingXMLFile = "FloorPlanTest.xml"; //string startingOpenFile = "Sloan46_FINAL.xml"; double compassToMapOffset = 72.0; // List of all the objects we'll be initializing. // Default to null, as some of them will only // be initialized conditionally e.g. // vehicle is only initialized if // there is a vehicle connected. SerialPort sp = null; IVehicle vehicle = null; IImageStream depthStream = null; IImageStream videoStream = null; IObstacleDetector obstacleDetector = null; ICartographer cartographer = null; IOdometer odometer = null; IInputDevice input = KeyboardInput.Instance; ObstacleMap obstacleMap = null; INavigator navigator = null; MainWindow mainWindow = null; Driver.Driver driver = null; VisualInputGridPresenter uiInputPresenter = null; ObstacleGridPresenter uiGridPresenter = null; PositioningSystem ips = null; OverlayRenderer overlayRenderer = null; SensorArray sensorArray = null; Pose pose = null; IDoorDetector doorDetector = null; ObstacleLocalizer obstacleLocalizer = null; SonarDetector sonarDetector = null; Config.Initialize(); Devices.Initialize(); //string wheelchair_com_port = Devices.IsWheelchairConnected(); string wheelchair_com_port = "COM3";//Devices.FindComPort("Arduino Uno"); bool WheelChairConnected = false; if (wheelchair_com_port != "") { WheelChairConnected = true; } //bool WheelChairConnected = true; bool EyeTribeConnected = true; // Devices.IsEyeTribeConnected(); bool ControllerConnected = true; //Devices.IsControllerConnected(); bool KinectConnected = true; //Devices.IsKinectConnected(); //Console.WriteLine("Kinect Connected: {0}", KinectConnected.ToString()); //Console.WriteLine("Eyetribe Connected: {0}", EyeTribeConnected.ToString()); //Console.WriteLine("Wheelchair Connected: {0}", WheelChairConnected.ToString()); //Console.WriteLine("Controller Connected: {0}", ControllerConnected.ToString()); // Initialize vehicle and serial connection if // there is a vehicle connected. if (WheelChairConnected) { //sp = new SerialPort(wheelchair_com_port, 9600); vehicle = Wheelchair.Instance(wheelchair_com_port); vehicle.initializeOffset(Properties.Settings.Default.CalibrationOffset); } else { vehicle = new MockVehicle(); MockVehicleWindow mockDisplay = new MockVehicleWindow((MockVehicle)vehicle); mockDisplay.Show(); } //initalize IPS here IByteReader sensorReader = null; try { //sensorReader = new SerialByteReader("Arduino Mega"); sensorReader = new SerialByteReader("COM4"); } catch (Exception e) { MessageBox.Show(e.Message); } if (sensorReader != null) { ILogger logger = new NullLogger(); sensorArray = new SensorArray(sensorReader, logger); sonarDetector = new SonarDetector(); } else { sensorReader = new NullByteReader(); ILogger logger = new NullLogger(); sensorArray = new SensorArray(sensorReader, logger); } IByteReader byteReader = null; try { //byteReader = new SerialByteReader(Devices.FindComPort("STMicroelectronics")); byteReader = new SerialByteReader("COM3"); } catch (Exception e) { MessageBox.Show(e.Message); } if (byteReader != null) { ILogger logger = new NullLogger(); ips = new MarvelMind(byteReader, logger); } else { //Setup Mock IPS //IByteReader mockByteReader = new FileByteReader(@"C:\Users\Dana\Documents\Visual Studio 2013\Projects\UITests\UITests\Mock_IPS_Data.txt"); //IByteReader mockByteReader = new XLineFixedYByteReader(800, 100, 200); IByteReader mockByteReader = new RandomByteReader(300, 299); ILogger mockLogger = new NullLogger(); ips = new MarvelMind(mockByteReader, mockLogger); } //wait for an iteration of the IPS system that way //we can get the starting location while (false == ips.XUpdated && false == ips.YUpdated) { continue; } //Tuple<double, double> t = new Tuple<double, double>((double)ips.X, (double)ips.Y); Tuple <double, double> t = new Tuple <double, double>((double)ips.Y, (double)ips.X); mPoint startingLocationInXY = new mPoint(t); // UI, input, object detection, navigation, and driver are initialized always, // as they are not directly dependent on external hardware. obstacleMap = new ObstacleMap(); //cartographer = new Cartographer(Directory.GetCurrentDirectory() + @"\FloorPlanTest.xml", ips); // might need to be changed later. If the location is not in the starting room. add staring room. //cartographer = new Cartographer(Directory.GetCurrentDirectory() + @"\FloorPlanTest.xml", startingLocationInXY); OpenFileDialog ofd = new OpenFileDialog(); ofd.Filter = "XML | *.xml"; ofd.Title = "Open Map"; if (ofd.ShowDialog() == true) { startingXMLFile = ofd.FileName; Console.WriteLine(startingXMLFile); } cartographer = new Cartographer(startingXMLFile, startingLocationInXY); pose = new Pose(ips, cartographer.GetStartingRoom(), sensorArray.CompassDevice, compassToMapOffset); overlayRenderer = new OverlayRenderer(); if (KinectConnected) { depthStream = DepthStream.Instance; videoStream = VideoStream.Instance; // Initialize depthstream if kinect is connected. obstacleDetector = new ObstacleDetector(depthStream, false); obstacleDetector.Start(); obstacleLocalizer = new ObstacleLocalizer(pose); ObstaclesOverlay obstaclesOverlay = new ObstaclesOverlay(obstacleDetector); overlayRenderer.Overlays.Add(obstaclesOverlay); doorDetector = new DepthBasedDoorDetector(); doorDetector.RunAsync(depthStream); try { sonarDetector.RunAsync(sensorArray); } catch (Exception e) { } } // Obstacle detector and driver are only run // if both the vehicle and kinect are connected. if (vehicle != null && KinectConnected) { Vector startPoint = new Vector(7 / 0.75f, 43 / 0.75f); Vector startRotation = new Vector(-7, -43); startRotation.Normalize(); odometer = new Odometer(); navigator = new Navigator(obstacleMap, obstacleDetector, obstacleLocalizer, cartographer, doorDetector, pose, sonarDetector, sensorArray); driver = new Driver.Driver(input, vehicle, navigator); driver.Start(); } mainWindow = new MainWindow(pose, obstacleMap, cartographer, navigator, doorDetector, overlayRenderer, EyeTribeConnected, ControllerConnected, sensorArray); uiInputPresenter = new VisualInputGridPresenter(mainWindow.visualInputGrid); //This starts the program. Application app = new Application(); app.ShutdownMode = ShutdownMode.OnMainWindowClose; app.MainWindow = mainWindow; app.MainWindow.Show(); app.Run(); }