如何在VR场景中位移与vr行走设备Unity VRTK

一天就是225元,一个月大概花费四五千元。
手脚全上,只为可以得到娃娃,不顾围观目光。
声明:本文由入驻搜狐公众平台的作者撰写,除搜狐官方账号外,观点仅代表作者本人,不代表搜狐立场。
  SteamVR插件的导入
  使用Unity3D进行VR游戏的开发,首先需要具备以下条件
  拥有一台显卡不低于GTX960性能的主机
  拥有一部VR设备,HTC Vive或者Oculus,因为只有连接上VR设备,Unity才能进行正常的调试(本文使用的是Vive设备)
  下载Valve的游戏平台Steam
  下载Unity3D插件商店中SteamVR插件
  这几项缺一不可,没有VR设备的开发者,虽然能进行VR项目的开发,但是不能调试不能体验VR的效果,实际上是非常蛋疼的一件事。
  另外吐槽一点,VR的调试需要带上VR设备,这个时候如果要动态的在项目中进行各种调试会非常的不方便。。。笔者尝试在VR设备中调出桌面进行操作也由于摇杆的操作比鼠标操作差很多而倍感不爽。。。所以没有VR设备的小伙伴们,赶快入手一个VR设备是正经,当然你也可以先通过学习如何开发来做一个前期的预热。
  首先第一步,我们要做的是打开Steam,点击右上角的VR小标记来启动VR设备,第一次启动需要设置一下VR设备的房间环境,这点我就不多说了,不同的VR设备有不同的设置方式。最终能够识别出你的VR设备即可。本教程以HTC出的VIVE设备进行讲解。
  SteamVR插件是全免费的,是Valve公司免费提供给大家的,这一点真是良心啊,如果有遇到无法下载或者下载非常慢的情况,本文最后将会提供插件的下载,有需要的同学请自行下载
  截止本稿完成日期,最新版本为1.1.0,这个插件不大,只有几M,很实惠的插件哟。
  好了,说了那么多,我们开始实战吧,首先创建一个新的Unity3D项目,然后导入我们的SteamVR插件。
  在项目的根目录或者任意空白的地方点击右键,选择Import Package→Custom Package导入下载好的unity插件包(如果是从官网插件商店下载的,则会自动弹出导入窗口,不用这一步了)
  导入所有的文件(如果是用旧版本更新,则更新所有的文件即可),点击Import
  导入完成之后会弹出一个Unity项目设置的窗口,选择AcceptAll接受所有即可
  你做了一个正确的选择~被表扬了~呜哈哈~~
  导入完插件之后,可以在Scenes文件夹下找到一个演示的场景,example,建议有密集恐惧症的同学慎入。。。另外在Extras下也有两个小演示,一个是抛东西,一个是握东西,都是演示摇杆的使用方式这个我们后面再讲。
  带上你的VR设备,运行这些场景就开始你的VR体验之旅了。
  使用SteamVR插件预制开始VR的旅程
  下面这一节将会教各位同学打造自己的VR场景,这一节是非常非常简单的,简单到我用一句话就能讲完,不信?我们来试试。
  新建一个场景或者打开一个已有的场景,将SteamVR/Prefabs/[CameraRig]预制拖入场景。
  然后。。。然后就完了,你可以运行这个场景,你的两个手柄都识别出来了,和你刚才看到官方的演示场景一样。
  细心的同鞋一定发现了控制台一直在输出什么东西,不要担心,这是因为有场景中有两个AudioListener,我们把原来场景中主摄像机上的AudioListener移除掉即可
  呵呵,这一步简单吧,然后我们开始进行下一步。
  如何识别手势控制以及摇杆的各种操作
  这一节将教会大家如何使用脚本来识别和控制VR设备
  我们首先看一下刚刚拖到场景里的CameraRig预制
  最外层的CameraRig这个预制就是你的VR设备在场景中的原点位置,挪动这个对象可以挪动整个VR在场景的位置,你的视角也会随之而移动。
  Controller(left)和Controller(right)这个不用我多说了,这个是你的左右摇杆。有好学的同学要问了,摇杆上貌似没有区分左右的标记吧,怎么能区分哪个对象对应的是哪个摇杆呢?SteamVR默认会将第一个识别出来的摇杆作为right右摇杆,所以分左右主要看先后。最后的head不用说,就是各位同学的脑袋了,里面有两个对象,一个是作为渲染器的眼睛,一个是用来听声音的耳朵。
  认识了这些东西之后,我们就开始编写一个小脚本,来识别一下他们。
  在Main Camera上添加一个新的cs脚本,取名为StartVR
  双击打开这个脚本
  写入如下代码
  在场景中将VR的左右手对象拖到脚本相应参数的位置
  然后不要带眼镜,直接运行程序,点击摇杆上的各个按键,控制台就能够输出各种打印信息了。
  menu键
  pad面板
  系统键
  指示灯
  充电口
  定位装置
  trigger键
  grip键
  使用脚本代码漫游3D场景
  熟悉了以上流程,基本我们就可以开始制作VR游戏了,下面这一节将会教大家如何使用摇杆来控制视角在VR场景中漫游移动
  首先修改代码如下:
  然后将场景中VR设备的对象拖入相应位置
  为了区分场景的位置,可以在空的场景中添加一些3D模型,或者你也可以打开以前做好的各种场景
  接下来,戴上眼镜,运行程序,按下双手任意pad上的上下左右方向,就可以根据当前视角的前后左右进行移动了。这样我们的第一个VR程序就完成了,恭喜大家买入了VR开发的第一道门槛~
  点击一下
  立即阅读相关好文章
