Unity通过Object学习原型模式

原型模式简述

依据现有的实例生成新的实例

Object的实例化方法

Object.Instantiate

克隆 original 对象并返回克隆对象

Unity中的实例:预制体或场景中的游戏对象

示例

方法1:手动创建对象并添加组件

方法2:使用实例化方法,实例化的时候不需要了解具体的创建细节,不需要进行配置

csharp 复制代码
using UnityEngine;
public class Example : MonoBehaviour
{
    void Awake()
    {
        //不使用实例化方法     
        GameObject gameObject = new GameObject(); //创建新的对象     
        gameObject.AddComponent<AudioSource>();    //添加组件

        //使用实例化方法
        GameObject.Instantiate(gameObject);
    }
}

优点

避免重复配置:不需要设置复杂的初始化状态

隐藏创建细节:不需知道对象的具体创建过程

相关推荐
LuminousCPP25 分钟前
数据结构 - 线性表第四篇:C 语言通讯录优化升级全记录(踩坑 + 思考)
c语言·开发语言·数据结构·经验分享·笔记·学习
魔法阵维护师33 分钟前
从零开发游戏需要学习的c#模块,第十四章(保存和加载)
学习·游戏·c#
_李小白1 小时前
【android opencv学习笔记】Day 17: 目标追踪(MeanShift)
android·opencv·学习
一只机电自动化菜鸟2 小时前
一建机电备考笔记(40) 建筑机电施工—排水管道施工(含考频+题型)
经验分享·笔记·学习·职场和发展·课程设计
2301_818730562 小时前
numpy的学习(笔记)
学习·numpy
GHL2842710902 小时前
Logon failed, use ctrl+c to cancel basic credential prompt
学习·prompt
共享家95273 小时前
Langchain的学习(二)
学习·langchain
victory04313 小时前
agent 学习路径解析 学习资源分享
学习
咸甜适中4 小时前
rust语言学习笔记Trait(八)Iterator(迭代器)
笔记·学习·rust
华为云开发者联盟5 小时前
告别繁琐操作,华为云码道 + Docker重塑远程开发体验
人工智能·学习·docker·华为云·软件开发·华为云码道