Exemplo n.º 1
0
        //* ────________________________________*
        //* methods ───────────────────────────────-*

        //* -----------------------------------------------------------------------*
        /// <summary>現在のカメラ情報を取得します。</summary>
        ///
        /// <param name="now">現在の時間。</param>
        /// <returns>現在のカメラ情報。</returns>
        public SData getNow(int now)
        {
            SData data   = new SData();
            float amount = interpolate.interpolate(0, 1, now, interval);

            data.up   = Vector3.Lerp(start.up, end.up, amount);
            data.from = Vector3.Lerp(start.from, end.from, amount);
            data.to   = Vector3.Lerp(start.to, end.to, amount);
            data.fov  = interpolate.interpolate(start.fov, end.fov, now, interval);
            return(data);
        }
Exemplo n.º 2
0
        //* ────________________________________*
        //* methods ───────────────────────────────-*

        //* -----------------------------------------------------------------------*
        /// <summary>現在のフォグ情報を取得します。</summary>
        ///
        /// <param name="now">現在の時間。</param>
        /// <returns>現在のフォグ情報。</returns>
        public SData getNow(int now)
        {
            SData data   = new SData();
            float amount = interpolate.interpolate(0, 1, now, interval);

            data.color = Color.Lerp(start.color, end.color, amount);
            return(data);
        }
Exemplo n.º 3
0
 //* -----------------------------------------------------------------------*
 /// <summary>グラデーション計算をします。</summary>
 ///
 /// <param name="nNow">現在値</param>
 /// <param name="nSize">分割数</param>
 /// <returns>補完値</returns>
 public float smooth(int nNow, int nSize)
 {
     if (limit1 == limit2)
     {
         return(limit1);
     }
     return(MathHelper.Clamp(interpolate.interpolate(start, end, nNow, nSize),
                             MathHelper.Min(limit1, limit2), MathHelper.Max(limit1, limit2)));
 }
Exemplo n.º 4
0
        //* ────________________________________*
        //* methods ───────────────────────────────-*

        //* -----------------------------------------------------------------------*
        /// <summary>現在のカメラ情報を取得します。</summary>
        ///
        /// <param name="now">現在の時間。</param>
        /// <returns>現在のカメラ情報。</returns>
        public SData getNow(int now)
        {
            SData data   = new SData();
            float amount = 0.5f *
                           (interpolate.interpolate(0, 1, now, interval) +
                            CInterpolate.amountLinear(now, interval));

            data.up   = Vector3.Lerp(start.up, end.up, amount);
            data.from = Vector3.Lerp(start.from, end.from, amount);
            data.to   = Vector3.Lerp(start.to, end.to, amount);
            data.fov  = MathHelper.Lerp(start.fov, end.fov, amount);
            return(data);
        }