》谈贪婪设计丨丨
核心设计分析
  近期热文
欢迎举报抄袭、转载、暴力色情及含有欺诈和虚假信息的不良文章。
请先登录再操作
请先登录再操作
微信扫一扫分享至朋友圈
搜狐公众平台官方账号
生活时尚&搭配博主 /生活时尚自媒体 /时尚类书籍作者
搜狐网教育频道官方账号
全球最大华文占星网站-专业研究星座命理及测算服务机构
主演:黄晓明/陈乔恩/乔任梁/谢君豪/吕佳容/戚迹
主演:陈晓/陈妍希/张馨予/杨明娜/毛晓彤/孙耀琦
主演:陈键锋/李依晓/张迪/郑亦桐/张明明/何彦霓
主演:尚格?云顿/乔?弗拉尼甘/Bianca Bree
主演:艾斯?库珀/ 查宁?塔图姆/ 乔纳?希尔
baby14岁写真曝光
李冰冰向成龙撒娇争宠
李湘遭闺蜜曝光旧爱
美女模特教老板走秀
曝搬砖男神奇葩择偶观
柳岩被迫成赚钱工具
大屁小P虐心恋
匆匆那年大结局
乔杉遭粉丝骚扰
男闺蜜的尴尬初夜
客服热线:86-10-
客服邮箱:VIVE房产项目实战教程 - 蛮牛教育 - 国内最大的Unity在线学习平台|Unity培训|Unity3d培训|Unity视频学习|Unity教程 Unreal 虚幻 AR VR - Powered By EduSoho
the lab renderer
/thestonefox/SteamVR_unity_Toolkit
VR Arc Teleporter
①Profiler的使用
Window--&Profiler打开
②Fream Debugger
Window--&Fream Debugger
③优化原则
删除看不到的面;使用LOD;使用遮挡剔除。
在VR中使用UGUI案例
1.在场景中添加UI
缩放Canvas,而不是缩放Text
在样板间项目中,可以为物品使用UGUI做产品介绍
运行后Text文本非常模糊,可通过修改Canvas中的Dynamic Pixels Per Unit数值为2或更大(一般10以内),用来消除文本锯齿。
2.在手柄上创建UI,如菜单
创建Canvas作为Controller的子物体,再编辑即可。
3.与UI交互——射线
使用SteamVR Unity Toolkit
①给两个Controller添加VRTK_ControllerEvents.cs脚本组件,事件处理组件,然后添加VRTK_SimplePointer.cs发射射线脚本组件;
②给两个Controller添加VRTK_UIPointer.cs脚本组件,使按钮响应响应
③添加脚本,定义按钮响应事件。
在OnClick处添加触发的方法,如onVRButtonClick()方法
可以查看VRTK自带的第34个案例,关于UGUI的
4.Unity官方案例
Unity的VR Samples案例场景,官方教程在Unity官网可以找到。网址为:
/cn/learn/tutorials/topics/virtual-reality
其中UI界面跟随相机的设置,还有很实用的场景应用:凝视、曲面UI等,非常经典。
The Lab Renderer渲染器
1.单通道渲染和抗锯齿
2.动态调整渲染保证帧率
3.自带一些实用Shader
学习资料:蛮牛社区翻译的自带文档
①导入样板间工程,默认没有灯光,需要在Lighting--&Scene下Build一下。(删掉第一人称视角);
②场景中某些物体非常亮,可以修改Player Settings中,
其实Lab Renderer导入后会自动设置并优化;
③导入SteamVR,[CameraRig]拖入场景中;
④导入Lab Renderer;
⑤给Camera(eye)添加ValveCamera.cs脚本组件,在检视面板中可以看到优化选项。修改Valve Shadow Texture Width/Height至最大;
⑥在Edit-Project Setting-Quality中将Unity自带的阴影渲染器关掉,使用Lab的阴影计算。(这一步顺序较随意)
⑦未用到Directional light Bake,因为是实时渲染,故将其删掉。然后为所有的实时灯光(Lab渲染器最多支持18盏灯光)如在Directional light Realtime光添加ValveRealtimeLight.cs脚本组件;
⑦将场景中材质转换为渲染器自定义Shader材质,Valve-&Shader Dev-&Convert Active Materials to Valve Shaders,注意与其他选项的区别;
⑧此时场景很亮,修改光照强度,调节Intensity至合适数值如0.5;并调节阴影分辨率Shadow Resolution,通过Lab渲染器自动计算出来得到而非Unity自带,效果更好。Shadow Resolution实质与Camera (eye)上的Valve Shadow Texture Width/Height是对应的。如最大值8192的含义是这盏灯渲染的阴影都形成在像素的贴图上。根据情况调整合适数值;
⑨因为屋顶是背向剔除,是单面,需要创建遮光的屋顶,如用Cube;
⑩调整灯光适合不同情景即可。
步骤⑦后场景中的物体出现材质丢失的问题!!!严格重复步骤,没有问题。
难道与插件导入先后顺序有关???!!!
GitHub客户端软件SourceTree
过渡动画、缓动等效果的插件DoTween
在场景中瞬移
1.为什么不能像CF中一样顺畅的移动呢?
——VR场景内实质仍然是2D信息投射在人眼中,没有景深,光场的概念,若是帧率不够,非常容易眩晕。
在瞬移中,会有一个短暂的屏幕变暗的过渡。
避免重复造轮子,使用第三方的API,性能较好
工具:SteamVR Unity Toolkit
开源网址:见课时15
2.瞬移功能
按住触摸板可以发出投射曲线,当曲线落入到可到达区域,变成可以设置的颜色,然后移动过去。
①给两个Controller (left)添加VRTK_ControllerEvents.cs脚本组件,获取手柄输入;添加贝塞尔指针 脚本组件VRTK_BezierPointer.cs,
②给[CameraRig]添加VRTK_BasicTeleport.cs脚本组件,使相机瞬移。
其他瞬移插件:VR Arc Teleporter
1.获取手柄按键及触摸板的输入相应和对应数值
①创建场景,一个plane地面,一个Cube物体,给Cube添加Rigidbody刚体组件;
②将SteamVRà [CameraRig]拖入场景,删除项目中自带的主摄像机;
③创建ViveInput.cs脚本组件,用于获取手柄触发事件,将这个脚本给到两个手柄的Controller (left)、Controller (right);
④编写脚本:获取手柄按键按下后的响应
⑤编写脚本:手柄上按键、触摸板等输入的数值获取
2.示例:使用手柄抓取物体
(1)原理:每个Controller (left、right)下都有Model对象,当抓取时就是将被抓取物体作为Model的子物体,实现和手柄同步移动。
①给两个Controller (left、right)添加Sphere Collider组件,实现碰撞监测,勾选Is Trigger,调节合适位置和大小,在手柄的前半部分位置;
②定义方法,在方法内部获取手柄扳机按下事件,然后实现抓取物体(即形成父子物体),取消物体刚体影响;
other.gameObject.transform.SetParent(this.gameObject.transform);
③解决扳机松开物体还附着在手柄上的问题:使用GetTouchUp事件,恢复其刚体影响,使物体脱离手柄。
重拓普原则、技巧
Substance Designer烘焙贴图
Substance Painter绘制贴图
导入到Unity中
Shift A 新建模型
Tab 进入编辑模式
删掉plane的顶点vertexes
Ctrl+左键 添加点
Ctrl + ALt + U 修改输入方式
F2功能激活
burfaces功能 D快捷键
E键由点拉出边
开始制作低模:
Substance Designer:
/s/1jIGZeia
密码:ttd3
/s/1eSjXqlc
密码:xsgw
第10课:Lighting 参数 讲解
1、建立Sky box方法:
1-1:新建mataric,修改 shader为cubbox,j将天空盒图片拖进工程,修改为cumbox;
2、Ambient Source 环境光源:指定环境光源,有skybox、
3、Ambient Intenstry 环境光强度
4、Ambient GI 处理环境光在GI模式,一般为实时;
5、Reflection Source 反射在信息来源
6、Precomputed Realtime Gi 实时光照GI
6-1、实时光照贴图分辨率(Realtime Resolution)
第9课:光照系统(Enlighten)
1、物体设置状态 static,可以多选其他功能静态;
2、在“scene”下面,可以选择视图模式
3、在PBR理论下绚烂,需要修改 player settings 下在“other Settings”-&Color Space 为“Linear”;
4、“Light Pbrobe” 用于动态光照探针,动态物体进入这个区域可以获取光照信息;
5、“Reflection Pbrobe”反射光照探头;
6、几个官方DEMO:Corridor Lighting、The Courtyard、Viking Village
substance designer
reflection
refraction
CaronteFX插件
开始学习课时
学完了课时
学完了课时
开始学习课时
开始学习课时
蛮牛教育总群
工作时间:9:30 至 18:30
蛮牛教育:010-每天三分钟,知晓天下事,视频、语音、文字综合版任您挑!微信搜索fgzadmin关注或点击标题下方可以快速关注。
原创不易,认可价值,动手指点并转发,就是最好的支持与肯定。淘宝特约店址:http://goldengame.
深夜十点,陪你读书。
慢工出细活
由于中、美、俄三国自2008年后基本上长期上演“三国杀”(昨天文章《原创丨中美俄世纪三国杀,谁是百年长跑冠军
其实这是个有奖活动贴。n其实这是个有奖活动贴。n其实这是个有奖活动贴。
思考者正在阅读原创丨三次世界大战亚洲开打,美国推演靠谱吗?原创丨央行连出两大招,有何深意?微历史丨张学良为啥
美国总统奥巴马日在接受媒体采访时表示,2011年对利比亚局势的干涉,是其总统生涯中做出的最
我们都知道,美国软实力很厉害,在过去很多年都一直掌控者国际话语权,他们可以提着民主、自由、人权的大棒满世界乱
思考者正在阅读原创丨重大变革,我们的世界都将逃不过被TA重塑!原创丨中美黄岩岛较量,谁是最后赢家?原创丨你射&>&&>&&>&&>&Unity-VRTK
Unity-VRTK
上传大小:2.81MB
我也是找了好半天才找到的 分享给大家免得花时间去找
综合评分:5(1位用户评分)
所需积分:0
下载次数:21
审核通过送C币
创建者:iamlazybone
创建者:heidlyn
创建者:spacefan
课程推荐相关知识库
上传者其他资源上传者专辑
行业热门标签
VIP会员动态
您因违反CSDN下载频道规则而被锁定帐户,如有疑问,请联络:!
android服务器底层网络模块的设计方法
所需积分:0
剩余积分:720
您当前C币:0
可兑换下载积分:0
兑换下载分:
兑换失败,您当前C币不够,请先充值C币
消耗C币:0
你当前的下载分为234。
Unity-VRTK
会员到期时间:
剩余下载次数:
你还不是VIP会员
开通VIP会员权限,免积分下载
你下载资源过于频繁,请输入验证码
您因违反CSDN下载频道规则而被锁定帐户,如有疑问,请联络:!
若举报审核通过,可奖励20下载分
被举报人:
mayzhengxi
举报的资源分:
请选择类型
资源无法下载
资源无法使用
标题与实际内容不符
含有危害国家安全内容
含有反动色情等内容
含广告内容
版权问题,侵犯个人或公司的版权
*详细原因:

我要回帖

更多关于 vr行走平台 的文章

 

随机推荐