一些VR延迟优化方法

2023-11-05

VR中的”延迟”, 特指”Motion-To-Photon Latency”, 指的是从用户运动开始到相应画面显示到屏幕上所花的时间.
这里写图片描述
这中间经过了大概这么几个步骤:

  1. 传感器采集运动输入数据
  2. 采集到的数据进行过滤并通过线缆传输到主机
  3. 游戏引擎根据获取的输入数据更新逻辑和渲染视口
  4. 提交到驱动并由驱动发送到显卡进行渲染
  5. 把渲染的结果提交到屏幕, 像素进行颜色的切换
  6. 用户在屏幕上看到相应的画面

当然, 实际上还有很多细节问题, 比如屏幕上的像素并不是同一时间切换的, 可能面上面的那行先切换, 再一行行更新到最下面的, 在这里就不纠结这些细节了.

这其中的每一个步骤都会产生一定的延迟, 而目前公认的大众能接受的延迟是20ms以下, 这基本上可以做为衡量一个VR头显是不是合格的一个标准. 虽然20ms是非常短的时间, 但通过努力还是可以达到的, 主要有这么几个思路:

硬件层面的优化

  • 提升传感器的采样频率, 减少刷新率与传感器频率的同步等待时间消耗
  • 提升传感器的精度, 减少对采样数据进行稳定性过滤产生的延迟
  • 采用有线传输也有一部分原因是出于延迟的考虑
  • 屏幕使用OLED替代LCD, 减少像素颜色切换的时间
  • 提升屏幕刷新率, 主流的屏幕是60Hz, 那每帧就是16.67ms; 如果提升到90Hz, 那每帧就是11.11ms

大部分的手机VR产品在延迟上都是不合格的, 最明显的表现就是转头时的画面不连续/抖动/残影等:

  • 市面上的手机采用OLED屏的还是少数, 比如iPhone配个VR壳子那延迟就很感人
  • 如果依赖手机的陀螺仪进行转向模拟, 其精度和频率远远达不到要求
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

