位置: 编程技术 - 正文

关于Unity3d后台运行——Application.runInBackground(unity后期)

编辑:rootadmin

推荐整理分享关于Unity3d后台运行——Application.runInBackground(unity后期),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:unity3d总结,unity3d程序,unity3d documentation,unity 后期处理,unity后处理教程,unity后处理教程,unity 后期处理,unity3d后端,内容如对您有帮助,希望把文章链接给更多的朋友!

在项目中使用VS_Socket_UDP_Sender发送消息到Unity3d_UDP_Receiver,接收正常,并且测试得Unity在后台时是可以正常接收消息的。

但是由于消息的内容是需要控制一个gameobject.render的,后台时只能接收不能进行处理。(原因:处理gameobject必须放在主线程OnGUI或者Update等之中,而接收UDP时使用一个新线程进行接收,两者之间矛盾出现在新线程无论前台后台都能更新,而主线程的相关方法只能在前台更新。)

于是想到使用Application.runInBackground=true

测试的结果如同期望,unity在接收到消息的时候无论前后台都能够进行更新。

但是问题出现了:(CPU:i3,双核,2.3GHz)

Application.runInBackground=false,发布后,无论前后台运行平均占CPU不到1%。后台不能正常处理。

关于Unity3d后台运行——Application.runInBackground(unity后期)

Application.runInBackground=true,发布后,当在前台运行时平均占CPU%~%,而当运行在后台时更是高达%~%。显然这种现象不是期望的结果,先记录下问题,稍后解决的话再补充解决方案。

结果:经过测试研究发现Unyty3d引擎Application.runInBackground=false的情况下占CPU少是由于其内部优化的结果,在DirectX中仅使用代码绘制一个变化的3d图形也会占去%~%的CPU。

个人猜测:

Application.runInBackground=false时由于窗口位置不会发生改变,Unity3d将3d场景放置在内存中进行绘制处理,因此占用CPU较少。原因:3d场景的基准位置即窗口位置不会发生改变,显卡中的数据不会发生大规模改变,多数数据在内存中。当窗口位置发生改变时,由于Application.runInBackground=false,游戏会暂停,待窗口位置确定并且前台运行时3d场景又确定了,又回到了占CPU较少的情况。

Application.runInBackground=true时由于窗口位置可能随时发生改变,Unity3d将窗口的更新交托给CPU进行处理,而由于每帧画面都需要进行处理,因此占用CPU较多。

局限分析:

测试的时候是用的自己的笔记本电脑,属于核心显卡,可能原本是在显卡内存储的,而由于核心显卡将显卡融合到CPU内,使得CPU占用较多。或许换到有独立显卡的计算机上就不会出现这样的问题。(百度的时候没有人提出这个问题可能就是由于几乎所有开发游戏的计算机配置都很好,独立显卡可能是最低要求。我的项目只是借用unity3d引擎开发一个应用,而非专业游戏,所以会出现此问题。之后在具有独显的电脑上进行测试。)

Unity之一天一个技术点(八)---旋转问题 旋转问题unity3d中围绕一个指定的点旋转gameobject.transform.RotateAround(pos:Vector3,rotateAngle:vector);参数1是要围绕的坐标点,第二个参数是旋转角度(x轴角度,y

Unity之一天一个技术点(九)---EasyTouch 旋转镜头 EasyTouch旋转镜头从EasyTouch的官方例子上看,它的左摇杆并不是控制整体的旋转镜头,而且左摇杆控制上下旋转,右摇杆控制左右旋转,十分不方便。假

Mac上如何打开两个Unity Unity打开两个Unity1.首先,在Unity的Preference面板里设置Alwaysshowwizard,如图:2.新建文本文件,内容为open-n/Applications/Unity/Unity.app,文件另存为.command,存

标签: unity后期

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

上一篇:Unity3D Vuforia Android 相机聚焦模式设置

下一篇:Unity之一天一个技术点(八)---旋转问题(unity f1)

  • 三税率什么意思
  • 税务行政复议是税务行政复议机关的裁决活动
  • 个人劳务报酬怎么申报个税
  • 个体户季报网上怎么报税
  • 单位出租不动产印花税
  • 转让金融资产需要交税吗
  • 负利润的话小型微利企业减免企业所得税吗
  • 工会支出发票抬头是企业名称可以吗
  • 企业所得税季报可以更正吗
  • 用现金购买办公设备会计分录
  • 准予抵扣的进项税范围
  • 外贸企业出口采购流程
  • 计提劳务成本月末需要结转吗
  • 证券清算款是什么科目
  • 工程项目企业座谈会新闻稿件
  • 车辆保险费的车船税计入什么会计科目
  • 发票章盖收据会被税务局罚款吗
  • 应交税费应交增值税的三级科目有哪些
  • 应税行为扣除额期初余额
  • 公司住宿费用记什么费用
  • 餐饮行业月营业额怎么算
  • 交易性金融资产属于流动资产吗
  • 新办企业税务办理
  • 借贷在会计中的增和减
  • 如何查询所属税务所
  • 发票验证查询系统官网入口
  • 如何理解增值税的三种类型?它们的区别是什么?
  • 冲销坏账怎么做分录
  • 生产的废料怎么做账
  • win10取消登陆密码
  • 毛利润,纯利润
  • 如何设置bios开关机
  • 公司换基本户需要多久
  • cpu风扇应该怎么调
  • 电脑pin码忘了开不了机,且鼠标失灵
  • PHP:Memcached::get()的用法_Memcached类
  • win11系统咋样
  • el-tree方法
  • 保姆级官方yolov7的训练自己的数据集以及项目部署
  • php怎么变成txt
  • 起征点适用于
  • 公司股东与公司往来怎么处理
  • 固定资产入账及摊销方法
  • 国家定额发票使用范围
  • 债权投资利息收入调增还是调减
  • 酒店打印要钱吗
  • 企业承担残疾比例是多少
  • 支付长期借款利息
  • 质保金 销售费用
  • 货物丢失怎么做分录
  • 已开票未收款怎么报税
  • 公司办理宽带套餐合法吗
  • 一般纳税人开错税率严重吗
  • 事业单位职工福利费使用范围和标准
  • 建账选用什么会计制度
  • 积分中的换元怎么使用
  • sql server数据库恢复
  • mysql修改允许远程连接
  • sqlserver2012序列号
  • win7打开控制面板快捷键
  • 32位操作系统不能玩cf
  • linux系统的基本特征
  • CentOS6 32/64位安装Adobe Flash Player组件的方法
  • 为大家详细介绍英语
  • 如何打开音量控制器
  • 升级win10系统后电脑变卡处理方法
  • win10开机多了一个账户怎么删除
  • react-native-modal
  • 从0开始
  • android从服务器获取数据
  • cad cl命令在哪里
  • perl mkdir
  • android源码分析实录
  • 教你用十行node.js代码读取docx的文本
  • 开通局域网共享工具
  • 提出好的建议
  • javascript常用的数据类型有哪些
  • jQuery使用Selectator插件实现多选下拉列表过滤框(附源码下载)
  • android图片压缩库
  • 监听页面滚动事件
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设