zoukankan      html  css  js  c++  java
  • VSync Count 垂直同步

    
    Unity3D中新建一个场景空的时候。帧速率(FPS总是非常低),大概在60~70之间。一直不太明确是怎么回事。如今基本上明确了。

    我在这里解释一下原因。如有错误,欢迎指正。在Unity3D中当执行场景打开Profiler的时候。我们会看到VSync 这一项占了非常大的比重。

    这个是什么呢,这个就是垂直同步。稍后再做解释。

    我们能够关闭VSync来提高帧速率,选择edit->project settings->Quality 在右側面板中能够找到VSync Count ,把它选成Don't Sync。这就关闭了VSync(垂直同步)。如今在执行场景看看,帧速率是不是提高非常多。

           如今来说说什么是垂直同步。要知道什么是垂直同步,必需要先明确显示器的工作原理。显示器上的全部图像都是一线一线的扫描上去的,不管是隔行扫描还是逐行扫描,显示器都有两种同步參数——水平同步和垂直同步。

           什么叫水平同步?什么叫垂直同步?

           垂直和水平是CRT中两个主要的同步信号。水平同步信号决定了CRT画出一条横越屏幕线的时间,垂直同步信号决定了CRT从屏幕顶部画究竟部。再返回原始位置的时间。而恰恰是垂直同步代表着CRT显示器的刷新率水平。

           为什么关闭垂直同步信号会影响游戏中的FPS数值?

           道理一点都不复杂,首先我们平时执行操作系统一般屏幕刷新率是多少?大概一般都是在85上下吧,那么显卡就会每依照85的频率时间来发送一个垂直同步信号。信号和信号的时间间隔是上两次屏幕更新的时间间隔

    假设我们选择等待垂直同步信号(也就是我们平时所说的垂直同步打开)。那么在游戏中也许强劲的显卡迅速的绘制完一屏的图像,可是没有垂直同步信号的到达,显卡无法绘制下一屏。仅仅有等85单位的信号到达。才干够绘制。

    这样FPS自然要受到操作系统刷新率执行值的制约。

            而假设我们选择不等待垂直同步信号(也就是我们平时所说的关闭垂直同步),那么游戏中作完一屏画面,显卡和显示器无需等待垂直同步信号就能够開始下一屏图像的绘制,自然能够全然发挥显卡的实力。可是不要忘记,正是由于垂直同步的存在,才干使得游戏进程和显示器刷新率同步,使得画面更加平滑和稳定。取消了垂直同步信号,固然能够换来更快的速度,可是在图像的连续性上势必打折扣。这也正是非常多朋友抱怨关闭垂直后发现画面不连续的理论原因。

  • 相关阅读:
    【WPF】自定义CheckBox复选框
    如何在WPF中引用Windows.System.Forms.Integration
    【转载】wpf DataGrid自动显示行号
    C#网络编程(订立协议和发送文件) Part.4
    C#网络编程(接收文件) Part.5
    状态模式
    C#网络编程(同步传输字符串) Part.2
    我的一个自己写的更新缓存的aop实例
    C#网络编程(基本概念和操作) Part.1
    mssql根据分类查询每个分类前100条数据 表名m_data,分类字段名m_type
  • 原文地址:https://www.cnblogs.com/liguangsunls/p/6849738.html
Copyright © 2011-2022 走看看