虚拟现实开发一些建议怎么写_虚拟现实开发引擎

虚拟现实开发一些建议怎么写_虚拟现实开发引擎本文章由cartzhang编写,转载请注明出处。所有权利保留。文章链接:作者:cartzhang【本文为原作者对虚拟现实开发的一些建议和理解,写的非常不错。理解的也非常透彻,希望对各位在路上的VR开发者有积极作用。】下面是我对虚拟现实开发一下建议。我已经把他们分为Vive相关,常规VR和更宽泛意义上的建议。更多建议请关注我的Twitter。一、Vive相关1.让玩家按下按键

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

本文章由cartzhang编写,转载请注明出处。 所有权利保留。
文章链接: http://blog.csdn.net/cartzhang/article/details/51898067
作者:cartzhang

【本文为原作者对虚拟现实开发的一些建议和理解,写的非常不错。理解的也非常透彻,希望对各位在路上的VR开发者有积极作用。】

下面是我对虚拟现实开发一下建议。我已经把他们分为Vive相关,常规VR和更宽泛意义上的建议。更多建议请关注我的Twitter。

一、Vive 相关

1. 让玩家按下按键来开始游戏。这么做有几个重要的好处:


– 确保带上头盔并准备好了
– 确保玩家至少有一个控制器在他们的手里。
– 你可以在这点设置玩家高度的特殊物体(比如:物体在玩家附近高度相对于玩家的头部)。
– 按下按键将关联到主控制器(无论是左手还是右手)。这个在你控制器功能有很大差别的时候,可以作为主控制器。

2. 某些按钮比其他更好用/易用,很像控制台控制器。尽量使用易用的按键。在游戏或体验中关联按键,建议遵守如下常用优先顺序:

– 扳机
– Track-pad 作为单个按键
– 3D 世界交互(例如:按下控制器的3D按键)
– 菜单按键
– Track-pad 作为四个按键
– 手柄按钮-除非必须绝对不要使用这些。

3.对空间大小体验,大小为2米X1.5米或更小能满足81%用户。

它将让你捕获尽可能多的受众。更多用户细节状态可参考这里。

4.不要鼓励用户把他们的控制器里的彼此离的太近或离头盔太近。

这总有几次会打到某些东西且可能会毁坏设备。

5.当用户与世界交互时使用控制器振动来提高存在感。

一个很好的例子就是Vive的房间大小设定。用户移动设备越快振动越快。

6.很多用户不看他们的控制权,考虑到这一点。对此,有三个主要的解决方案:


– 添加一行按钮,并且文字一直渲染在用户视野。当控制器超出玩家视野时标定视野方向,这样他们必须看向文字中心。这样在他没有看向控制器时,可以随时扩大控制器图标且期望他们使用控制器与场景交互。

– 把文字放到他们面前告诉他们看着控制器。

-当出现一个奇特按键时添加一段音频来告知用户看向控制器。

二、常规虚拟现实

1.帧率是王道。

高帧率比其他因素都更加重要。无论何时添加了影响帧率下降到90帧一下时都要问下这是否很重要。目标是970GTX,它是最低配置,且要确保在最低配置显卡上一直可以跑到90帧。

2.在使用屏幕空间特效时候要非常小心。

我们可以接受在电脑屏幕上的镜头光晕但是在VR中完全不真实。这对于有些开发者有时故意夸大现实(比如:泛光)是个严重的问题。不要在游戏中这么做,使游戏看起来像游戏开发者的标准一样”好看”。
-抗锯齿
– 颜色校正
– 泛光
– SSAO (由于这个花销太大而效果不明显,我通常放弃这个。)

3.根据需要保留UI。

两款消费级的设备的分辨率都能满足在3D中阅读。然而需要让文本额外大。一些用户在虚拟现实中不佩戴头盔,所以要确保文本比“常规用户”需求的要大一些。把UI与控制器相关联是一个很不错的方法,用户可以自己把控制器靠近眼睛来阅读文字。

4.可以的话使用音频。

在VR中相比于UI,声音是一个更好的选择。这样就不关系用户错过了弹出框,用户可以多任务进行,在完成其他动作的同时聆听声音。而不是他们必要要停下来,读文字信息。

5.在转移/传送用户时,渐变为黑色。

我会把整个屏幕全黑下来一小段时间(~0.2秒)来帮助大脑适应过渡。

6.让对象离玩家有一个最小距离,因为离视口太近会引起疑惑和眩晕症。

最好有一个最近的Z平面,防止渲染到不舒服的距离。尊重用户的个人空间(或不要明显的不舒适的体验)。

7.细节很重要。

若用户可以拾起或以其他方式靠近某个对象来观察对象细节。对模型质量来说,纹理细节是其后最重要的。

8.在虚拟现实中,闭上一只眼瞄准物体时真的可以的。

像瞄准器视线和范围(武器和望远镜,显微镜等)有惊人的效果。不要单单只想使用在枪/武器,用奇妙的方法来使用这个。

9.不要把对象相对用户来进行线性插值,锁定他们即可。

