位置: 编程技术 - 正文

Unity中的对象池用法(unity对象池优缺点)

编辑:rootadmin

推荐整理分享Unity中的对象池用法(unity对象池优缺点),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:unity3d对象池,unity对象池优缺点,u3d对象池,unity对象管理,unity对象管理,u3d对象池,u3d对象池,unity对象的材质,内容如对您有帮助,希望把文章链接给更多的朋友!

在游戏开发过程中,有时候需要频繁的创建相同的游戏物体(例如,子弹、炮弹等),刚开始学习游戏脚本编写时的做法是:反复的Instantiate去实例化游戏物体,当不需要时再Destory掉。然而这种做法是相当耗费资源的。当然,肯定有优化的方法,那就是我们接下来要讲的“对象池”。对象池,顾名思义就是有很多游戏对象的池子,它保存着当前不需要使用到但是却随时会被使用到的游戏对象。

对象池的结构:1、一个池子,用来存放我们的游戏物体 pool

2、一个可以在池子里取物体的公有的静态方法 GetObject

3、一个可以将使用完的物体放回池子的公有静态方法 ReturnObject

接下来就是对上面的三个结构的类型定义了:

Unity中的对象池用法(unity对象池优缺点)

1、由于在对象池中可能会有很多种类型的物体,而且每种类型的游戏物体又可能有多个,所以, 我们将pool的类型定义为Dictionary<string, ArrayList>,前面的string为物体的类型,后面的数 组就可以用来保存相同类型的游戏物体了。也就是说,这个Dictonary的实例就是一个对象池。

2、GetObject是从对象池里获取游戏物体的,所以它需要有一个参数(string type)来指定我们要 获取的对象是什么类型的,接着获取到这个对象之后还需要对这个对象的position和rotation进 行初始化,所以还需要两个参数(Vector3 position)和(Quaternion quat)。

3、ReturnObject是把我们使用完的对象放回对象池中,所以我们只需要一个参数,即当前要放入 对象池的物体。

说了那么多,下面直接上代码:

这样就可以当我们要使用一个对象时直接使用 ObjectPool.GetObject去对象池取,而使用完一个对象之后就再使用ObjectPool.ReturnObject将对象放回池子中。

版权声明:本文为博主原创文章,未经博主允许不得转载。

unity中被瞄准的对象显示血条或子物体(原理) 如图鼠标放在终点的cube显示出Sphere;这个可以用来做瞄准物体显示血条,在端游中经常看见的功能代码如下:usingUnityEngine;usingSystem.Collections;publicclassCub

unity 读取xml 信息 1、首先在unity工程中Resources/XML目录下创建xml文件:xmls.xml;如:?xmlversion=1.0encoding=utf-8?rootparentname=Lilychildname=L/childchildname=Lapple/childchildname=L大/chil

Unity shader 官网文档全方位学习(一) What??Shader,看起来好高级的样子,是的,这是Unity中高级进阶的必备。因此,兄弟我就在此记下我学习官网的一些心得。此为一。主要介绍些SurfaceShaders

标签: unity对象池优缺点

本文链接地址:https://www.jiuchutong.com/biancheng/369204.html 转载请保留说明!

上一篇:unity发布后运行的错行日志总结(unity发布exe)

下一篇:unity中被瞄准的对象显示血条或子物体(原理)(unity锚点)

  • 发票超过认证期有什么影响
  • 契税的具体适用税率是多少
  • 应收账款的账面价值和账面余额的区别
  • 外经证预交税怎么算
  • 免税店含增值税吗
  • 施工单位名称变更需要变施工许可证吗
  • 银行支付结算工作内容
  • 公司筹建期间
  • 房地产开发企业销售自行开发的房地产项目
  • 软件入库会计分录
  • 企业之间现金换承兑合法吗
  • 负债减少在什么方
  • 双倍余额递减法考虑净残值吗
  • 核销确实无法收回的应收账款后会影响资产负债率
  • 出纳现金日记账表格模板
  • 核定征收企业所得税率是多少
  • 预缴的附加税还可以扣减吗
  • 代开专票地税附加税申报办法
  • 增值税发票系统怎么升级
  • 房租发票进项税额抵扣
  • 非同一控制下企业合并的交易费用
  • 关税征收目的
  • 固定资产计提折旧的会计科目
  • 企业收到收入会计分录
  • 营改增后一般纳税人税率是多少
  • 员工给公司代垫的款项分录
  • win10禁用安全杀毒功能
  • 物权请求权如何行使
  • 汇款手续费应由谁承担
  • 外购货物用于不动产在建工程
  • ezulumain.exe是病毒进程吗 ezulumain进程安全吗
  • 新准则规定
  • 多台电脑共享打印机怎么设置
  • 阐述python中浅复制与深复制
  • 固定资产计算折旧时用扣除减值吗
  • 短期借款转长期借款利息
  • 外商投资企业法人独资属于内资还是外资
  • 劳务佣金合法吗?
  • php分页页码动态的实现
  • promise async区别
  • thinkphp框架介绍
  • php8.0 特性
  • 手把手教你win7换主板不重装系统的方法
  • js es6常用方法
  • JavaScript(WebAPI)+具体案例
  • 前端分页显示
  • 一个简单的小实验
  • 期末调整汇兑损益计算
  • mysql将查询结果存到另一个表
  • 开工程款发票有什么规定?
  • 工资不纳税项目
  • 生活服务的行业
  • 公司车辆违章
  • 进项发票已入账进项税,但是未抵扣怎么办
  • 年度投资额看哪个科目
  • 税种工会经费
  • mysql 5.7.28安装
  • ubuntu的sudo
  • macos手势
  • AquariumDesktop.exe进程危险吗 AquariumDesktop是什么进程
  • linux文件系统管理命令
  • win8如何使用word
  • win10系统如何屏蔽弹窗广告
  • dx12最新版本
  • win8创建我的电脑
  • 使用linux的电脑
  • shader开发实战
  • git 常用指令
  • 环境配置怎么配置
  • css要学到什么程度
  • jquery滚动条滚动到指定位置
  • 蓝牙协议栈包括
  • node cgi
  • 安卓手机管家推荐
  • JavaScript中的变量名不区分大小写
  • 江苏电子税务局网站官网
  • 个人出租房屋如何计税?看这篇
  • 双定户如何网上申报
  • 税控盘抵税申报表怎么填
  • 南通地税电话号码
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设