卡马克揭开VR延迟背后的真相】的更多相关文章

原文:http://oculusrift-blog.com/john-carmacks-message-of-latency/682/ 延迟是OculusVR所面对的最大挑战之一,  它不仅会分散玩家体验游戏时的注意力, 还会导致晕动症, 所以找出它背后的原因并消除它是非常重要的. 整个系统保持在50ms已经很快了, 但是还是可以感觉到延迟 20ms是可接受的最大延迟 传感器数据的推导预测可以缓解部分的系统延迟.但即使有一个非常复杂的人类头部运动模型, 也不能很好地处理开始运动和运动突变时的情况…
本文主要解读国内首届WebRTC大会背后的真相,文章来自博客园RTC.Blacker,支持原创,转载必须说明出处,更多详见www.rtc.help --------------------------------------------------- google于2011年就将WebRTC代码开源了,大会在国外也已经主办好几届了,有声有色,但为什么国内才首次举办呢? 其实国内之前也举办过几次,不过不能叫大会,只能叫内部交流会,因为规格和声势跟这次差几个等级, 有兴趣可以看看我下面这张之前在深圳…
导读:本文翻译自 Brendan Gregg 去年的一篇博客文章 “CPU Utilization is Wrong”,从标题就能想到这篇文章将会引起争议.文章一上来就说,我们“人人皆用.处处使用,每个性能监控工具里都在用”的 top 命令里的 “%CPU” 指标,是不对的,其并非用于衡量 CPU 的繁忙程度的正确指标,作者谴责了一下众人(或许也包括你我)的这一行为是具有很大的误导性(deeply misleading)的,而且这种情况还在连年恶化.对于这么大一顶帽子,让我们暂且按下躁动的心,听…
John Carmack 上帝花了6天创造了这个世界,id software和它的创始人.引擎师约翰·卡马克(John Carmack),则用6款游戏创造了个人电脑的3D世界. 1992年,id做出了<德军总部>,将JC在90年实现的平滑滚动效果利用到极致,逼真到普通用户第一次在PC上面模拟真实的世界. 1995年,id发布<DOOM>,让电脑进入3D世界,DOOM勾画出了从来没有过的逼真场景,让玩家相信他就在<DOOM>的世界中.同时 <doom>是第一款…
语法糖(Syntactic Sugar),也叫糖衣语法,是英国计算机科学家彼得·约翰·兰达(Peter J. Landin)发明的一个术语.指的是,在计算机语言中添加某种语法,这些语法糖虽然不会对语言的功能产生任何影响,却能使程序员更方便的使用语言开发程序,同时增强程序代码的可读性,避免出错的机会.但是如果只是大量添加和使用语法糖,却不去了解他,容易产生过度依赖,从而无法看清语法糖的糖衣背后,程序代码的真实面目. 总而言之,语法糖可以看做是编译器实现的一些“小把戏”,这些“小把戏”可能会使得效率…
摘要:很多java入门新人一想到java多线程, 就会觉得很晕很绕,什么可见不可见的,也不了解为什么sync怎么就锁住了代码. 本文分享自华为云社区<java多线程背后的弯弯绕绕到底是什么? 7个连环问题为你逐步揭开背后的核心原理!>,作者:breakDraw . 很多java入门新人一想到java多线程, 就会觉得很晕很绕,什么可见不可见的,也不了解为什么sync怎么就锁住了代码. 因此我在这里会提多个问题,如果能很好地回答这些问题,那么算是你对java多线程的原理有了一些了解,也可以借此学…
日文原文地址 http://www.4gamer.net/games/277/G027751/20150829002/ PS:CEDEC 2015的PPT有些要到10月才有下载,目前的都是记者照片修图,一些无关紧要的细节就不翻译了,10月后有下载了再分享翻译后的PPT       2015年8月28日,CEDEC 2015最后一天,BANDAI NAMCO Entertainment( 万代南梦宫娱乐,)关于[夏日课堂]的会议3场连续进行着,分为产品篇,技术篇以及座谈会三个部分,这里要介绍的是第…
http://m.blog.csdn.net/article/details?id=50667507 VR中的”延迟”, 特指”Motion-To-Photon Latency”, 指的是从用户运动开始到相应画面显示到屏幕上所花的时间.  这中间经过了大概这么几个步骤: 传感器采集运动输入数据 采集到的数据进行过滤并通过线缆传输到主机 游戏引擎根据获取的输入数据更新逻辑和渲染视口 提交到驱动并由驱动发送到显卡进行渲染 把渲染的结果提交到屏幕, 像素进行颜色的切换 用户在屏幕上看到相应的画面 当然…
//延迟系统时间,但系统又能同时能执行其它任务,不卡屏延时方法 public static void Delay(int milliSecond) { int start = Environment.TickCount; while (Math.Abs(Environment.TickCount - start) < milliSecond) { Application.DoEvents();//转让控制权 } }…
欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由云鼎实验室发表于云+社区专栏 本文经授权转载自 FreeBuf 2018年世界杯硝烟散尽,但关于她的话题却远远没有结束.说起世界杯,就不得不提深藏其下的互联网黑灰产江湖,其中的恩怨情仇简直堪比豪门德比,这之中就包括大名鼎鼎的 DDoS 黑产.世界杯期间,不法分子的 DDoS 攻击业务接单接到手软,金主爸爸们一掷千金只为了打趴竞争对手的博彩网站--简直想想都刺激. DDoS 攻击经过近二十年的演变沿用至今,以其成本较低.效果显著.影…
刚接手PopupWindow的时候,我们都可能觉得很简单,因为它确实很简单,不过运气不好的可能就会踩到一个坑: 点击PopupWindow最外层布局以及点击返回键PopupWindow不会消失 新手在遇到这个问题的时候可能会折腾半天,最后通过强大的网络找到一个解决方案,那就是跟PopupWindow设置一个背景 popupWindow.setBackgroundDrawable(drawable),这个drawable随便一个什么类型的都可以,只要不为空. Demo地址:https://gith…
本文主要介绍ORTC(Object Real-time Communication),支持原创,文章来自博客园RTC.Blacker,支持原创,转载必须说明出处,更多详见www.rtc.help. -------------------------------------------------------------------------------------------------------------------------------------------------------…
1. tomcat 启动慢 在线上环境中,我们经常会遇到类似的问题,就是tomcat 启动比较慢,查看内存和cpu,io都是正常的,但是启动很慢,有的时候长达几分钟,这到底是什么原因导致的. 1.1 tomcat 获取随机值阻塞 ​ tomcat的启动需要产生session id,这个产生需要通过java.security.SecureRandom生成随机数来实现,随机数算法使用的是"SHA1PRNG",但这个算法依赖于操作系统的提供的随机数据,在linux系统中,这个值又依赖于/de…
今天笔试遇到一个代码题,要求写一个开平方算法,回来发现了雷神之锤里的一段神代码: float Q_rsqrt( float number ) { long i; float x2, y; const float threehalfs = 1.5F; x2 = number * 0.5F; y = number; i = * ( long * ) &y; // evil floating point bit level hacking i = ); // what the fuck? y = *…
我把自己以往的文章汇总成为了 Github ,欢迎各位大佬 star https://github.com/crisxuan/bestJavaer 我们在日常开发中经常会使用到诸如泛型.自动拆箱和装箱.内部类.增强 for 循环.try-with-resources 语法.lambda 表达式等,我们只觉得用的很爽,因为这些特性能够帮助我们减轻开发工作量:但我们未曾认真研究过这些特性的本质是什么,那么这篇文章,cxuan 就来为你揭开这些特性背后的真相. 语法糖 在聊之前我们需要先了解一下 语法…
今天是2014.3.20,笔者从oculus官网订了DK2(第二代开发版) 评测视频http://v.youku.com/v_show/id_XNjg3NTUzOTk2.html 想想从哪说起呢... 2002年,笔者毕业第一年,每周六下班固定是去网吧通宵CS.2007年,苹果重新定义了手机,几年后把诺基亚打入了无间地狱.2009年,阿凡达重新定义了3D,当年看完电影亢奋的情形现在依然记得.2011年,Oculus rift(下文简称or,官网:http://www.oculusvr.com)这…
文章英文原网址: http://www.gamasutra.com/blogs/BrianKehrer/20160125/264161/VR_Distortion_Correction_using_Vertex_Displacement.php 利用顶点位移的VR畸变校正 2016年1月29日 Brian Kehren著 在VR开发的最大挑战之一是对高帧率与高分辨率结合的要求.我们通过把顶点转化为“镜头空间”,删除了需要全屏渲染的纹理,这样就可以大规模提高手机性能. 下面的技术使用谷歌的Card…
走过了2016年,无论我们承认不承认,这一年到底是不是VR元年,我们都很难否定,在这一年,VR虚拟现实生态圈有很大的变化,那么,这一年VR虚拟现实到底有怎样的改变呢?我们的VR虚拟现实生态圈,发生了什么呢? VR虚拟现实背后的科技 众所周知,困扰着VR用户的最大难点就是:晕动症.这是VR虚拟现实产业圈至今未能解决的难题! 难道2016年已经解决了晕动症么?很遗憾,并没有. VR虚拟现实背后的科技 然而我们已经看到了方向,经过研究发现,用户之所以会出现晕动症,是源于来自内耳前庭系统的物理运动信号与…
VR开发的最大挑战之一是对高帧率与高分辨率结合的要求.我们通过把顶点转化为“镜头空间”,删除了需要全屏渲染的纹理,这样就可以大规模提高手机性能. 下面的技术使用谷歌的Cardboard Unity SDK进行开发,应用于Cardboard Design Lab(CDL),然而,利用透镜畸变效果,给与适当的失真系数去构成顶点着色器,并且SDK允许禁止渲染纹理,这样同样的方法可以适用于任何VR系统. Google公司的Cardboard Design Lab,在Google Play这个场景中可能使…
一.写在开始之前 不管是HTC 的Vive还是OC的CV1,都说明VR 定位设备和手柄都会成为未来VR的发展趋势. VR目前关键就是体验,全身心的投入,身临其境的感觉. 不能总玩着玩着,出戏了.这肯定不是VR想要达到的效果,专业词汇那就是“沉浸感”!! 现在也做了些VR室内定位的东西,不是Vive,也没有CV1.只能成为高信价比的方案. 没有Vive的华丽上档次,没有CV1的黑科技,但是足够好玩!! 这个只是小结,总结下自己在过程中出现的问题和可能的解决方案!! 二.硬件相关 在VR游戏中,硬件…
再来当一次技术搬运工,内容来自高可用框架,学霸君工程师袁荣喜的如何实现1080P延迟低于500ms的实时超清直播传输技术. 导语:视频直播是很多技术团队及架构师关注的问题,在实时性方面,大部分直播是准实时的,存在 1-3 秒延迟.本文由袁荣喜向「高可用架构」投稿,介绍其将直播延迟控制在 500ms 的背后的实现. 袁荣喜,学霸君工程师,2015 年加入学霸君,负责学霸君的网络实时传输和分布式系统的架构设计和实现,专注于基础技术领域,在网络传输.数据库内核.分布式系统和并发编程方面有一定了解. 最…
http://geek.csdn.net/news/detail/76504 我们组在2014年下半年尝试开发了一款Xbox One平台的体感游戏,2015年上半年进行收尾工作的同时,结合之前积累的体感交互经验,开始进行VR游戏的预研工作.在这近一年的时间里,一方面从外界感受到了一股虚拟现实快速发展的潮流,另一方面也体会到身边很多人对VR游戏的了解非常有限.现在,我们自己的VR游戏Demo<Comet>(如图1所示,观看地址:http://v.qq.com/boke/page/i/0/s/i0…
查找关键字“flashplayer 弹性跑道” 每当一帧即将走完,FlashPlayer就要做些总结性工作(一次性地汇总变化),把这一帧当中发生的变化拿出来展示(渲染)一下. 如果它处理的事情少,工作轻松,那么它行走的速度是均匀的,也就是说走过每一帧花费的时间都基本相同. 如果某一帧的沿途中处理的事情很多,很麻烦,那么花在其上的时间就会变长. 如果某一帧的展示(渲染)工作很沉重,那么花在其上的事件也会变长. 于是乎,走过不同帧所花费的时间将变得不再相同. 如果某帧花费的时间特别长,就是"卡顿“现…
推倒重来 俗话说no zuo no die why you try,这时候我又忍不住zuo了,吭哧吭哧的把解决过程发上博客,向全世界宣布,哥又搞定个难题. 剧情的发展往往是看起来主角完全掌握了局势的情况下,会突然跳出来一个很牛的反面人物,然后搞得主角很惨,搞的过程中主角开始小宇宙爆发,然后逆袭.这次也不例外.踢场子的人该出现了 一顿狂侃之后,发现我原来牛逼的分析,完全经不起推敲.几个问题 1)  在未做HASH索引之前,为什么大表的ROWS那么大,相当于全表扫描 2)  既然SN是唯一索引,那么…
转载地址:http://www.yunweipai.com/archives/9037.html 最近由于公司业务关系,需要一个在公网上能实时互动超清视频的架构和技术方案.众所周知,视频直播用 CDN + RTMP 就可以满足绝大部分视频直播业务,我们也接触了和测试了几家 CDN 提供的方案,单人直播没有问题,一旦涉及到多人互动延迟非常大,无法进行正常的互动交谈.对于我们做在线教育的企业来说没有互动的直播是毫无意义的,所以我们决定自己来构建一个超清晰(1080P)实时视频的传输方案. 先来解释下…
http://news.gamedog.cn/a/20171221/2287418.html 我们知道,不同类型的游戏因为玩法.竞技程度不一样,采用的同步算法不一样,对网络延迟的要求也不一样.例如,MOBA类游戏多使用帧同步为主要同步算法,竞技性也较高,无论从流畅性,还是从公平性要求来说,对响应延迟的要求都最高,根据业内经验,当客户端与服务器的网络延迟超过150ms时,会开始出现卡顿,当延迟超过250ms时,会对玩家操作造成较大影响,游戏无法公平进行.类似地,“吃鸡”游戏(如<绝地求生>)玩法…
最近由于公司业务关系,需要一个在公网上能实时互动超清视频的架构和技术方案.众所周知,视频直播用 CDN + RTMP 就可以满足绝大部分视频直播业务,我们也接触了和测试了几家 CDN 提供的方案,单人直播没有问题,一旦涉及到多人互动延迟非常大,无法进行正常的互动交谈.对于我们做在线教育的企业来说没有互动的直播是毫无意义的,所以我们决定自己来构建一个超清晰(1080P)实时视频的传输方案. 先来解释下什么是实时视频,实时视频就是视频图像从产生到消费完成整个过程人感觉不到延迟,只要符合这个要求的视频…
----ROSCon2012-2017----来源链接:https://roscon.ros.org           近三年ROSCon(2015-2017)都会将会议视频录像和文档公开~以下为机器翻译~ ----2017---- ROSCon将于2017年9月21日至22日在加拿大温哥华举行! 那就是在加拿大温哥华温哥华会议中心的同一地点发生的IROS之前的星期四和星期五.所以如果你打算到IROS旅行,只需要加上几天的旅程,这样你可以加入我们在加拿大温哥华的ROSCon. 注册 ROSCo…
餐具:coffee pot 咖啡壶coffee cup 咖啡杯paper towel 纸巾napkin 餐巾table cloth 桌布tea -pot 茶壶tea set 茶具tea tray 茶盘caddy 茶罐dish 碟plate 盘saucer 小碟子rice bowl 饭碗chopsticks 筷子soup spoon 汤匙knife 餐刀cup 杯子glass 玻璃杯mug 马克杯picnic lunch 便当fruit plate 水果盘toothpick 牙签中餐:bear's…
一.setTimeout那些事儿之单线程 一直以来,大家都在说Javascript是单线程,浏览器无论在什么时候,都且只有一个线程在运行JavaScript程序. 但是,不知道大家有疑问没——就是我们在编程过程中的setTimeout(类似的还有setInterval.Ajax),不是异步执行的吗?!! 例如: <!DOCTYPE html> <head> <title>setTimeout</title> <meta http-equiv="…