IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 移动开发 -> 设置Application.targetFrameRate没有起作用的原因 -> 正文阅读

[移动开发]设置Application.targetFrameRate没有起作用的原因

1)设置Application.targetFrameRate没有起作用的原因
?2)Unity如何监听程序退出,包括被后台kill
3)降低Mesh LOD是否会降低片元函数的执行次数
4)TMP SubMeshUI出现的原因


这是第304篇UWA技术知识分享的推送。今天我们继续为大家精选了若干和开发、优化相关的问题,建议阅读时间10分钟,认真读完必有收获。

UWA 问答社区:answer.uwa4d.com
UWA QQ群2:793972859(原群已满员)

Performance

Q:在代码里设置了Application.targetFrameRate并没有起作用,请问是什么原因?

A1:题主可以检查一下引擎设置中VSync设置是否开启。如下图,可以调成Don't Sync再试试。

经测试,VSync关闭时,Application.targetFrameRate的锁帧效果正常生效;VSync开启时,实际帧率总是会达到设备支持的最大帧率,从而使Application.targetFrameRate的锁帧失效。

举例而言,在小米10上进行测试,开启VSync后,尽管在代码中设置Application.targetFrameRate=60,但实际帧率会达到90,从而使得项目的GPU压力高于预期。

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

A2:移动平台会跟手机有关,不会超过最大的刷新率。看下官方文档:
Application-targetFrameRate - Unity 脚本 API

感谢zerolj@UWA问答社区提供了回答,欢迎大家转至社区交流:
在代码里设置了Application.targetFrameRate并没有起作用,请问是什么原因? -- UWA问答 | 游戏开发者互动问答社区 | 侑虎科技


Android

Q:如果实现了MonoBehaviour.OnApplicationQuit这个方法,在PC或者编辑器下用可以监听到,但是我发现,发布Android时这个函数不会被监听到。

使用Application.Quit方法退出可以监听到,但是如果直接被后台杀死,那么就无法监听到。

想请问有没有别的方法,能在各种情况下(强制退出或后台kill等)监听到程序退出?

A:将项目导出成Android项目,此时导出的项目目录unityLibrary\src\main\java\com\unity3d\player下有一份UnityPlayerActivity.Java文件,里面的代码是在控制UnityPlayer的生命周期。

Android生命周期:

根据以上周期,游戏正常退出会调用Quit,系统杀进程则不会触发Quit。

所以可能建议考虑一些别的办法。比如onSaveInstanceState()和onRestoreInstanceState()这两个事件,以及通过编写Servise辅助检测Uniy项目的活动状态。

如果你想编写安卓直接交互Unity的代码,也可以像这样写:
mUnityPlayer.UnitySendMessage(“receiveObj”, “UnityMethod”, “This is args.”);

感谢Isle@UWA问答社区提供了回答,欢迎大家转至社区交流:
在代码里设置了Application.targetFrameRate并没有起作用,请问是什么原因? -- UWA问答 | 游戏开发者互动问答社区 | 侑虎科技


Rendering

Q:镜头固定,如果模型使用Mesh LOD请问除了降低顶点函数执行次数,还会降低片元函数次数?

或者影响片元函数的执行次数跟哪些因素有关?

A1:那就只能降屏幕分辨率或者进行深度剔除,AlphaTest等提前剔除的手段。

感谢欧月松@UWA问答社区提供了回答

A2:补充楼上,主要是看Primitive光栅化之后的占屏幕像素数量(这个受到渲染分辨率的影响)。当然还要考虑隐藏面消除,Early-Z等避免Fragment计算的因素。

感谢Xuan@UWA问答社区提供了回答,欢迎大家转至社区交流:
在代码里设置了Application.targetFrameRate并没有起作用,请问是什么原因? -- UWA问答 | 游戏开发者互动问答社区 | 侑虎科技


TextMeshPro

Q:现在在使用Unity 2019.4.34f1版本和TextMeshPro 2.1.6版本开发功能,在项目中有两个字体,Font_Main和Font_Main_Fallback。

假如在Font_Main设置了Fallback Font Assets,创建的TextMeshPro文本组件下会有一个子节点TMP SubMeshUI [Font_Test_1 Material + KaiTiJianCu Atlas],而且还无法删除,删除后会再次自动出现;假如不设置Fallback Font Assets,那么就可以把子节点TMP SubMeshUI [Font_Test_1 Material + KaiTiJianCu Atlas]删除,请问这个有什么作用?会对性能有影响吗?

A:如果主字体中没有对应的Unicode的文字时,就会使用Fallback的字体显示。

感谢萧小俊@UWA问答社区提供了回答,欢迎大家转至社区交流:
在代码里设置了Application.targetFrameRate并没有起作用,请问是什么原因? -- UWA问答 | 游戏开发者互动问答社区 | 侑虎科技

封面图来源于网络


今天的分享就到这里。当然,生有涯而知无涯。在漫漫的开发周期中,您看到的这些问题也许都只是冰山一角,我们早已在UWA问答网站上准备了更多的技术话题等你一起来探索和分享。欢迎热爱进步的你加入,也许你的方法恰能解别人的燃眉之急;而他山之“石”,也能攻你之“玉”。

官网:www.uwa4d.com
官方技术博客:blog.uwa4d.com
官方问答社区:answer.uwa4d.com
UWA学堂:edu.uwa4d.com
官方技术QQ群:793972859(原群已满员)

  移动开发 最新文章
Vue3装载axios和element-ui
android adb cmd
【xcode】Xcode常用快捷键与技巧
Android开发中的线程池使用
Java 和 Android 的 Base64
Android 测试文字编码格式
微信小程序支付
安卓权限记录
知乎之自动养号
【Android Jetpack】DataStore
上一篇文章      下一篇文章      查看所有文章
加:2022-07-17 16:34:46  更:2022-07-17 16:38:10 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/25 2:19:03-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码