这个教程我们学习如何实现载具的驾驶

一、准备工作

  1 最简单的载具驾驶需要至少两个元素,一是需要一个载具,二是需要一个前进的按钮(这里我们只做前进功能),为了直观的能感受到载具的移动,我们还得创造一个参照物。

  2 根据前面的教程,新建一个project,导入SDK,

  3 模型素材(碎石空间.rar)可以在Q群581425491群文件中下载。

  4 将碎石空间导入项目(注意取消.cs和.js文件的勾选),将我们将要驾驶的悬浮岛屿和参照物拖入中间的scene窗口中。A作为要驾驶的岛屿,B作为参照物。

  5 在右侧的属性面板中将两个岛屿都放大,A岛屿放大20倍,B岛屿放大50倍

  6 将VRCWorld放到A上面去,注意位置。

二、设置载具

  1 给载具添加物理碰撞

    玩家要站在这个岛上就需要它有物理碰撞的属性,否则玩家会穿过岛屿掉到空中。

    所以选中A,右侧属性面板中“Add Component>Physics>Box Collider”,添加一个简单的box碰撞属性,使用Edit Collider调节好碰撞的范围。

  2 设置载具为刚体

    移动这个岛屿的原理就是给它添加某个方向上的力,所以要给岛屿添加刚体的属性否则不能受力。右侧属性面板中“Add Component>Physics>Rigidbody”。添加刚体属性后需要将岛屿Y轴上的受力冻结住,因为刚体会受到重力,我们没有添加地面,所以岛屿受到重力后就会掉下去,所以我们冻结住Y轴上的受力岛屿就可以浮空了。

三、设置操作按钮

  设置好载具后,我们需要一个按钮来控制载具的前进,原理是点击一下按钮就给岛屿Z轴上一个力推动岛屿向Z方向移动。

  1 添加一个按钮

    我们在左侧的面板中“右键鼠标>3D Object>Cube”创建一个方块,移动这个方块使其位于岛屿的上方,我们就把这个方块作为操作的按钮。

  2 给按钮添加触摸事件

    右侧属性面板“Add Component>Scripts>VRCSDK2>VRC_Trigger”,添加一个trigger事件。接着在右侧的VRC_Trigger属性中添加一个“OnInteract”

    在Actions中添加“Basic Events>AddForce”,接着选中AddForce,给这个Action添加一个接收的目标(Receivers),很明显,现在只有添加了刚体属性的岛屿能接收这个力。

    最后根据实际情况,设置下力度,这里我们是需要向Z轴施加力。

四、测试

  准备就绪,按之前说的方法测试一下吧,进游戏里触摸一下方块就可以了。需要注意的是因为没有空气阻力所以施加一个力后小岛会匀速向Z方向一直移动不会停下来的。如果要设置阻力的话可以设置小岛Rigidbody中的Drag属性。快去试试看吧。

更多的官方示例可以在VRCSDK>Examples>Scenes里找到

欢迎加入VRChat交流Q群:

581425491

最新文章

  1. GPRS 接入外网的过程
  2. HB制作的app版本更新
  3. app开发之deviceone
  4. C#基础总结之四List-Hashtable-冒泡排序
  5. FAILURE: Build failed with an exception. Crunching Cruncher screen.png failed
  6. Windows下Android SDK Manage下载速度缓慢的解决方法
  7. activity学习(1) 生命周期理解
  8. QWaitCondition(和Java的Notify机制非常相像)
  9. 关于bootstrap--排版(标题、强调、背景、插入符等)
  10. mysql 查看mysql版本的四种方法
  11. hdu 4961 Boring Sum(数学题)
  12. JQUERY简写案例
  13. ASP.NET Core MVC 模型绑定用法及原理
  14. 使用joda-time工具类 计算时间相差多少 天,小时,分钟,秒
  15. chromedriver禁用图片,禁用js,切换UA
  16. TX2-入门坑点-Ubuntu16.04任务栏消失
  17. 版本控制——Version Control
  18. Android 使用WebView加载含有Canvas的页面截屏处理
  19. Object-C-自定义类型归档
  20. Tornado 文件操作笔记

热门文章

  1. 一次Tomcat6.0.33版本号与6.0.44版本号差异所引发的问题
  2. JMETER 不同线程组 变量值 的参数传递(转)
  3. Volley使用详细说明
  4. STL中的容器
  5. Hadoop 2.0 NameNode HA和Federation实践【转】
  6. 智力大冲浪(洛谷P1230)
  7. linux必学
  8. js 中和c类似
  9. 中间件MQ选型要点
  10. Spring 框架的JDBC模板技术