Ejemplo n.º 1
0
    //
    void SunPosCal()
    {
        float hour   = m_dayTime.Hour();
        float minute = m_dayTime.Minute();

        if (hour >= m_sunSetTime && hour < 24)
        {
            m_sunAngle = 6.28f * ((minute + (hour - m_sunRiseTime) * m_hourInMinuts) / m_dayTime.MinutsInDay());

            //Debug.Log("hour="+ hour+" , angle=" + (minute + hour * m_hourInMinuts) / (m_totalDayMinutes));
            m_sunPos.y = 100 * Mathf.Sin(m_sunAngle);
            m_sunPos.x = 100 * Mathf.Cos(m_sunAngle);
        }
        else if (hour > 0 && hour < m_sunRiseTime)
        {
            m_sunAngle = 6.28f * ((minute + (hour + 24 - m_sunRiseTime) * m_hourInMinuts) / m_dayTime.MinutsInDay());

            //Debug.Log("hour="+ hour+" , angle=" + (minute + hour * m_hourInMinuts) / (m_totalDayMinutes));
            m_sunPos.y = 100 * Mathf.Sin(m_sunAngle);
            m_sunPos.x = 100 * Mathf.Cos(m_sunAngle);
        }
        else if (hour >= m_sunRiseTime && hour < m_sunSetTime)
        {
            m_sunAngle = 3.14f * ((minute + (hour - m_sunRiseTime) * m_hourInMinuts) / (m_totalDayMinutes));

            //Debug.Log("hour="+ hour+" , angle=" + (minute + hour * m_hourInMinuts) / (m_totalDayMinutes));
            m_sunPos.y = 100 * Mathf.Sin(m_sunAngle);
            m_sunPos.x = 100 * Mathf.Cos(m_sunAngle);
        }
    }