我原本想这会让玩家有一个平滑过渡到感觉,然而结果却很糟。锁定旋转且锁定XYZ轴上的位置。

三、虚拟现实哲学

1.虚拟现实游戏会放大游戏/体验中最好的和最坏的部分。

当虚拟现实很棒的时候,真的很棒。一个高水平的项目完成后立即会有人在虚拟现实中买卖。不幸的是,不好的体验也是同样的。低帧率,低画质和其他事情会完全毁掉体验,有时会导致模拟病。能力越大责任越大。

2.绝对优先的事情是存在的。

忽略当前应用中的所有其他规则。

3.我们是先驱者

所以花些时间在每个新问题上,看看是否存在新颖的方法来解决它。不要在基础回顾之前游戏/Apps上构建。

4.尊重用户

尊重他们的私人空间和他们的舒适度。期望非游戏玩家和所有人来玩你的游戏/体验。

5.当前虚拟现实最大的问题是过于炒作和糟糕的体验管理。

根据Steam监测当前最好的销量为10-20k。而消费者非常 棒,知道这是第一代消费设备,故此并不期待所有都完美无暇。

6.事情会快速变化,所以要做好准备。

最好从小产品发布来开始,构建你自己的名字,获取真正的虚拟现实内容发布的经验。

7.观察首次使用VR观众(游戏玩家和非游戏玩家)。

尽可能早的让他们玩你游戏原型。虚拟现实会放大你软件的优点和缺点,赤裸裸的。

8.在原型Demo过程中,不要过多的经验玩法。

大多数人很乐意尝试,但是太多了,就会关闭它。

9.构建一致性。

当前游戏中受批评最多的一点(也许过于多)就是当前不同游戏的一致性。与其他虚拟现实开发者一起建立常用词汇和我们工作要遵循的标准。我们应该建立一个包容性的社区,更多的应该是相互帮助而不是竞争。(译者:说的多好啊)


这篇是真心的,有好几点真是说的非常非常好。事情会快速变化,只要有心想要进入VR里来的人,准备好吧!!!

原帖地址:
http://www.gamasutra.com/blogs/AlistairDoulin/20160614/274884/Virtual_Reality_Development_Tips.php

作者:Alistair Doulin



若有问题,请随时联系!!
非常感谢!!

路漫漫其修远
这里写图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/194206.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 闫学灿acwing_分组背包问题

    闫学灿acwing_分组背包问题有 N 种物品和一个容量是 V 的背包。物品一共有三类:第一类物品只能用1次(01背包);第二类物品可以用无限次(完全背包);第三类物品最多只能用 si 次(多重背包);每种体积是 vi,价值是 wi。求解将哪些物品装入背包,可使物品体积总和不超过背包容量,且价值总和最大。输出最大价值。输入格式第一行两个整数,N,V,用空格隔开,分别表示物品种数和背包容积。接下来有 N 行,每行三个整数 vi,wi,si,用空格隔开,分别表示第 i 种物品的体积、价值和数量。si=−1 表示第 i 种

  • 查看linux执行的命令记录_history命令详解

    查看linux执行的命令记录_history命令详解前言我们每次敲打linux命令的时候,有时候想用之前用过的命令,一般情况下,我们都会按↑↓箭头来寻找历史的命令记录,那如果我想用1天前执行的某条命令,难道还要按↑100次?显示这样是不现实的,我们可

  • js的onchange(js replace函数)

    jsonpropertychange函数当一个HTML元素的属性用js改变的时候,都能通过onpropertychange来捕获。例如一个<inputname=”text1″id=”text1″/>对象的value属性被页面的脚本修改的时候,onchange无法捕获到,而onpropertychange却能够捕获。也就是说:onpropertychange事…

  • python:Unittest单元测试框架「建议收藏」

    python:Unittest单元测试框架「建议收藏」​单元测试1、单元测试(unittesting),是指对软件中的最小可测试代码单元进行检查和验证⑴是针对于代码的一种测试方法,测试的是代码2、对于”代码单元”中单元的含义,一般来说,要根据实际情况去判定其具体含义:⑴如C语言中单元指一个函数、Java里单元指一个类、图形化的软件中可以指一个窗口或一个菜单等⑵单元可以是一个函数、方法、类、功能模块或者子系统⑶总的来说,单元就是人为规定的最小的被测功能模块3、单元测试针对的是每一个独立的代码单元,代码单元应不…

    2022年10月14日
  • spring注解配置相对于传统xml配置的优势

    spring注解配置相对于传统xml配置的优势

  • html幻灯片图片切换效果代码,jquery的幻灯片图片切换效果代码分享

    html幻灯片图片切换效果代码,jquery的幻灯片图片切换效果代码分享本文实例讲述了jquery的幻灯片图片切换效果。分享给大家供大家参考。具体如下:这是一款基于jquery的幻灯片图片切换效果代码,有缩略图和标题,可以自定义标题。运行效果图:——————-查看效果下载源码——————-小提示:浏览器中如果不能正常运行,可以尝试切换浏览模式。(1)在head区域引入CSS样式:(2)js代码://$(do…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号