使用vr女友 steamm vr和vrtk插件怎么实现用激光拖拽物体移动

他的最新文章
他的热门文章
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)Steam VR Unity VRTK Examples 5 使用已抓住的物体和贝塞尔指针 - 简书
Steam VR Unity VRTK Examples 5 使用已抓住的物体和贝塞尔指针
注意:VRTK官方已经在准备3.0版本,这里讲的是2.2.1这个版本。签出代码的时候,注意checkout到2.2.1这个tag下面。008_Controller_UsingAGrabbedObject 使用已抓住的物体这个场景演示了如何使用已经抓住的物体,比如我们捡起了一把手枪拿在手里(按下Grip键),然后点击Trigger键进行发射子弹。该场景中还有一个玩具盒子,拿起之后执行use操作,上面的胶囊体可以旋转。
UsingAGrabbedObjectScene
usingrotate
usinggun其实关于如何使用物体,中已经介绍过了,这里再简单介绍一下吧。要自定义使用物体的行为,需要从VRTK_InteractableObject类继承,重写基类的Start、Update、StartUsing、StopUsing等函数。我们先来看Gun类的实现。
GunClass最重要的就是StartUsing函数中调用FireBullet函数。该函数实例化了一个子弹,然后对子弹的刚体施加了一定的力,发射出去,经过了一段时间之后销毁该对象。再看看Whirlygig类怎么实现的:
WhirlygigClass该类中在StartUsing的时候,设置了一个旋转速度,并在StopUsing的时候设置成0,这实现了按住Trigger的时候胶囊体是一直旋转的,松开的时候就停止了。该类重写了Update函数,保证每一帧都会根据旋转速度进行一定量的旋转。So easy!009_Controller_BezierPointer 贝塞尔指针该场景主要演示了如何在场景中使用贝塞尔曲线的指针,传送器还是提到过的可适应高度的传送器。由贝塞尔曲线生成的激光束并不是直线,而是贝塞尔曲线,该功能允许用户在看不到物体顶部的情况下爬到上面。效果示意图如下:
BezierPointerSceneVRTK_BezierPointer类该场景中最大的变化就是用BezierPointer替换了SimplePointer。BezierPointer从控制器顶端发出一条曲线指向地面,这在地面高度不一致的时候进行传送比较有用,因为这样可以直接把用户传送到看不到的物体顶部。通过按住控制器上面的触摸板可以激活光束,可以通过VRTK_ControllerEvents脚本中的参数更改默认按键。BezierPointer脚本可以添加到[CameraRig]下面的控制器对象上,控制器对象需要VRTK_ControllerEvents脚本,因为它需要监听控制器的按键事件来开启或者关闭光束。也可以把BezierPointer脚本添加到其他对象上,让其他对象发射光束。下面看一下BezierPointer类的主要参数。
BezierPointerPointer Length: 发射的指针光束的长度。这基本上就是从控制器位置能够指到的距离。Pointer Density: 在贝塞尔曲线中渲染线段的数量。数量过高的话,会影响性能。Show Pointer Cursor: 光束指向地面上的时候会显示一个游标,能看到光束终点的位置非常有用,可以使用这个参数开关。Pointer Cursor Radius: 地面上指针的大小半径。这个数字也影响贝塞尔曲线中物体的大小,半径越大,物体越大。Pointer Cursor Match Target Rotation: 如果是true的话,游标将会旋转来匹配目标表面的角度;如果是false的话,游标总是水平的。Beam Curve Offset: 光束曲线高度偏移量。Beam Height Limit Angle: 在曲线高度光束高度受限制之前,控制器的最大角度。小一些的角度设置会使光束弯曲下来,并防止光束投射到天空上。Custom Pointer Tracer: 自定义指针路径对象,默认是个圆球。自定义的对象将会匹配控制器的旋转。Custom Pointer Cursor: 自定义的指针游标,默认是个平面的圆。Layers To Ignore: 指定要忽略投射的层。Valid Teleport Location Object: 在允许传送的情况下,要显示的自定义对象。Rescale Pointer Tracer: 根据贝塞尔曲线的长度,重新缩放指针路径对象。参考:
VR项目研发主管
VR行业讲师
全国三维数字化创新设计大赛特邀评审专家
“福建省青年岗位能手”称号
海峡两岸信息服务创新大赛暨福建省计算机软件设计大赛优秀指导老师
指导作品获得多项荣誉:
全国3D大赛一等奖1项
全国3D大赛三等奖4项
全国移动通信大赛 三等奖2项
中国大学生服务外包创新大赛三等奖1项
海峡两岸信息服务创新大赛暨福建省计算机软件设计大赛一等奖3项,二等奖4项,三等奖5项
中国大学生挑战杯课外科技竞赛福建赛区二等奖1项 三等奖1项
福建省挑战杯大学生创业计划竞赛三等奖
福建省大学生智能设计大赛二等奖
福建省互联网+创新创业大赛铜奖
全国3D大赛福建赛区特等奖4项,一等奖8项,二等奖11项,三等奖5项
注意:VRTK官方已经在准备3.0版本,这里讲的是2.2.1这个版本。签出代码的时候,注意checkout到2.2.1这个tag下面。 008_Controller_UsingAGrabbedObject 使用已抓住的物体 这个场景演示了如何使用已经抓住的物体,比如我们捡起...
摘要: 1、VRTK_SimplePointer:激光指针+2、BezierPointer:贝塞尔曲线激光指针 1、简单激光指针(VRTK_SimplePointer) (1)继承于worldPointer (3)定义:从控制器尾部发出一个有色光束来模拟激光束,能判断所指向...
摘要:1、VRTK_StraightPointerRenderer:激光指针+2、VRTK_BezierPointerRenderer:贝塞尔曲线激光指针VRTK_Pointer 1.VRTK_StraightPointerRenderer 激光指针 定义:从控制器尾部发出...
- 转载 :原文链接:http://www.chinaar.com/ZYJC/1434.html 贝塞尔指针从控制器末端发出一个曲线(由游戏对象组构而成)到(任何高度的)地面上一点。这比简单激光指针要有用的多,因为终点能够弯曲到玩家看不见的对象顶部,所以就可以传送到各种高度...
(一)VRTK_ SimplePointer(直线简单激光指针) (二)VRTK_ControllerEvents(控制器事件) 当一个控制器按钮被按下,脚本发出一个事件表明按钮被按下了,这使得其他脚本去监听这个事件而不需要实现任何控制器逻辑。脚本也有一个公共的布尔类型的按...
药驾(drug driving)指驾驶员服用了某些可能影响安全驾驶的药品后依然驾车出行的现象,由于这些药物常用、易得,服用之后可能产生不同程度的不良反应,因而很容易酿成祸患。 【世界卫生组织对驾驶产生影响的药物分为7大类】:镇静催眠药、抗抑郁药物、解热镇痛药、抗高血压药、降...
这一小节,我们将一起玩2个好玩的技能点,第一个是通过java类来增强JTE(JFinal Template Engine);第二个是通过共享对象来增强JTE。好啦,让我们一起开车! 1、为什么需要使用java类增强指令? 个人的愚见是:在模板上最好还是写一些简单明了的代码,...
一直以来,智能手机用户都被一个不大不小的问题困惑着——无论 iOS 还是 Android 平台,手机通讯录早已经支持了自定义好友头像的功能。然而由于大家没有便捷的添加好友头像的方式,所以绝大部分用户的手机通讯录头像一栏都是默认状态,导致每次打开通讯录,都空荡荡的一片。 然而...
mimo最近又开始发情了。一个月30天,平均25天发情,5天走在发情的路上的神奇的猫。 凌晨两点半,mi mo又开始骑到身上踩奶,许久没有给他剪指甲。 爪子勾的生疼,于是醒了。 这一醒,便到了凌晨五点。 这几个小时,胡思乱想了很多。 有人说,不要在夜深人静的时候思考人生,因...Unity Steam_VR开发工具插件---VRTK 自带案例分析
查询硬件手柄头显
在VRTK插件 的第一个demo
001_CameraRig_VR_PlayArea 案例
这个demo 显示的功能:
按下任一手柄上的按键,便载入下一个场景
找到demo场景中##Scene
Changer## 游戏物体,打开附加的scene
changer脚本
里面有两个核心的类,以及几个重要的API
VRTK_DeviceFinder类 : 用于在场景中寻找左右手柄,头显,返回硬件编号
或手柄,头显的gameobject
获得左右手柄的游戏物体
VRTK_DeviceFinder.GetControllerRightHand();
VRTK_DeviceFinder.GetControllerLiftHand();
获得左右手柄对应的硬件编号
VRTK_DeviceFinder.GetControllerIndex(rightHand)
按下手柄任一按键或键盘上的空格键,加载下一个场景
ForwardPressed 用于侦测手柄的按键是否按下
上图中引入第二个重要的类:
VRTK_SDK_Bridge
这是插件封装了steam VR 的比较底层的API:
VRTK_SDK_Bridge.IsTriggerPressedOnIndex(controllerIndex)
输入硬件的编号,返回是否按下的布尔值.
DEMO 2手柄的输入事件
封装成VRTK_ControllerEvent脚本
针对VR中常见的交互动作:
UI点击, 抓住物体, 触发物体功能 等, 自定义手柄按键,绑定这些动作.
pointerToggleButton :激光的显示开关, 激光在VR里相当于鼠标箭头的指向功能.
pointerSetButton: 激光停留的指向目标,触发目标的功能.
相当于鼠标点击;
grabToggleButton:
抓住物体动作,
配合使用VRTK插件集成的抓取,投掷功能.
useToggleButton:
触发目标事件,
比如把手柄放在门把手上,按下这个按键,触发门打开的功能,手柄放在电灯开关上,按下按键,触发电灯开发的功能.
这个和pointerSetButton区别在于后者需要激光落在目标上,才能触发目标上的功能
uiClickButton :触发UI Canvas 目标的事件
menuToggleButton: 游戏目录显示开关
axisFidelity:
按键按下的强度,完全按下是1,松开时是0,
现在只有Trigger按键(手部后面扳机)有此属性
triggerClickThreShold:
扳机要到多大程度,才能使用扳机的触发功能.
,则表示只要按下一半的程度就可以触发,如果是1,则必须完全按下才能触发.
以上是设置各个按键在插件中交互的功能
如果要获得每个按键具体的使用情况,如按下,松开按键,手触摸板的按键位置,扳机的按下强度,则需要在VRTK_ControllerEvent注册对应按键的事件
在VRTK_ControllerEvents_ListenerExample脚本中,监听了VRTK_ControllerEvent所有按键的事件,和按键的参数信息
如 下图见图的扳机键的按键事件
事件的参数是
手柄的硬件编号, 按钮的按下程度值(扳机键专有的属性), 触摸板的触摸位置和角度(触摸板专有的属性)
DEMO 003_Controller_SimplePointer
VRTK_Simple Pointer类
该脚本继承自VRTK_WorldPointer
功能的核心是将玩家的位置传送到激光所指落在的地方,
该脚本应默认放在手柄的prefab上
其他的参数设置激活颜色,传送时是否显示玩家活动区域, 激光有效触碰的层,激光的粗细等
DEMO 004_CameraRig_BasicTeleport
VRTK_BasicTeleport
该脚本配合继承自VRTK_WorldPointer的子类 如VRTK_Simple
添加此脚本后才可以位移传送
1: 传送时黑屏
模拟眨眼动画,过渡更自然
2: 黑屏时间
随传送距离远近成正比的黑屏时间
假如传送的位置比较远,则黑屏时间更久, 数值越大,黑屏时间越长,数值为0时,不受距离远近影响
3: 头部位置
以头部为基准,作为传送的位置,
未打钩,则是玩家可玩区域的中心位置作为传送的目标点.
可玩区域不能和游戏环境交叉.最大化玩家活动空间
4:禁止传送物体的标签
如果传送的目标位置的物体标签和此相同,则不能传送
5:作为第四个功能的补充
可以添加VRTK_TagOrScriptPolicyList脚本中添加多个禁止传送的物体标签
6 navemesh 边缘限制
在navemesh上传送,如果在navemesh的边界,则禁止传送,数值是离边界的距离范围.
DEMO 005_Controller_BasicObjectGrabbing
手柄上添加的组件
VRTK_InteractGrab
这个脚本用来抓取物体, 抓的按键在VRTK_ControllerEvent 脚本中设置
controllerAttachPoint:
被抓的物体,被附加在哪个物体上,
默认是手柄的圆环处
HideController On Grab
抓住物体时,隐藏手柄
Hide Controller Delay
延迟几秒后隐藏手柄
Grab Precognition
提前预判抓取物体
对应快速运动的物体,我们可能需要提早按下抓取按键才能抓住物体, 数值是提前的时间值,值越大, 可提前的抓取时间越长
Throw Multiplier: 把物体扔出去时,速度的倍增值
Create Rigid Body When Not Touch :
在碰到物体时才创建RigidBody
默认情况下手柄也创建Rigidbody,这就可以和物体在物理上
VRTK_InteractTouch
和物体接触
Hide Controller On Touch
接触物体时隐藏物体
Hide Controller Delay :
接触物体后延迟几秒后隐藏物体
Global Touch HighLight Color 如果被接触的物体上未设置接触高亮颜色,则用此颜色来对改变目标的颜色
Custom RigidBody Object 自定义用于判定接触的刚体物体, 如果没有的话,会自动在子层级创建一个刚体物体
交互物体上应该添加的脚本
VRTK_InteractableObject
需要有rigidbody组件和collider组件
1 Touch options
HighLight OnTouch 接触时高亮显示物体颜色
Touch HightLight Color 高亮的颜色
Rumble On Touch 接触时的反馈震动
强度和时间
Allow Touch Controller
规定哪个手柄可以接触这个物体
Hide Controller On Touch
覆盖是否隐藏手柄的设置
default是根据手柄的设置
2 Grab Options
IsGrabbable
是否可以被抓取
Is droppable 松开时是否掉落
Is swappable 是否可替换
如果不行 则必须先把物体丢掉
Hold Button To Grab 按住才能保证物体不掉落
Grab Override Button 覆盖手柄的抓取按键设置
Rumble On Touch 接触时震动 同上
Allowed Grab Controllers规定哪个手柄可以接触这个物体
Precision Grab 精准抓取
如果是,则抓取的位置是刚接触到物体的点,而不是默认的物体中心位置
Right Left Snap Handle 被抓物体的抓取点, 该游戏物体应该放在被抓物的子层级下
StayGrabbed On Teleport 传送后仍然抓住物体 否则物体丢掉
GrabAttach Mechanic
被抓物体的依附机制
Fixed_joint
链接到fixed
Joint 上,这是比较常用的物理上的固定位置链接
Spring_joint 和Fixed Joint类似 但是有点手臂关节,可以拉伸弯曲伸直,
不靠joint 链接 而是让被抓物跟随手柄的位置方向
rotator _Track 比较适合门,车驾驶把手这种 有固定转轴的物体,它只能在受转轴的约束下,根据手柄的抓取位置来调整旋转,
child of controller 作为手柄的子物体, climbable
固定不动的交互物体
3 Use options
Use only if Grabbed
只有在被抓取时才可以被使用
Hold Button to Use 长按手柄按键才可以使用
Use Override Button 自定义操作按键
Pointer activates Use Action
当手柄发射的激光落在交互物体上,于此同时如果Holon
to use没有打钩,则使用该物体,
to use打钩了,则要按住使用按键才可以使用该物体
该脚本可以 为交互物体增加一个外轮廓颜色
VRTK_InteractableObject扩展
DEMO 006_Controller_UsingADoor
该例子用了一个开门的交互来扩展VRTK_InteractableObject 脚本
接触VRTK_InteractableObject类
覆盖开始使用物品的方法
在此方法中写入交互动作的逻辑方法
物体被接触时,抓取时,接触接触,结束抓取动作发生时调用的函数,
可以覆盖此方法,自定义扩展你的交互动作.
手柄上应该添加下图脚本,否则无法使用物体
DEMO 007_CameraRig_HeightAdjustTeleport
高度升降传送
此脚本继承VRTK_BasicTeleport,
4场景只能水平面平移传送,
它可以传送高低不同的地面,而且还可以模拟走上下楼梯的位移感
上图中红框中是扩展的功能参数
Play space falling 是否能下落
Play space fall restriction 下落条件, 规定哪个手柄位于当前平面内,就不会下落
Use gravity 是否自由落体加速度
Gravity Fall Height 超过多少高度差,才开始自由落体
Blink Y threshold
高度落差超过多少值时,才会模拟黑屏眨眼的效果
Floor Height Tolerance
找过这个数值时,才会有上升和下降的位移
DEMO 008_Controller_UsingAGrabbedObject
和第6个场景原理类似,都是继承VRTK_InteractableObject 脚本,物品的使用功能拓展
DEMO 009_Controller_BezierPointer
抛物线传送侦测
和VRTK_Simple Pointer功能类似
,不同的使用用抛物线来代替激光直线获取传送的位置
红框内是额外的参数,
设置抛物线的最长有效距离,
抛物线 中的物体, 落地的光标物体设置等,没有什么额外特别的东西
DEMO 010_CameraRig_TerrainTeleporting
此例子没有演示新的功能,只是展示了可以在地形上传送
DEMO 011_Camera_HeadSetCollisionFading
头部碰撞到物品后黑屏眨眼效果, 提示玩家已经和游戏中物体相接触,让其返回到正常的区域
附加在Camera(eye) 上
DEMO 012_Controller_PointerWithAreaCollision
传送的位置附近的物品如果和玩家可活动范围碰撞器的相接触,将影响传送位置的最终位置,使其在合理的范围内
开启可玩区域碰撞体
DEMO 013 演示了多个物体抓取和使用的功能
DEMO 014 演示了抓取物品握住的位置
主要是这里的参数设置,这些参数的意义之前已经有说明
DEMO 015_Controller_TouchpadAxisControl
演示手指在手柄触摸板的触摸位置 vector2 (x,y),来控制小车的移动方向, 手柄的扳机,控制小车跳起的动作
基本思路是 一个脚本监听手柄的输入事件, 将事件的相关值传入到小车的控制器
监听手柄按键
传入到小车的控制运动的脚本
小车的运动部分函数
DEMO 016_Controller_HapticRumble
当蓝色盒子上的剑和红色盒子撞击时,触发手柄震动
基本思路是剑的物体碰撞器侦测到碰撞时,获取手柄的运动速度,来决定震动的强度
controllerAction和ControllerEvents对应的手柄身这两个脚本
关键的震动方法是
有VRTK.ControllerAction.TriggerHapticPulse
( 震动强度, 震动持续时间,震动间隔时间)
017_CameraRig_TouchpadWalking
使用触摸板来控制人物行走,以及在低矮的洞穴中蹲走时碰到头顶的碰撞体,返回到能正常直立站立的位置
附加在此物体上
VRTK_PlayerPresence 让人物有碰撞体, 且头部上方有碰撞体时,如果不蹲着走,就会强制返回可以正常站立的位置
HeadSet Y position 头部碰撞体离头顶向下的偏移值, 这样可以通过更矮的挡板
Ignore Grabbed Collisions
忽略交互物体的碰撞效果,建议勾上
Reset Position On Collision 在低矮的洞穴中蹲走时碰到头顶的碰撞体,返回到能正常直立站立的位置
Falling physics only 如果打钩,则可以自由落体下降
VRTK_TouchpadWalking
通过触摸板的触摸位置来定位移动方向
leftController ,rightController如果勾选则可以控制移动
Max Walk Speed 最大行走速度,
如果触摸位置离中心位置越近,移动速度越慢
Deceleration
行走结束时的减速效果,防止恶心
MoveOnButtonPress
按下哪个按键时才能触发移动(前提触摸板也要输入)
Device For Direction
移动的方向 以哪个设备为基准
头显朝向,还是左右手柄的正方向
018_显示当前帧数
把这个prefab 拖到场景中就可以显示当前帧数
DEMO 019_Controller_InteractingWithPointer
用手柄激光和物体交互
VRTK_interactionObject的 pointer
activates use 打钩后,就可以用激光和物体交互,如果HolonToUse 没有勾选
,那么激光落在物体上,就直接使用该物体,
HolonToUse勾选了,那就需要激活指在物体上,同时按下扳机按键,才使用物体
DEMO 020_CameraRig_MeshTeleporting
在各种形状的网格上传送
激活指针传送和抛物线在复杂网格模型上的传送效果,没有新的功能演示
DEMO 021_Controller_GrabbingObjectsWithJoints
物体不同的交互方式
盒子的上半部分添加转轴组件
设置转轴的转动轴向,位置,就可以像真实打开箱子一样.
箱子的把手需要添加以下脚本
VRTK_Interactable
Object 是必须要添加的脚本,它保证可以被手柄抓取
rigidbody和fiexed
joint是用来连接上半部分的盒子,固定把手的位置
有一定活动区间关节物体
使用character joint 来确定上下关节的连接关系(每个关节也要添加rigidbody 组件)
其关节上的VRTK_InteractableObject 的Grab
Attach Mechanic 要设置成spring_joint
看过本文的人也看了:
我要留言技术领域:
取消收藏确定要取消收藏吗?
删除图谱提示你保存在该图谱下的知识内容也会被删除,建议你先将内容移到其他图谱中。你确定要删除知识图谱及其内容吗?
删除节点提示无法删除该知识节点,因该节点下仍保存有相关知识内容!
删除节点提示你确定要删除该知识节点吗?Steam VR Unity VRTK Examples 3 物体使用 - 简书
Steam VR Unity VRTK Examples 3 物体使用
006_Controller_UsingADoor 使用控制器开关门
该场景中放置了两个可交互对象——“门”。把控制器放到门前,按下控制器上面的Trigger键可以实现与门的交互。如果门是开着的话,它会关上,反之亦然。
usingdoors
下面详细的看一下这是怎么实现的。这个场景中相机的起始位置在两扇门中间的位置,需要走几步就能到达门前面,门的Collider比它的mesh要大一些,是为了交互方便。该场景中没有“传送(Teleport)”功能,读者可以自己添加,记不起来怎么做的话,翻翻好了。场景中的简易Door对象是个Cube做的,在Hierarchy中是这样子的:
DoorObject
Door对象具有Box Collider,Rigidbody和Openable_Door三个组件,我们要详细看Openable_Door:
Openable_Door
Openable_Door继承自VRTK_InteractableObject,详细介绍过该脚本的触碰与抓取功能,这次来看下Use功能是怎样的。
这个术语听起来还是有点奇怪,仔细想想也合理。当你触碰或者抓住一个物体的时候,想使用该物体进行一些相关的操作时,就必须加一个动作。举个例子,你拿了一把手枪在手里,想发射一下子弹,就需要Use;你拿了个录像机,想要开始录像了,也需要Use。在本例中,控制器已经碰触到门了,想要把门打开,可以点击Trigger按键使用Use操作把门打开。
想要实现Use操作,需要以下几步:
控制器对象绑定VRTK_ControllerEvents脚本来监听控制器按钮的事件,是关于use和停止use的事件,即AliasUseOn和AliasUseOff,用来确定何时应该use以及停止use。
控制器对象需要绑定VRTK_InteractTouch脚本,用来确定可交互对象是不是被触碰着,只有有效触碰的物体可以被use。
可交互物体必须绑定VRTK_InteractableObject脚本,并且isUsable变量要设置为true。
VRTK_InteractUse脚本
Hide Controller On Use: 当use动作开始的时候,隐藏控制器模型。
Hide Controller Delay: 隐藏控制器模型之前的等待时间。
VRTK_InteractableObject脚本
下面是Use部分的参数:
useoptions
Is Usable: 决定物体是否可以使用。
Use Only If Grabbed: 如果选中的话,只有抓住的物体可以使用。
Hold Button To Use: 如果选中的话,需要一直按住use按键才能使用;没有选中的话,use按键是toggle的形式,按一次use,再按一次停止use。
Use Override Button: 可以指定一个按键,use这个特定的可交互物体。
Pointer Activates Use Action: 如果选中的话,当控制器中发出的World指针光束与该物体相交的时候,可以将会运行Using方法。还取决于Hold Button To Use属性。如果该物体Hold Button To Use属性没选中的话,必须释放指针按键才算use。如果Hold Button To Use选中的话,指针按键一直按住也算是use,比如光束划过物体的时候。
Rumble On Use: 设置物体被use时的触觉反馈。Strength指的是震动强度,Duration指的是时间长度。
-Allowed Use Controllers: 决定哪个控制器可以进行use动作。
Hide Controller On Use: 可以覆盖控制器上面的设置。
Openable_Door脚本
该脚本继承自继承自VRTK_InteractableObject,对外暴露了flipped和rotated两个属性。重写了StartUsing方法,用来控制门的开关状态和旋转方向。场景中放了两个门,只有一个属性上不同,即flipped。具体效果可以试一下,门1是只能往一个方向开;门2是朝向相机的另外一侧开门。代码中有相关的计算,仅供参考。:)
面对节奏快、竞争强、信息量大的现代社会,我们浮躁、焦虑、迷茫!
想要记住所有接触到的信息对我们来说很困难,一方面要处理越来越多的信息,TMI(too much information),信息疲劳、信息焦虑以及信息过剩;一方面随着年龄的增长,原本就很可怜的记忆力更加捉襟见肘。“好脑筋不如烂笔头”,那么就动手记下来吧:)
006_Controller_UsingADoor 使用控制器开关门 该场景中放置了两个可交互对象——“门”。把控制器放到门前,按下控制器上面的Trigger键可以实现与门的交互。如果门是开着的话,它会关上,反之亦然。 usingdoors 下面详细的看一下这是怎么实现的。...
005_Controller_BasicObjectGrabbing 基本物体抓取 这个场景展示了怎样实现高亮物体、抓取物体。首先使用控制器触碰物体,可以设置物体的是否高亮、高亮颜色等属性,然后按下Grip键,拿起物体。当松开Grip键的时候,物体沿着控制器的速度和方向被扔...
005_Controller_BasicObjectGrabbing 基本物体抓取 这个场景展示了怎样实现高亮物体、抓取物体。首先使用控制器触碰物体,可以设置物体的是否高亮、高亮颜色等属性,然后按下Grip键,拿起物体。当松开Grip键的时候,物体沿着控制器的速度和方向被扔...
VRTK是由一些大神对SteamVR进行一定的优化后封装出来的便捷快速VR开发工具,下面一步一步来了解这个神插件。我也不知道从哪说起好,所以干脆以它自带的案例来分析了解它吧。 DEMO 1 场景切换、简单获取手柄并监控按钮 第一个场景001_CameraRig_VRPlay...
Unity VR Samples示例项目分析 核心脚本和对象 在VR场景中,我们需要激活我们正在看着的物体,高亮或者交互。在VRSamples中主要包括三个脚本:VREyeRaycaster, VRInput, 以及VRInteractiveItem。 VREyeRayca...
自己是一名老师,想提高自己的口才,于是参加了一个口才训练营。训练营的方法特别好,就一个主题,只要说六十秒就可以了。然而就是这么一个简单的练习,在真正做起来的时候,我发现我竟然无话可说,或者说出来的内容没有逻辑,没有深度。而那些说的好的小伙伴,大多都是有大量阅读积累的人。教练...
大约是2008年的时候,第一次面对真实的同性恋。
在这之前知道的仅限于同性恋这个词,同性同学之前表面要是要好的过头,都是会调侃你们真像同性恋一类的语言,从未想到会在自己身边出现,总觉得那是杜撰的,小说里的,生活中会觉得不可思议。 一、 那是个美发师,一个朋友介绍的,我...
前言 在我以前的文章《日式风格的无缝纹理制作》中,聊到过关于两种不同的纹理图案。今天我们要学习使用AI制作其中一种纹理,而这种纹理不同于上一次教程里所教的纹理,它主要出现在网页设计中,作为网页背景而使用。通常这类纹理图案的特点是阴影和高光的过渡非常细腻,它的色彩游离于黑白灰...
多想他人 少想自我 可能是一切好的开端 -黄磊
画画是会上瘾的,呵呵!虽然是过年,我也没有停下我绘画的手,坚持每日一画。都说画人物最难,所以我画风景,画小动物,就是不敢动笔画人物。 看到简书上的朋友画的十二生肖很可爱,忍不住也照着临摹了一幅画,自我感觉比他的差远了,献丑了! 随后我又尝试着画了一些人物表情,算是为了画人物...}

我要回帖

更多关于 steam vr游戏排行榜 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信