位置: 编程技术 - 正文

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

  • 哪些准备金支出可实现税前扣除?
  • 教育费附加的计征依据包括
  • 变动成本法的计算公式有哪些
  • 合伙企业缓交所得税
  • 非独立核算增值税在哪里交
  • 服务费的增值税怎么算
  • 营业执照注销要收费用吗
  • 公司没有业务了 可以办理停业
  • 异地施工如何缴工会经费
  • 房地产企业在开盘前的销售费用是否可以在税前扣除
  • 发票大头小尾什么意思
  • 未开票收入已缴税额怎么入账
  • 固定资产没收到发票收到实物入账有什么风险
  • 老板投资的钱怎么入账
  • 电商一定要注册公司吗
  • 钱汇错需要退回应该怎么做分录?
  • 出口退税进项抵扣了不退税可以吗
  • 年终奖扣税和工资扣税
  • 网上银行转账被骗能追回吗
  • 销售退回冲减主营业务收入吗
  • 企业筹办费会计处理
  • 账面价值和账面成本的区别
  • 行程单的金额怎么算
  • 固定资产净残值是什么意思
  • 连续亏损二年怎么处理
  • 专用发票红字发票怎么开
  • 工商年报网上申报时间2023年
  • 重装系统前需要注意什么
  • svchost一直在下载什么
  • 汽车消费税有发票吗
  • php timestamp
  • 委托加工物资如何转入生产成本
  • php7数据库操作
  • iqoo怎么开启无线充电
  • 缴纳社保公司需要税务登记吗
  • php邮件发送类
  • 线性回归csdn
  • js防抖函数和节流函数
  • 攻防世界web高手题答案
  • vue中解决跨域问题
  • 事业结余对应政府会计哪个科目
  • 收到银行结息收据3
  • 固定资产盘盈、盘亏的账务处理?
  • 退货可以开红字发票吗
  • 支付的劳务费是什么意思
  • 所得税年度报表申报完怎么打印
  • 第一次购买金税盘会计分录
  • 印花税都有什么类目
  • mysql 大量数据
  • 景点门票做什么科目
  • 计提的应收账款坏账准备的科目有哪些
  • 没收到发票也可以入账吗
  • 信息技术服务费属于什么费用
  • 以前年度损益调整结转到哪里
  • 超市卡发票可以作为费用吗
  • 计入税金及附加借方的内容
  • 成本会计核算方法论文怎么写
  • mysql常用查询
  • mysql太慢
  • mac安装mysql没看见初期密码
  • 苹果电脑安装win7系统教程
  • centos bond mode
  • 只需要30秒让让你的电脑速度快一倍
  • 如果不用2b橡皮擦2b铅笔 能扫的出来吗
  • usb3.0接口可以插优盘吗
  • mac系统文件名
  • spybuddy.exe - spybuddy是什么进程
  • linux邮件设置方法
  • windows xp
  • 在linux操作系统中,/etc/rc.d/init.d
  • win8iis安装配置
  • windows8怎么装
  • 关闭iebrowser
  • 利用用英文怎么翻译
  • Unity3D游戏开发标准教程
  • 西安市电子税务局
  • 福建省个人所得税税率表查询
  • 北京交通政务
  • 国家税务局大厅上班时间
  • 浙江医保怎么使用
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设