位置: 编程技术 - 正文

关于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)

  • 出口企业何时选择免(征)税申报方式?
  • 中税协网站怎样补学时
  • 增值税附加税的会计处理
  • 分公司财务负责人和总公司财务负责人
  • 小微企业注册流程及费用微
  • 个体工商户开普票流程
  • 创立一个公司,公司的运营理念
  • 股东费用如何入账
  • 非贸税务备案
  • 小规模人力资源外包税率
  • 企业物流成本会计核算问题研究
  • 视同销售收入计入会计利润吗
  • 有限合伙合伙人要求
  • 购入原材料退货的记账凭证怎么写
  • 以物易物方式销售货物例题
  • 什么情况下发票不能冲红
  • 如何购买车辆保险
  • 每月认证多少发票怎么算
  • 哪些人可以享受长护险
  • 免税项目进项税为什么不可以抵扣
  • 进出口总额比上年同期
  • 注册资本与注册资金的区别
  • 收入未实现成本怎么进
  • 中级会计考试考后审核需要什么资料
  • 如何修改系统时间为12/24小时制
  • 残疾人保障金汇算清缴填在哪里
  • uc浏览器不让访问网页
  • PHP:pg_untrace()的用法_PostgreSQL函数
  • 金融资产终止确认是什么意思
  • php umask
  • 银行存款转定期存款分录
  • 营业外收入主要来源
  • 微信支付开发步骤
  • token验证器
  • thinkphp框架入门
  • yolov5 output
  • vue uncaught typeerror
  • 贷款和应收款项属于金融资产吗
  • wordpress怎么用
  • 总公司不是小微企业,分公司独立核算的
  • 公司间代收款需要开票吗
  • 企业之间收的借款利息该如何交税 原文
  • 办理税控盘
  • 企业所得税预缴少缴纳了,需要交滞纳金吗?
  • 印花税核定征收比例取消了吗
  • 分公司税务登记流程与操作手册
  • 资产负债表日后事项是指资产负债表日之后至审计报告
  • 别人公司过账用自己的银行卡会查吗
  • 计提加计抵减
  • 日常费用报销表格
  • 出售无形资产和固定资产计入什么科目
  • 企业合并的账务处理
  • 电话布线使用网络
  • 以前年度负债调整
  • 简易计税方法适用什么服务
  • 月末库存商品能抵税吗
  • 企业购买的土地计入什么科目
  • 小规模纳税人如何计算增值税
  • 查看sqlserver操作记录
  • mysql怎么查询数据表
  • sql server临时表创建语句
  • window2008 64位系统没有office组件问题分析及解决
  • stdin命令
  • win71
  • 因以下文件的损坏或者丢失,windows无法启动hal.dll
  • 苹果mac查看
  • Win10系统的电脑可装Wlin7系统吗
  • win7系统桌面不能新建文件夹
  • linux bzz
  • ie6浏览器兼容模式怎么设置在哪里
  • Android一分钟环境搭建,包含Mac、Linux、Windows
  • perl脚本执行顺序
  • shell基础教程
  • js设置rem
  • js模块化框架
  • jquery使用教程
  • 四川国税网上申报
  • 国家财政税务局
  • 进口消费税怎么入账
  • 税务系统领导干部监督管理办法
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设