Unity3D:按键生成物件,Instantia…

    xiaoxiao2021-03-25  329

    在按下按键之后,可以在画面中生成之前定义好了的物体,这里使用了Instantiate函数来生成 1.先在游戏中定一个空物件GameObject 创建空物件快捷键:ctrl+shift+n 2.在视图中放置 3.编写脚本 脚本:SpaceCheck.cs using UnityEngine; using System.Collections; public class SapceCheck : MonoBehaviour {     public GameObject Instcube; // Use this for initialization void Start () { } // Update is called once per frame void Update () {         if (Input.GetKey(KeyCode.Space))   //按空格键时候开始克隆         {             if(Time.frameCount %5 ==0)//按照第几帧来限定每秒生成物件的数量             GameObject.Instantiate(Instcube, gameObject.transform.position, gameObject.transform.rotation);         }     } } 4.将脚本拖放到刚才创建的空物件上面 5.创建一个Cube预置 在文件夹中右键----Create-----Prefab(预置),将一个Cube拖入到该文件中 6.将这个Cube预置拖入到GameObject的脚本中 7. 完成,检查效果

     

     

    8.销毁对象

     

    这里用鼠标单击来完成

     

     

    创建一个c#脚本

     

    加入

     

     

    void OnMouseUp()

        {

            GameObject.Destroy(gameObject);     }

     

     

    然后拖放c#文件到刚才创建的预置文件中

     

     

     

    测试可以发现在点击后方块消失

     

     

     

     

     

    这里为了增强效果,增加了一个音效,最终脚本如下:

     

    脚本:cube01.cs

     

    using UnityEngine; using System.Collections;

    public class cube01 : MonoBehaviour {     public AudioClip BoomSound;//声音音效  // Use this for initialization  void Start () {    }    // Update is called once per frame  void Update () {    }

        void OnMouseUp()

        {

            GameObject.Destroy(gameObject);//摧毁物件         AudioSource.PlayClipAtPoint(BoomSound, transform.localPosition);//点击鼠标时候播放音效             }     }

     

     

     

     

     

    转载请注明原文地址: https://ju.6miu.com/read-301.html

    最新回复(0)