Beispiel #1
0
        public void Dispose()
        {
            if (Layers != null)
            {
                foreach (var layer in Layers)
                {
                    if (layer.Value != null)
                    {
                        layer.Value.Dispose();
                    }
                }
            }

            if (LBranch != null)
            {
                LBranchSprite.Dispose();
            }
            LBranch = null;

            if (Layers != null)
            {
                Layers.Clear();
            }

            if (Lights != null)
            {
                Lights.Clear();
            }
        }
Beispiel #2
0
        protected override void ReadData(DataBuffer buf, FileFormat fmt)
        {
            WheelDamageEffect = buf.ReadFloat();
            Engine            = buf.ReadByte();
            Wheels            = buf.ReadArray <WheelStatus>(NumWheels);
            Doors             = buf.ReadArray <DoorStatus>(NumDoors);
            buf.Skip(1);
            int lightStatus = buf.ReadInt32();
            int panelStatus = buf.ReadInt32();

            Field24h = buf.ReadInt32();

            Lights.Clear();
            for (int i = 0; i < NumLights; i++)
            {
                Lights.Add((LightStatus)(lightStatus & 0x3));
                lightStatus >>= 2;
            }

            Panels.Clear();
            for (int i = 0; i < NumPanels; i++)
            {
                Panels.Add((PanelStatus)(panelStatus & 0xF));
                panelStatus >>= 4;
            }

            Debug.Assert(buf.Offset == SizeOfType <DamageManager>());
        }
Beispiel #3
0
        public void Reset()
        {
            ReferenceNode = null;

            DecalNodes.Clear();
            Lights.Clear();
            LensFlareNodes.Clear();
            SkyNodes.Clear();
            FogNodes.Clear();
            RenderableNodes.Clear();
        }
Beispiel #4
0
        //public void Pause()
        //{

        //}

        //public void Resume()
        //{

        //}

        public void Dispose(bool force)
        {
            Stop(force);
            Lights.Clear();
            Lights               = null;
            ZoneProgram          = null;
            InterruptingPrograms = null;
            LightingController   = null;
            Brightness           = 0;
            Name = null;
        }
Beispiel #5
0
        public Scene MakeScene()
        {
            Primitive accelerator =
                PbrtApi.MakeAccelerator(AcceleratorName, Primitives, AcceleratorParams);

            if (accelerator == null)
            {
                accelerator = new BvhAccelerator(Primitives);
            }
            Scene scene = new Scene(accelerator, Lights);

            // Erase primitives and lights from _RenderOptions_
            Primitives.Clear();
            Lights.Clear();
            return(scene);
        }
Beispiel #6
0
        private async void ExecuteGetLightsAsync()
        {
            _isGettingLights = true;
            GetLightsCommand.RaiseCanExecuteChanged();

            var rv = await _bridge.GetLightsFullAsync();

            Lights.Clear();

            if (!rv.IsError())
            {
                foreach (Light light in (from l in ((HueObjectCollectionBase <Light>)rv).Dictionary.Values orderby l.Name select l))
                {
                    Lights.Add(new LightViewModel(light, _commandFactory));
                }
            }
            else
            {
                await _messageHandler.GetResponseAsync("Error", "No Lights Found", MessageBoxButtons.OK);
            }

            _isGettingLights = false;
            GetLightsCommand.RaiseCanExecuteChanged();
        }
Beispiel #7
0
        /// <summary>
        /// Cleans up.
        /// </summary>
        public virtual void CleanUp()
        {
            foreach (var item in this.CameraManager.GetCamerasDescription())
            {
                item.cam.CleanUp();
            }

            foreach (var item in SoundEmiters3D.ToArray())
            {
                this.RemoveSoundEmitter(item);
            }

            foreach (var item in Triggers.ToArray())
            {
                this.RemoveTrigger(item);
            }

            foreach (var item in Lights.ToArray())
            {
                this.RemoveLight(item);
            }


            if (CleanUpObjectsOnDispose)
            {
                foreach (var item in Objects.ToArray())
                {
                    this.RemoveObject(item);
                    item.CleanUp(graphicFactory);
                }
            }
            else
            {
                foreach (var item in Objects.ToArray())
                {
                    this.RemoveObject(item);
                }
            }



            foreach (var item in SoundEmiters3D)
            {
                item.CleanUp(graphicFactory);
            }

            Objects.Clear();
            Lights.Clear();
            Dummies.Clear();
            this.culler = null;
            SoundEmiters3D.Clear();
            CameraManager = null;
            Triggers.Clear();
            if (particleManager != null)
            {
                particleManager.iCleanUp();
                particleManager = null;
            }
            this.PhysicWorld.iCleanUp();
            this.PhysicWorld = null;
        }