zoukankan      html  css  js  c++  java
  • Unity targetFrameRate 渲染帧率修改

    原文地址:https://docs.unity3d.com/ScriptReference/Application-targetFrameRate.html

    描述:  

         指示游戏尝试以指定的帧率进行渲染(渲染帧率)。

         默认的targetFrameRate是一个特殊值-1,它指示游戏应以平台的默认帧率进行渲染。此默认速率取决于平台:

         - 在独立平台上,默认速率是最大可达到的帧速率。

           - 在移动平台上,由于需要节省电池电量,因此默认帧率小于最大可达到的帧速率。通常在移动平台上,默认帧率为每秒30帧。

      - 所有移动平台都具有针对其最大可达到帧率的修正上线,该上线等于屏幕的刷新率(60Hz=60fps,40Hz = 40fps,...).Screen.currentResolution 包含屏幕的刷新率

      - 此外,所有移动平台只能在VBlank上显示帧。因此,您应该将targetFrameRate设置为-1,或者将其设置为等于屏幕的刷新率,或者将刷新率除以整数。否则,结果帧率始终低于targetFrameRate。注意:如果将targetFrameRate设置为刷新率除以整数,则整数除法将导致与将QualitySettings.vSyncCount设置为该整数相同的值相同的有效fps。

          - IOS会忽略QualitySettings.vSyncCount设置。取而代之的是,设备在帧准备就绪并且应用程序达到targetFrameRate之后,会在第一个可能的VBlank上显示帧。

          - 在WebGL上,默认值使浏览器可以选择帧率以匹配其渲染环定时,这通常会产生最平滑的结果。仅当要限制WebGL上的CPU使用帧率时才建议使用非默认值。

        - 使用VR时,Unity将使用SDK指定目标帧率,并忽略游戏指定的值。

      设置targetFrameRate不能保证将获得帧速率。由于平台的具体情况,可能会有波动,或者游戏可能无法达到的帧速率,因为设备太慢。

           此外如果设置了QualitySettings.vSyncCount属性,则将忽略targetFrameRate,游戏将使用vSyncCount和平台默认渲染速率来确定目标速率。例如如果平台的默认渲染速率为每秒60帧,而vSyncCount设置为2(在Quality Setting 面板中对应的名字是 Every Second V Blank)

      在编辑器中targetFrameRate仅影响游戏视图,对其他编辑器没有影响。

        public void class Example
        {
            public void Start()
            {
                //如果你想自定义渲染帧率,必须将vSyncCount设置为0或者在QualitySetting面板中将V Sync Count 选为Don't Sync
                QualitySettings.vSyncCount = 0;
                Application.targetFrameRate = Screen.currentResolution.refreshRate / 4;
            }
        }

      

  • 相关阅读:
    自动对一个文件夹下的N个word文件批量执行一个宏
    PHP正则匹配联系方式手机号、QQ、微信、邮箱、固定电话
    私信基本功能数据库设计
    ArcGIS三分式标注、四分式标注和同时上下标实现
    Word2019文档中将页面边框更改为文本边框的方法
    Arcgis彻底删除和卸载
    ArcMap中各种基本概念的介绍
    ArcGIS Python工具箱.pyt裁剪工具
    C# Object对象的ToString方法在转换日期时丢失毫秒
    2020年糖尿病领域中国学者学术影响力排名
  • 原文地址:https://www.cnblogs.com/sy-liu/p/14031787.html
Copyright © 2011-2022 走看看