public class myscript : MonoBehaviour { void Start () { GameObject.Find ("GUI Text").GetComponent<GUIText>().text = "AnimationClip sample"; AnimationClip clip = new AnimationClip (); AnimationCurve curve = AnimationCurve.Linear (0f, 3f, 3f, 3f); Keyframe key = new Keyframe (1.5f, 7f); curve.AddKey (key); clip.SetCurve ("", typeof(Transform), "localPosition.z", curve); clip.wrapMode = WrapMode.Loop; GetComponent<Animation>().AddClip (clip, "clip1"); GetComponent<Animation>().Play ("clip1"); } void Update () { transform.Rotate (1f, 1f, 1f); } }
上記の
GetComponent<Animation>().AddClip (clip, "clip1"); GetComponent<Animation>().Play ("clip1");ってところがエラーでてます。
エラー内容はやんわりとしか覚えていませんが、
- Legasyというのにしないといけない?
- Animationが見つからない?
using UnityEngine; using System.Collections; public class Animation2 : MonoBehaviour { // Use this for initialization void Start () { GameObject.Find("GUI Text").GetComponent<GUIText>().text = "AnimationClip sample"; AnimationClip clip = new AnimationClip(); AnimationCurve curve = AnimationCurve.Linear(0f, 3f, 3f, 3f); Keyframe key = new Keyframe(1.5f, 7f); curve.AddKey(key); clip.SetCurve("", typeof(Transform), "localPosition.z", curve); clip.wrapMode = WrapMode.Loop; GetComponent<Animation>().AddClip(clip, "clip1"); GetComponent<Animation>().Play("clip1"); } // Update is called once per frame void Update () { transform.Rotate(1f, 1f, 1f); } }
このページへのコメント
上記ソースで特に問題なく動きました。
考えられるのは、“Animation” というクラスを自分で作ってしまっているとか・・・。