MuMu模拟器运行一段时间后Device.Present耗时突然上升

news2024/11/15 4:57:14

1)MuMu模拟器运行一段时间后Device.Present耗时突然上升
2)​如何在运行过程中获得温度信息
3)Input System鼠标更换主按键的Bug
4)如何禁止Unity向https://config.uca.cloud.unity3d.com发送设备信息


这是第347篇UWA技术知识分享的推送,精选了UWA社区的热门话题,涵盖了UWA问答、社区帖子等技术知识点,助力大家更全面地掌握和学习。

Platform

Q:MuMu模拟器运行一段不固定的时间后Device.Present耗时突然上升,其中看Profiler里的有一个加载的信号量等待时间很长,不明白其中原因,想问问是否有朋友可以帮忙解释。

下图是用Profiler记录到的一个过程:


使用的引擎版本:Unity 2019.4.28f。

MuMu模拟器尝试了32位和64位的多个版本都能复现这个问题,真机和其它模拟器没有遇到。

我们对比相同引擎版本的另外一个项目,发现以下设置似乎会影响这个问题,还不是非常确定,说不确定是因为两点:
1. 这个问题发生时间不确定;
2. 在一个同事的模拟器上只需要将BlitType设置为Always就没有遇到上述问题,而另外一个同事的模拟器需要设置BlitType为Always并且禁用Optimized Frame Pacing。

A1:我也碰到了相同的问题,目前好像只有关闭Optimized Frame Pacing有效。

感谢JackCheng@UWA问答社区提供了回答

A2:建议尝试,隔一段时间就强制设置一下限帧:

IEnumerator Start()
{
    yield return new WaitForSeconds(10);

    Application.targetFrameRate = 31;

    Application.targetFrameRate = 30;
}

感谢littlesome@UWA问答社区提供了回答

A3:也遇到完全一样的问题。感觉模拟器闲置一边更容易出现(一般十分钟内),一直有操作的话反而不太容易(大约需要一个小时)。

一般情况下,游戏卡死往往模拟器也会很卡,这种卡的情况下,模拟器几乎没啥影响,可以正常开其他东西。怀疑模拟器对Google的这个Optimized Frame Pacing支持不太好,换过更高版本的Android SDK也是无效。

打开这两个选项,的确对手机端的体验有一定提升。

现在想要探索的解决思路是判断Andorid系统版本比较低的情况下,运行时关闭 Optimized Frame Pacing。

目前还没找到运行时关闭的办法。

感谢leviyuan@UWA问答社区提供了回答


Performance

Q:请问如何在运行过程中获得温度?我需要做个功能,如果温度高就降帧和降画质。

A:温度统计的规则还是比较复杂的,因为不同的设备获取到的温度值的数量很不一样(有些只能拿到电池温度,有些可以拿到20多个温度,包含电池、各个CPU、多个GPU、各种传感器等等),所以不同工具虽然获取机制差不多,但算出来的温度应该都会有些差异。

然后工具获取到的温度值和手感温度大多数情况下是不对应的(会出现温度值高,但手感温度不高的情况),所以不太建议把获取的温度值作为准确的发热依据,最好还是用FPS之类可以准确统计的值。

该回答由UWA提供


Script

Q:问题描述:把鼠标右键绑定一个动作名Cancel,此时点右键时能收到事件,然后在设置里把鼠标的主按键换成右键,此时我们的预期是点左键会收到事件,点右键收不到事件,但是在大部分电脑上还是右键收到事件Cancel。

临时解决方案:鼠标按键功能不通过Input System实现,用Input.GetMouseButtonDown来实现。

Unity版本:2020.3
Input System版本:1.3.0
系统:Windows10,Windows11

大家有没有遇到过这个问题,或者有没有解决方案呢?

A1:可能是你的键位映射没有设置好。正常情况下有一个默认键位设置,就是你们原本的。然后外层还有一层供修改的键位设置。一般操作时操作可修改的键位设置。

感谢曼华@UWA问答社区提供了回答

A2:Input System的思路是把代码实现的功能改成配制实现,所以运行时不应该再去修改设置,还有一点就是相同的配制在不同电脑上的表现不一致,如果上层的功能依赖一个不稳定的底层,上层是没有办法修正的。

感谢题主李伟@UWA问答社区提供了回答


Platform

Q:Unity转微信小游戏,发现启动的时候会向https://config.uca.cloud.unity3d.com发送请求,影响启动时间。

有没有办法关掉,版本2019,2021。

A:发布设置里看看有没有Disable HW Statistics这样的关键字。

感谢李伟@UWA问答社区提供了回答

封面图来源于网络


今天的分享就到这里。生有涯而知无涯,在漫漫的开发周期中,我们遇到的问题只是冰山一角,UWA社区愿伴你同行,一起探索分享。欢迎更多的开发者加入UWA社区。

UWA官网:www.uwa4d.com
UWA社区:community.uwa4d.com

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/854472.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

手把手写教学C#写一个串口接收助手

C#上位机 文章目录 C#上位机[TOC](文章目录) C#一个简单串口助手创建工程:一、控件的设置1.显示TextBOX2.选项框comboBOX3.标签label4.按键button 二、组件的设置1.添加定时器time组件2.添加串口组件serialPort 三、代码部分总结 C#一个简单串口助手 实现简单的串口…

12_Vue3中的其它变化

1. 全局 API 的转移 2.其它改变

SpringBoot整合Mybatis(开启驼峰映射、分页)