一些VR延迟优化方法 的相关文章

  • unity游戏重新开始,退出,停止,继续按钮及打包发布

    一 游戏退出按钮 脚本Out 分为编辑状态下退出和打包编译后退出 这两种都要写上 using System Collections using System Collections Generic using UnityEngine usi
  • Threejs + vue 学习- VR 看房

    知识点 参考链接 threejs github 图片下载 https gitee com congyingcy threejs learning tree master three public imgs 直接跳转 代码下载 直接跳转 立方
  • UnityVR--PoolManager--对象池1

    本篇中使用的API gameObject CompareTag 标签 UnityEvent 事件管理 ObjectPool
  • 谷歌整体战略:关于人工智能、云服务和登月计划的未来

    转载自我的博客 谷歌整体战略 关于人工智能 云服务和登月计划的未来 CB Insights 今日发布了一篇关于谷歌业务战略的深度分析报告 Google Strategy Teardown Betting The Future On AI C
  • QQ-AR实物识别!香蕉扫一扫,解救小黄人?

    神偷奶爸3 已于7月7日正式登录国内各大院线 奶爸格鲁继续率领小黄人们贱萌作死 早先 神偷奶爸3 创造了北美影史最高4529馆开画记录 同时首周报收7541万美元 国内上映前海外票房累积1 421亿美元 毫无意外地登顶北美票房榜首座 根据猫
  • UnityVR--小程序4--第一人称控制器

    在没有VR设备的情况下 可以在Windows系统中运行我们之前做好的小游戏 只需要将VR场景中的OVRPlayerController更换成我们自己制作的第一人称控制器就行 之后可以用键盘和鼠标控制人物的移动 跳跃 转向 就和普通的3D游戏
  • 【小沐学CAD】虚拟仿真开发工具:GL Studio

    文章目录 1 简介 2 软件功能 3 应用行业 3 1 航空 3 2 汽车 3 3 防御 3 4 工业 3 5 电力与能源 3 6 医疗 3 7 空间 3 8 科技 结语 1 简介 https disti com gl studio htt
  • 如何使用Blender建3D汉字(保姆级别的详细)

    未来的游戏开发程序媛 现在的努力学习菜鸡 本专栏是我关于建模的学习笔记 本篇是如何使用Blender建3D汉字 这是这个专栏的第一篇 因为不知道把这篇放到哪里 就开了个新的 如何使用Blender建3D汉字 就这种的 如果是的话可以接着往下
  • unity经营类游戏-植树造林-虚拟现实期末大作业

    期末大作业 unity经营类游戏 植树造林 附下载链接 点我下载资源 有两个页面 一个是菜单页面有开始游戏和结束游戏两个按钮 点击开始游戏进去游戏 开始可以种植草地 下面出现的分数够了 就可以养小鸟中蘑菇 场地可以随鼠标移动 下面有分数 暂
  • Unity3D-VR《静夜诗》3-开始按钮与开始文本信息

    Unity3D VR 静夜诗 3 开始按钮与开始文本信息 1 开始按钮及开始信息文本UI对象的设计 1 1容器对象PanelBeginUI 1 2开始信息文本TextBegin 1 3开始按钮BtnBegin 2 开始按钮实现凝视触发 凝视
  • 医疗虚拟仿真和虚拟现实有什么区别?哪个更好?

    随着我们在仿真教育中越来越多地使用新技术 区分虚拟模式的类型很重要 虚拟仿真是一个统称 用来概括术语来描述各种基于仿真的体验 从基于屏幕的平台到沉浸式虚拟现实 然而 各虚拟平台在保真度 沉浸感和临场感的水平上有很大差异 医疗教育中存在许多虚
  • unity添加多个相机渲染物体多个视角的图片

    添加相机 我渲染物体多视角的图片是要用到cave空间 所以添加了四个相机 并且都放在空物体下面 还有两个物体 用在cave空间要保证四个相机的位置一致 rotation互成90 前 0 0 0 右 0 90 0 左 0 270 0 下 90
  • 8 种流行的计算机视觉应用

    计算机视觉是人工智能的一部分 它使计算机能够从计算机化的图片 视频中获取重要数据 并根据这些数据提出建议 简单地说 你可以理解 如果人工智能允许计算机思考 那么计算机视觉就会鼓励它们去看 注意到和理解 这是在深度学习和机器学习的帮助下完成的
  • unity点击按钮,弹出image和Text做的弹出框

    让弹出框开始不显示 点击按钮后显示 在Hierarchy面板上新建Image 下面我命名为win 再在上面放置Image和Text组成弹出框 如下图 建立一个Message脚本 using System Collections using
  • unity 使用vrtk4的插件 打包htv vive VR客户端包,手柄不生效

    背景 目的 u3d使用vrtk开发pico应用 vrtk是为了到时候无缝衔接后续要买的htc vive pro 2 先导入了tilia importer 也就是vrtk4 0 根据教程模块化使用功能 和pico官网下的 PICO Unity
  • UnityVR--组件3--Line Renderer--线性渲染

    目录 线性渲染组件简介 绘制线条Line Renderer组件介绍 绘制拖尾Trail Renderer组件介绍 应用1 使用Line Renderer绘制线段 应用1实现 使用系统工具或自定义工具绘制线段 应用2 Trail Render
  • Unity学习笔记(一)—— 基础知识

    一 基础知识 1 开发团队组成 2 unity特点 图形界面 所见即所得 入门简单 支持C 比OC C 更友好 js 国内外资源丰富 因为使用的人多 跨平台性好 PC端 移动端等 对VR AR的支持最完善 3 成功案例 游戏 炉石传说 神庙
  • 什么是概率匹配

    概率匹配是一种在信息论和统计学中常用的方法 用于将一个随机事件的概率分布与另一个概率分布进行匹配或逼近 它在数据处理 编码 压缩和模型选择等领域具有重要的应用 为我们理解和处理复杂的概率分布提供了一种有效的工具 首先 让我们来了解概率匹配的
  • 0基础学习VR全景平台篇第129篇:认识单反相机和鱼眼镜头

    上课 全体起立 大家好 欢迎观看蛙色官方系列全景摄影课程 一 相机 单反和微单 这里说的相机是指可更换镜头的单反 微单数码相机 那两者有何差异呢 1 取景结构差异 两者最直观的 区别 在于 微单相机
  • 线上企业展厅:企业发展新利器,轻松实现线上企业展示

    引言 在当今数字化时代 线上企业展厅已经成为企业展示品牌形象 推广产品的重要手段 它不仅可以帮助企业拓宽市场 提升品牌知名度 还能为企业带来更多的商业机会 那么线上企业展厅有什么优势 如何搭建成功的线上企业展厅 一 线上企业展厅的优势 1

