private void btnRGB_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                if (_offline1 == null)
                {
                    MessageBox.Show("Start a scene first", this.Title, MessageBoxButton.OK, MessageBoxImage.Warning);
                    return;
                }

                ShipPartDNA energyDNA = new ShipPartDNA() { PartType = EnergyTank.PARTTYPE, Orientation = Quaternion.Identity, Position = new Point3D(), Scale = new Vector3D(10, 10, 10) };
                EnergyTank energy = new EnergyTank(_editorOptions, _itemOptions, energyDNA);
                energy.QuantityCurrent = energy.QuantityMax;

                ShipPartDNA dna = new ShipPartDNA() { PartType = CameraColorRGB.PARTTYPE, Orientation = Quaternion.Identity, Position = new Point3D(0, 0, 0), Scale = new Vector3D(1, 1, 1) };

                CameraColorRGB camera = new CameraColorRGB(_editorOptions, _itemOptions, dna, energy, _cameraPool);

                camera.RequestWorldLocation += new EventHandler<PartRequestWorldLocationArgs>(TestCamera_RequestWorldLocation);

                //var location = camera.GetWorldLocation_Camera();

                //_offline1.SyncCamera(_camera);
                //IBitmapCustom bitmap = UtilityWPF.RenderControl(_offline1.Control, camera.PixelWidthHeight, camera.PixelWidthHeight, true, Colors.Black, false);

                //camera.StoreSnapshot(bitmap);

                camera.Update_MainThread(1);
                camera.Update_AnyThread(1);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString(), this.Title, MessageBoxButton.OK, MessageBoxImage.Error);
            }
        }