zoukankan      html  css  js  c++  java
  • Unity(GameObject)

    ####1. 这个方法用于发送一个数据到指定的方法中,第三个参数是是否强制接收

    以下三种方法发送消息的形式,各有不同的效果,可以通过第一个参数指定要发送的方法名名,第二个是发送的参数值,第三个参数是是否强制需要接受,不然就报错。此方法会让对应游戏对象下的所有脚本都会接收到这个发送的消息通知,并且如有接收函数就进行接收处理。

    public class ExampleClass : MonoBehaviour {
        void ApplyDamage(float damage) {
            print(damage);
        }
        void Example() {
            gameObject.SendMessage("ApplyDamage", 5.0F);//发送一个消息,发送给当前对象的所有脚本中
            gameObject.SendMessageUpwards("ApplyDamage", 5.0F);//发送一个消息,发送给当前对象以及其上面的所有对象
            gameObject.BroadcastMessage("ApplyDamage", 5.0F); //发送一个消息,发送包括当前对象以及以下的所有子对象
        }
    }
    复制代码

    ####2 创建GmaeObject对象

    void Start() {
            GameObject plane = GameObject.CreatePrimitive(PrimitiveType.Plane);
            GameObject cube = GameObject.CreatePrimitive(PrimitiveType.Cube);
            cube.transform.position = new Vector3(0, 0.5F, 0);
            GameObject sphere = GameObject.CreatePrimitive(PrimitiveType.Sphere);
            sphere.transform.position = new Vector3(0, 1.5F, 0);
            GameObject capsule = GameObject.CreatePrimitive(PrimitiveType.Capsule);
            capsule.transform.position = new Vector3(2, 1, 0);
            GameObject cylinder = GameObject.CreatePrimitive(PrimitiveType.Cylinder);
            cylinder.transform.position = new Vector3(-2, 1, 0);
        }
    复制代码

    ####3 根据名字查找对应的空间游戏对象

    void Example() {
            GameObject hand = GameObject.Find("Hand");
            hand.name;
    }
    复制代码

    ####4 Instantiate克隆生成游戏对象

    using UnityEngine;
    
    public class InstantiateExample : MonoBehaviour
    {
        public GameObject prefab;
    
        void Start()
        {
            for (int i = 0; i < 10; i++)
                Instantiate(prefab, new Vector3(i * 2.0f, 0, 0), Quaternion.identity);
        }
    }
    复制代码

    转载于:https://juejin.im/post/5b3ac62e51882562302c404a

  • 相关阅读:
    S3C44b0x通用延时函数,延时time个100us函数理解
    LeetCode-058-最后一个单词的长度
    LeetCode-053-最大子序和
    LeetCode-035-搜索插入位置
    LeetCode-027-移除元素
    LeetCode-026-删除有序数组中的重复项
    LeetCode-025-K 个一组翻转链表
    LeetCode-024-两两交换链表中的节点
    LeetCode-023-合并K个升序链表
    LeetCode-021-合并两个有序链表
  • 原文地址:https://www.cnblogs.com/twodog/p/12136586.html
Copyright © 2011-2022 走看看