愤怒的小鸟总结:
1
网格碰撞器利用一个网格资源并在其上构建碰撞器。对于复杂网状模型上的碰撞检测,它要比应用原型碰撞器精确的多。标记为凸起的(Convex )的网格碰撞器才能够和其他网格碰撞器发生碰撞。
需要注意的是要给碰撞物体增加刚体
(对mesh collider的理解,由于碰撞产生的效果碰撞物体至少要有碰撞器和刚体才有碰撞效果,而在复杂物体中选中Convex,相当于给物体添加了碰撞器,那么就可以产生碰撞效果了)
2
当小鸟发与墙壁生碰撞时,使用void OnCollisionEnter(Collision collision)
当小鸟和被救的小鸟是使用void OnTriggerEnter(Collider other)
3 定期调用自定义代码
public GameObject pig; void Start () { InvokeRepeating("createPig1", 0f, 1.6f); } void createPig1() { GameObject pigClone = GameObject.Instantiate(pig) as GameObject; float x = Random.Range(-4.5f, 3.9f); float y = Random.Range(-2.7f, 2.6f); pigClone.transform.position = new Vector3(x, y, -0.5f); Destroy(pigClone, 5); }
3 播放声音函数
void playAudio1(AudioClip clip)
{
AudioSource.PlayClipAtPoint(clip, this.transform.position);
}
public AudioClip zhuangji;
//产生声音
playAudio1(zhuangji);
4 克隆游戏对象
clone = (GameObject)Instantiate(bird);
//clone.transform.position = new Vector3(-4, 2, -0.5f);
5 加载下一关
Application.LoadLevel("next");
6 发布场景
file——》buil setting——》添加场景
7 保留场景对象不被销毁函数
void Start()
{
DontDestroyOnLoad(this.gameObject);
}
8 控制值方向
if (Input.GetKey(KeyCode.UpArrow))
{
this.transform.position += new Vector3(0, speed * Time.deltaTime, 0);
}
9 代码总结
关于预设:以愤怒的小鸟为例,所用的关卡中都有红色小鸟,会有撞击,声音,营救成功能操作因此可以打赌写一个脚本给红色小鸟,将他设为预设,那么就可以拿去到处去用了。