当前位置: 首页 > news >正文

河南郑州旅游网站制作wordpress摘要字数

河南郑州旅游网站制作,wordpress摘要字数,网站链接地图是怎么做的,发软文是什么意思前言#xff1a; Unity作为一款强大的游戏开发引擎#xff0c;其基础框架的设计对于项目的结构和性能有着重要的影响。其中#xff0c;单例模式是一种常用的设计模式#xff0c;用于确保一个类只有一个实例#xff0c;并提供一个全局访问点。 什么是单例模式#xff1f…前言 Unity作为一款强大的游戏开发引擎其基础框架的设计对于项目的结构和性能有着重要的影响。其中单例模式是一种常用的设计模式用于确保一个类只有一个实例并提供一个全局访问点。 什么是单例模式 单例模式是一种创建型设计模式其目的是确保一个类只有一个实例并提供一个全局访问点。在Unity中单例模式常用于管理全局数据、游戏状态或者资源管理。通过单例模式我们可以在整个应用程序中方便地访问特定的对象。 一、Unity中的单例模式实现不继承Mono的 1. 创建Singleton 首先我们需要创建一个BaseSingleton类该类负责管理单例实例的创建和访问。以下是一个简单的BaseSingleton类示例 //单例模式基类,泛型约束为存在无参构造函数非抽象类 //为什么约束因为使用了instance new T(); public class BaseSingletonT where T:new() {private static T instance;//保护构造函数保证单例只能在内部创建protected BaseSingleton() { }public static T Instance{get{if (instance null){instance new T();}return instance;}} } 2. 应用到Unity中的管理器 假设我们要创建一个GameManager作为全局的游戏管理器。我们可以通过继承BaseSingleton类来实现GameManager的单例模式 public class GameManager : BaseSingletonGameManager {// 在这里定义GameManager的其他属性和方法public void StartGame(){}} 3. 在其他类中访问单例 现在我们可以在其他类中轻松地访问GameManager的单例实例 using System.Collections; using System.Collections.Generic; using UnityEngine;public class Test : MonoBehaviour {void Start(){// 通过GameManager.Instance访问GameManager的单例实例GameManger.Instance.StartGame();//StartGame()是在GameManager类里定义的一个方法}}通过这种方式我们可以方便地管理全局的游戏状态而无需担心多个实例的创建。 二、Unity中的单例模式实现继承Mono的 在Unity中经常会使用MonoBehaviour作为游戏对象的脚本组件会需要使用MonoBehaviour的相关方法。因此将单例模式与MonoBehaviour结合可以更好地适应游戏开发的需求。 1. 创建Singleton类 以下是一个继承MonoBehaviour的单例模式基类的实现 using System.Collections; using System.Collections.Generic; using UnityEngine;public class SingletonMonoT : MonoBehaviour where T : MonoBehaviour {private static T instance;public static T Instance{get{instance FindObjectOfTypeT();///判断场景中存不存在 该T 类型的的实例如果不存在 则在场景中创建一个空物体并加上该T组件if (instance null){GameObject singletonObject new GameObject(typeof(T).Name _Singleton);singletonObject.AddComponentT();DontDestroyOnLoad(singletonObject);}return instance;}}//使用virtual虚函数子类继承可能还需要用Awake()protected virtual void Awake(){// 确保在场景切换时不会销毁该实例DontDestroyOnLoad(gameObject);// 检查是否存在重复的实例if (instance null){instance this as T;}else{Debug.LogWarning(存在重复的单例 typeof(T).Name 删除);Destroy(gameObject);}} }2. 应用到Unity中的管理器 using System.Collections; using System.Collections.Generic; using UnityEngine; public class GameManger : SingletonMonoGameManger {// 在这里定义GameManager的其他属性和方法public void StartGame(){Debug.LogError(调用单例);}}3. 在其他类中访问单例 using System.Collections; using System.Collections.Generic; using UnityEngine;public class Test : MonoBehaviour {void Start(){// 通过GameManager.Instance访问GameManager的单例实例GameManger.Instance.StartGame();//StartGame()是在GameManager类里定义的一个方法}} 4.运行效果 当调用该单例中StartGame方法时 先创建了一个GameManger_Singleton物体并挂载了 GameManger组件 如下图 执行顺序如上图, 1 创建空物体2 挂载组件 3 执行方法 总结 单例模式是Unity中常用的设计模式之一特别适用于需要全局访问点的情况。通过创建一个Singleton类我们可以轻松地将其应用到不同的管理器或者全局性的对象中提高代码的可维护性和灵活性。在实际项目中根据具体需求可以对单例模式进行扩展和优化。 Unity自定义框架开发-CSDN博客
http://www.hkea.cn/news/14586255/

相关文章:

  • 网站建设托管推广海报在线培训方案设计
  • 造作网站模版做统计的网站吗
  • 免费的软件网站建设中国装修网官网
  • 备案网站的规则东莞教育网站建设
  • 秦皇岛网站关键词南阳网站排名优化费用
  • php论坛网站建设教程可以看qq空间的网站
  • 架设网站flash不显示人气最旺的传奇手游
  • 网站同时做竞价和优化可以网站pv多少可以
  • 石家庄的网站公司网站做qq发送链接
  • 电子商务网站建设的阶段化分析沈阳城乡建设局官网
  • 兖州建设公司网站公司网站维护该谁来做
  • app和手机网站的区别专业模板网站制作价格
  • 手机网站 cms苏州网站建设设计制作公司怎么样
  • 网站建设 400电话 广告沧州美升网络科技有限公司
  • 设计师网站上海咸阳学校网站建设多少钱
  • 国内最最早做虚拟货币的网站企业网站需要多少费用
  • 网站建设策划书参考案例wordpress 调用评论数
  • 网站备案客户资料建设部网站上标准合同
  • 广东网站开发软件市场营销数字营销
  • 织梦建站教程全集电商平台介绍
  • 上海正规做网站公司有哪些媒体网站建设
  • 四举措加强网站建设网站公司做网站
  • 张家口建设厅官方网站宁波网站排名优化报价
  • 模板下载网站河北省建设项目环保备案网站
  • 在线小公司网站制作住院证明图片在线制作
  • 宝安网站制作哪家强wordpress商城主题破解
  • 科技公司网站设计方案wordpress怎样增加移动端
  • 站长之家网站网站设计字体最好用
  • 阿里云上做网站套模板怎么做济南 网站设计公司
  • 江门网站主机壳 安装wordpress