private unsafe void lightCut_Click(object sender, EventArgs e)
        {
            LightAnimationFrame frame = new LightAnimationFrame();
            float* p = (float*)&frame;

            for (int i = 0; i < 10; i++)
            {
                p[i] = _transBoxes[0][i].Value;
                _transBoxes[0][i].Value = float.NaN;
                BoxChanged(_transBoxes[0][i], null);
            }

            _tempLightFrame = frame;
        }
        private void RefreshPage()
        {
            if (_target != null)
            {
                //_currentPage = (int)numFrame.Value - 1;

                _currentFrame = _target.GetAnimFrame(_currentPage);

                numStartX.Value = _currentFrame.Start._x;
                numStartY.Value = _currentFrame.Start._y;
                numStartZ.Value = _currentFrame.Start._z;

                numEndX.Value = _currentFrame.End._x;
                numEndY.Value = _currentFrame.End._y;
                numEndZ.Value = _currentFrame.End._z;

                numSpotCut.Value = _currentFrame.SpotCutoff;
                numSpotBright.Value = _currentFrame.SpotBright;
                numRefDist.Value = _currentFrame.RefDist;
                numRefBright.Value = _currentFrame.RefBright;

                for (int i = 0; i < 10; i++)
                    UpdateBox(i);

                btnPrev.Enabled = _currentPage > 0;
                btnNext.Enabled = _currentPage < (_numFrames - 1);

                listKeyframes.SelectedIndex = FindKeyframe(_currentPage);
            }
        }
        private unsafe void lightCopy_Click(object sender, EventArgs e)
        {
            LightAnimationFrame frame = new LightAnimationFrame();
            float* p = (float*)&frame;

            for (int i = 0; i < 10; i++)
                p[i] = _transBoxes[0][i].Value;

            _tempLightFrame = frame;
        }