public override void GetObjectProperties(Mogre.NameValuePairList retList) { retList.Clear(); retList["Name"] = this.name; retList["Colour"] = Mogre.StringConverter.ToString(this.colour); retList["Index"] = Mogre.StringConverter.ToString(ViewportIndex); retList["Dimensions"] = Mogre.StringConverter.ToString(this.dimensions); retList["Overlays"] = Mogre.StringConverter.ToString(this.overlays); retList["Skies"] = Mogre.StringConverter.ToString(this.skies); retList["Shadows"] = Mogre.StringConverter.ToString(this.shadows); retList["CamPosition"] = Mogre.StringConverter.ToString(ViewCamera.Position); retList["CamOrientation"] = Mogre.StringConverter.ToString(ViewCamera.Orientation); retList["CamFOV"] = Mogre.StringConverter.ToString(ViewCamera.FOV); retList["CamPolyMode"] = Mogre.StringConverter.ToString((int)ViewCamera.PolygonMode); retList["CamClipDistance"] = Mogre.StringConverter.ToString(ViewCamera.ClipDistance); Mogre.CompositorManager comMngr = Mogre.CompositorManager.Singleton; if (!comMngr.HasCompositorChain(this.handle)) { return; } int count = 0; Mogre.CompositorChain chain = comMngr.GetCompositorChain(this.handle); foreach (Mogre.CompositorInstance compositor in chain.GetCompositors()) { Mogre.Compositor sub = compositor.Compositor; if (sub == null) { continue; } if (sub.Name.Substring(1, 7) == "_Hydrax") { continue; } string compId = "Compositor" + Mogre.StringConverter.ToString(count); retList[compId + "Name"] = sub.Name; retList[compId + "Enabled"] = Mogre.StringConverter.ToString(compositor.Enabled); count++; } }
private void PopCompositors() { if (this.compositorStorage.Count == 0) { return; } Mogre.CompositorManager comMngr = Mogre.CompositorManager.Singleton; if (comMngr.HasCompositorChain(this.handle)) { comMngr.GetCompositorChain(this.handle).RemoveAllCompositors(); } foreach (CompositorPush compData in this.compositorStorage) { comMngr.AddCompositor(this.handle, compData.Name); comMngr.SetCompositorEnabled(this.handle, compData.Name, compData.Enabled); } this.compositorStorage.Clear(); Modified = true; }
private void PushCompositors(Camera camera) { if (this.handle != null && this.handle.Camera == camera) { this.compositorStorage.Clear(); Mogre.CompositorManager comMngr = Mogre.CompositorManager.Singleton; if (!comMngr.HasCompositorChain(this.handle)) { return; } Mogre.CompositorChain chain = comMngr.GetCompositorChain(this.handle); foreach (Mogre.CompositorInstance compositor in chain.GetCompositors()) { CompositorPush compData = new CompositorPush(); compData.Name = compositor.Compositor.Name; compData.Enabled = compositor.Enabled; this.compositorStorage.Add(compData); } } }