位置: 编程技术 - 正文

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锚点)

  • 金税盘维护费抵税账务处理
  • 甲是乙公司依法设立的分公司
  • 介质申报和网络申报的区别
  • 营业执照注销还需要交钱吗
  • 工业企业员工工资占收入比例
  • 无营业执照是否可以先办场所码
  • 税务变更需要哪些材料
  • 广告业与服务业哪个好
  • 收到车辆保险返还会计分录
  • 违约金没有发票
  • 研发准备金的计提比例是多少
  • 营改增后房地产公司税种及税率
  • 网络综合布线开关在哪
  • 开票超过离线时长怎么解决
  • 销售人员差旅费管理办法
  • 讲课费税务发票类别
  • 1697510006
  • 高价转让股份
  • 当月开发票收到货款会计应该以什么为做账凭证?
  • 工会经费的会计分录2022
  • 跨月的红字发票
  • mac安装软件提示需要更高版本
  • 固定资产计提折旧的方法
  • 分期购车的会计分录
  • 转账凭证摘要怎么写原材料的
  • 系统托盘图标禁用
  • 没有取得发票的成本可以税前扣除吗
  • 红字发票只能一张一张开吗
  • 公允价值变动损益借贷方向增减
  • 超经营范围开具发票
  • 银行询证函费用减免
  • token验证器
  • 通信原理简明
  • Ubuntu18.04配置允许远程访问
  • 用友u8反结账反记账的操作步骤
  • 其他非流动资产是会计科目吗
  • 员工办理健康证需要什么材料
  • java 邮件
  • jsoncpp使用
  • 公司的现金收入包括
  • u8已经记账的凭证怎么修改
  • sql server删除表命令
  • 母公司与子公司内部合作协议
  • 管理费用科目包括
  • 购货方收到销售折扣发票怎么入账
  • 没有发票可以先付款吗
  • 广告服务费一般几个点
  • 以前年度房租付了没计提
  • 折扣销售方式销售货物只要发票中有注明的折扣额
  • 印花税怎么申报缴纳
  • 负数发票要给税务局吗
  • 制造费用和直接人工的区别
  • 银行汇票如何兑现金
  • 无形资产的商誉是什么
  • 查询一个字段有哪些值
  • case在sql中
  • win8截屏在哪个文件夹
  • linux文件压缩和解压缩命令
  • uup windows
  • Skype.exe - Skype是什么进程 有什么用
  • win8系统的应用程序在哪里
  • window10耳机有电流
  • win7系统电脑开热点
  • linux服务器常用操作命令
  • perl正则表达
  • quick cocos UIListView之isItemInViewRect方法修正
  • javascript 语言精粹(修订版)
  • 解读css发展历史简述
  • javascript数据结构与算法第三版
  • jquery左右移动动画效果
  • 为什么买的酒精有香味
  • 如何查询车辆购买的保险是哪家保险公司
  • 山东统一发票查询平台
  • 如何查找迪士尼电话号码
  • 企业之间无偿借款是否交税
  • 南京市国家税务局溧水分局
  • 为什么征收城市建设维护税却不征收教育附加税
  • 专票清单用什么纸打印
  • 房地产企业土地增值税怎么计算
  • 青岛市医保网上办事大厅
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设