作者yoyotvyoo (波掐波掐波掐)
看板GameDesign
标题[程式] Cardboard中的第一人称控制器
时间Tue May 10 00:22:52 2016
小弟这阵子刚开始摸索Google Cardboard,
上礼拜在实作上遇到一个问题,搞了几天还是没有解,所以来求助板友。
我要做的是一个第一人称可以双人对战的游戏,
也就是说玩家A看不到自己,玩家B也看不到自己,
但是他们连线时可以在游戏中互相看到对方的角色。
当我写好角色移动的脚本,
(这边我用Input.GetAxis搭配transform.Translate来移动)
然後把Cardboard SDK中的CardboardHead Prefab放到角色底下当子物件,
但我发现因为没有让角色跟着旋转,
所以无论我的相机看哪里,我都只能走固定的四个方向(前後左右),
而没有办法往相机看的方向前进後退、左右移动。
於是我开始尝试如何改正,以下两个是我试过但失败的方法:
1. 将相机的rotation指定给角色的rotation,但由於它们是父子物件关系,
所以会开始转圈,瞬间失败。
2. 将角色的前後移动方向改成相机的Vector3.forward和Vector3.back,
左右移动改成相机的Vector3.left和Vector3.right,
这样能顺利跟着相机的方向移动(就和一般的第一人称射击游戏一样),
但是角色永远面向同一个方向,不会跟着相机旋转,还是失败。
因为在连线时要看到另一个角色的移动,所以我想做到的是,
以CardboardHead Prefab(或者CardboardMain Prefab)来做第一人称角色的相机,
且在旋转相机视角时,角色的“面对方向”以及“移动方向”是可以一致的。
不晓得有没有比较推荐的做法?
感谢板友们花时间看到这里,你们的任何想法都会非常有帮助。
谢谢!
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 61.230.249.151
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/GameDesign/M.1462810975.A.2A1.html
1F:推 laikyo: 父子对调。然後这种移动控制会晕 05/10 12:57
2F:→ laikyo: 或者找个现成的控制器套一下 05/10 22:50
解决了!谢谢~
※ 编辑: yoyotvyoo (140.113.214.171), 05/11/2016 09:53:34