随机推荐

  • 世上最全NVDIA GPU参数列表: V100, A100, A800,H100,3090,4090, A40, A30等性能参数

    1 GeForce RTX 4090 GeForce RTX 4090 GPU 引擎规格 NVIDIA CUDA 核心数量 16384 加速频率 GHz 2 52 基础频率 GHz 2 23 显存规格 标准显存配置 24 GB GDDR6X
  • GET请求传参对象的list

    之前试过get请求传参是数组 但是试的都是基本类型 现在需求要是自定义的对象 怕写的不对 就提前自测了一下 调用方代码 Resource private TestClient testClient Test public void apiT
  • B站教学资源爬虫

    B站教学资源爬虫 最近遇到了点麻烦事 各种学习网站的不维护或者转移路线 于是将目标站点定位到了b站的学习资源 所用语言和相关模块 python3 6 requests PIL 目前网站特点分析 b站是一个具有大量资源数据的网站 但是如何将目
  • 14、OSPF学习心得2

    1 OSPF的报文 1 Hell报文 作用 1 建立和发现邻居 2 维护OSPF的邻居关系 2 DBD报文 用于描述LSDB的摘要信息 3 LSR报文 用于向对方请求所需的具体的LSA信息 4 LSUpdate 用于向对方发送具体的LSA
  • 在Linux上搭建JAVAEE的开发环境

    1 安装JDK 1 下载安装包 jdk 8u121 linux x64 tar gz 2 把JDK安装包上传到Linux系统中的 opt 目录下 通过xftp软件连接上Linux 然后双击要上传的安装包即可上传 3 解压JDK安装包 命令
  • 逻辑漏洞归纳总结

    Web安全渗透方向 三大核心 输入输出 登录体系 权限认证 典型的web漏洞 注入 跨站 上传 代码执行等属于输入输出这个层级 这也是OWASP早期比较侧重的 近年来 像越权漏洞 逻辑绕过 接口安全等逐渐增多 这些属于登录体系和权限认证这个
  • LaWGPT基于中文法律知识的大语言模型_初步安装

    准备代码 创建环境 下载代码 git clone git github com pengxiao song LaWGPT git cd LaWGPT 创建环境 conda create n lawgpt python 3 10 y cond
  • 【高效办公】程序员专用云笔记推荐

    一 参考资料 推荐几款好用的云笔记软件 云 社区 腾讯云 Markdown基本语法 简书 Markdown菜鸟教程
  • webpack-serve 的使用

    webpack serve 官方已经不维护了 还请继续食用webpack dev server 基本情况 仓库地址 配合webpack4食用最佳 在webpack3及以前的版本会有帮助信息提示 因为热加载使用的是WebSockets 所以在
  • 基于Arduino的循迹小车搭建

    材料准备 我做的是双层的循迹小车 这个网上有套件可以直接购买 到了之后组装是比较简单的 如果有不会组装的去bilbil上找一下教程也是很方便的 https www bilibili com video BV1Pe4y197DN spm id
  • 工作流Activiti7整合SpringBoot使用

    前言 一个软件系统中具有工作流的功能 我们把它称为工作流系统 一个系统中工作流的功能是什么 就是对系统的业务流程进行自动化管理 所以工作流是建立在业务流程的基础上 所以一个软件的系统核心根本上还是系统的业务流程 工作流只是协助进行业务流程管
  • 8086的写总线周期

    http www2 zzu edu cn qwfw wjylcai list asp id 127 写总线周期用来完成对存储器或I O端口的一次写操作 1 T1状态 总线周期的第一个时钟周期主要用于输出存储器地址或I O地址 如果M IO
  • android 右边充满 左边自适应,RelativeLayout中的格局,自适应宽度布局

    RelativeLayout中的布局 自适应宽度布局 该图片中为android布局 总布局为 RelativeLayout AtLeft 为居左 android layout height wrap content android layo
  • mf253s移动版变全网通_中国电信发布5G全网通终端需求白皮书v2.0

    2019 11 07 10 56 2019年10月31日 中国5G正式商用 标志着5G发展已进入快车道 整个社会各行各业对5G热情高涨 业界纷纷增加5G投入 5G终端的发展进程必将加快 市场空间巨大 潜力无限 为更好地引导产业链 推动5G加
  • nuxt.js服务端渲染使用flexible.js和postcss-px2rem实现移动端自适应—淘宝弹性布局方案(750px设计稿)

    在用vue做服务端渲染的时候需要对移动端做适配所以要用到postcss 2rem插件 第一步 首先下载flexible js 可加载阿里的cdn文件 http g tbcdn cn mtb lib flexible 0 3 4 flexib
  • Error: Package: mysql-community-server-5.6.41-2.el7.x86_64 (mysql56-community) Requires:

    http www cnblogs com xiaoluo501395377 archive 2013 04 07 3003278 html MySQL登陆失败 ERROR 2002 HY000 Can t connect to local
  • JDK与Tomcat的安装及配置教程

    code ran 超级详细的JDK与Tomcat的安装及配置教程 1 JDK的安装与环境配置 首先我们需要去官网上下载JDK对应的版本 以我现在要下载的1 8为例 1 官网 JDK官网地址 具体操作如下 然后下载之后去下载路径下去安装即可
  • k8s v1.2 web界面——kubernetes-dashboard详解

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 1 Kube dashboard介绍 dashboard功能 Kube dashboard是kube 1 2版本中新增的 具备与kubelet commandline类似的
  • LeetCode——049

    49 Group Anagrams My Submissions QuestionEditorial Solution Total Accepted 73397 Total Submissions 267525 Difficulty Med
  • 一些VR延迟优化方法

    VR中的 延迟 特指 Motion To Photon Latency 指的是从用户运动开始到相应画面显示到屏幕上所花的时间 这中间经过了大概这么几个步骤 传感器采集运动输入数据 采集到的数据进行过滤并通过线缆传输到主机 游戏引擎根据获取的