예제 #1
0
        public LightWibbler(Light light, Billboard billboard, Color minColour,
                            Color maxColour, float minSize, float maxSize)
            : base()
        {
            mCVFH = new ControllerValueFloatDirector();
            mCVFH.SubscribeEvents();
            mCVFH.GetValueFunction += new CVFHGetValueDelegate(GetValue);
            mCVFH.SetValueFunction += new CVFHSetValueDelegate(SetValue);

            mLight       = light;
            mBillboard   = billboard;
            mColourRange = new OgreDotNet.ColourValue();
            mHalfColour  = new OgreDotNet.ColourValue();

            mColourRange.r = ((maxColour.R - minColour.R) / 255.0f) * 0.5f;
            mColourRange.g = ((maxColour.G - minColour.G) / 255.0f) * 0.5f;
            mColourRange.b = ((maxColour.B - minColour.B) / 255.0f) * 0.5f;

            mHalfColour.r = Converter.ToColourValue(minColour).r + mColourRange.r;
            mHalfColour.g = Converter.ToColourValue(minColour).g + mColourRange.g;
            mHalfColour.b = Converter.ToColourValue(minColour).b + mColourRange.b;

            mMinSize   = minSize;
            mSizeRange = maxSize - minSize;
            intensity  = 1;
        }
예제 #2
0
 public void Dispose()
 {
     mCVFH.Dispose();
     mCVFH = null;
 }