目录 Mybatis的简单使用 依赖 项目结构 父pom文件 pom文件 配置文件 实体类 controller mapper xml 结果 mybatis开启驼峰映射 方式一: 方式二: 方式三: 方式四: MyBatis结合PageHelper进行分页 父pom文件 pom文…

Linux命令200例:df用于显示文件系统的磁盘空间使用情况

🏆作者简介,黑夜开发者,全栈领域新星创作者✌。CSDN专家博主,阿里云社区专家博主,2023年6月csdn上海赛道top4。 🏆数年电商行业从业经验,历任核心研发工程师,项目技术负责人。 &…

发现 SaaS 专业服务的潜力,实现优质的客户支持

您正拥有优秀的产品或服务、引人注目的网站和不断增长的客户群,一切都很顺利,但有一件事让您夜不能寐:客户支持!您想为客户提供一流的服务,但您发现教整个团队怎样以让每个客户都满意的方式处理客户查询,还…

分享一个RS触发器的趣味介绍

这段时间看到一个对触发器比较有意思的介绍,记录一下 他是用两个或非门和一个灯泡进行举例的,如下图 初始状态下,灯泡熄灭,且两个开关都属于断开状态 先将蓝色或非门的开关闭合,红色或非门开关继续保持断开&#xff…

prometheus部署

一、前言 Prometheus 是一个开源的系统监控和警报工具,用于收集、存储和查询时间序列数据。它旨在提供高效的多维数据收集和查询功能,帮助用户监控其应用程序和基础设施的性能,并在出现问题时触发警报,总来得说prometheus是用来收…

用3dmax制作软包床模型的方法

3dmax是最常用的三维动画制作软件之一,通过建模、添加材质,贴图、渲染等流程,才能制作出一张逼真的图。所以想学3dmax的话,还是要找一些专业的教程,学习起来才能事半功倍。 用3dmax制作软包床模型的方法 软包床是能够…

【从零开始学习JAVA | 第四十三篇】UDP的三种通信方式

目录 前言: UDP三种通信方式: 单播: 组播: 广播: 三种通信方式的应用场景: 总结: 前言: 在我们初学网络编程的时候,我们就介绍过两个极其重要的协议&#xff0…

Python之特殊属性、对象的浅拷贝和深拷贝

一、特殊属性 Python对象中包含了很多双下划线开始和结束的属性,这些是特殊属性,有特殊用法。这里我们列出常见的特殊属性: 特殊属性含义obj.__dict__对象的属性字典obj.__class__对象所属的类class.__bases__表示类的父类(多继承时&#x…

solidworks(2)

记得选择双向

【100天精通python】Day26:文件和IO操作_文件指针的定位与移动,序列化与反序列化

目录 专栏导读 1 文件的基本操作 1.1 参考 1.2 获取文件属性: 2 定位和移动文件指针 3 序列化和反序列化 3.1 序列化与反序列化概述 3.2JSON序列化与反序列化 JSON序列化: JSON反序列化: 3.3 pickle 序列化与反序列化 pickle 序列…

CTF REVERSE练习之病毒分析

首先介绍两个知识点,在后面的实验中运用到的。 1、7Zip 7-Zip 是一款开源软件。我们可以在任何一台计算机上使用 7-Zip ,包括用在商业用途的计算机。7-Zip 适用于 Windows 7 / Vista / XP / 2008 / 2003 / 2000 / NT / ME / 98。并且有面向 Mac OS X、…

开发中常用的数据库日志都长啥样呢?

目录 常见日志级别 数据库日志 Undo log 逻辑日志 redolog binlog 慢查询日志 AOF 文本文件 RDB 二进制文件 常见日志级别 DEBUG:用于详细记录应用程序的运行过程,如变量值、执行流程等。DEBUG级别的日志通常用于开发和调试过程中,以…

不看后悔一辈子!不看错过50K!历尽心血总结Redis全局命令

前言: 📕作者简介:热爱编程的敖云岚,致力于C、Java、Python等多编程语言,热爱编程和长板的运动少年! 📘相关专栏:Java基础语法,JavaEE初阶,数据库&#xff0c…

【Python】单元测试框架unitest及其高级应用

目录 Unittest 简单使用示例 重要概念 断言方法 深入 高级应用 认识Page Object 资料获取方法 Unittest Unittest是python的一个单元测试框架,但是它不仅适用于单元测试,还适用自动化测试用例的开发与执行。我们可以很方便的使用它组织执行测试用…

JVM垃圾回收篇-垃圾回收算法

JVM垃圾回收篇-垃圾回收算法 标记清除(Mark Sweep) 概念 collector指的就是垃圾收集器。 mutator是指除了垃圾收集器之外的部分,比如说我们的应用程序本身。 mutator的职责一般是NEW(分配内存)、READ(从内存中读取内容)、WRITE(将内容写入内…

CSMA/CD协议原理

共享总线以太网具有天然的广播特性,即使总线上某个站点给另一个站点发送单播帧,表示帧的信号也会沿着总线传播到总线上的其他各站点 。 当某个站点在总线上发送顿时,此时,如果总线上的其他站点也要在总线当某个站点在总线上发送顿…

Qt应用开发(基础篇)——时间微调输入框 QDateTimeEdit、QDateEdit、QTimeEdit

一、前言 QAbstractSpinBox是全部微调输入框的父类,这是一种允许用户通过点击上下箭头按钮或输入数字来调整数值的图形用户界面控件,父类提供了当前值text、对齐方式align、只读readOnly等通用属性和方法。在上一篇数值微调输入框中有详细介绍。 QDateTi…