예제 #1
0
    void MoveOnPlanet()
    {
        //m_angleOnPlanet += m_moveSpeed * Time.deltaTime;

        m_position = NextPosition3d(m_angleOnPlanet, m_planet.transform.position, m_planet.GetRadius());
        this.gameObject.transform.up = (transform.position - m_planet.transform.position).normalized;

        float modifier = Mathf.Clamp(Mathf.Sin(Time.time * m_sineAmp) + 1, 1, 1.5f);

        m_position += (modifier) * gameObject.transform.up * m_spriteRenderer.sprite.bounds.max.y / 2;

        this.gameObject.transform.position = m_position;
    }