Unity制作RPG游戏——相机的设计与实现
本文将详细介绍Player的相机设计,不适用任何插件,如何制作类似RPG游戏的相机。
首先,设置正确的Hierarchy层级关系:将camPos的position和euler传递给Main Camera即可
其次,设计思路:视野左右旋转调节Player的rotate,上下旋转调节cameraController
这样设计的好处是符合我们实际的操作习惯,例如玩家要向前移动,默认是希望向前视野的前方移动,所以在水平方向上来调节Player的rotation更好,竖直方向上我们可能还需要做lockon注视等操作,同时,放在一个物体上进行旋转容易产生万向锁,所以这样分开处理。
最后,处理上下视野切换时,容易产生的翻转问题,见代码
代码:
下面这段代码根据上面的设计,实现了镜头的旋转,并限定上下旋转镜头的范围是-40~50.但是会出现一个严重的bug,上下旋转时cameraController的x欧拉角永远不会小于0,小于0则会从50开始,这可能跟读取欧拉角时默认读取正数有关,例如当x欧拉角旋转为-1时,读取数据会变为359,最后根据clamp则变为50,所以镜头会在0附近进行较大幅度的突变。
解决方案是,在start方法里就读取出x轴的欧拉角,在update中完成计算后,再赋值给物体自身,见代码:
这样就基本完成了一个相机的设计。
Unity制作RPG游戏——相机的设计与实现相关推荐
- Unity制作RPG游戏——战斗注视LockOn实现方法
一.实现步骤 1.在Input脚本中新增一个LockOn信号,显然它是Onpressed信号 2.当LockOn信号为true时,调用cameraController中的LockUpLock方法,主要 ...
- Unity制作RPG游戏——按键功能的分类与实现
这一部分跟大家分享一个游戏开发中一个必须明白的问题,那就是怎么设计按键,有哪几种按键,怎么实现? 一.按键的种类 简单来说,一般有三类, press signal :键位输入等,按下时获取并更新输入 ...
- Unity制作RPG游戏——碰撞检测
在介绍相机之前,有必要介绍一下碰撞检测.在unity中很多地方都需要用到碰撞检测,例如在人物的移动过程,我们需要检测角色当前是否在地面上,那么有一些比较合适的检测方案,例如物理射线等,untiy中有一 ...
- 使用Unity开发RPG游戏完整指南(全)
使用Unity开发RPG游戏完整指南(全) - GameRes游资网 关注公众号 风色年代(itfantasycc) 200G Unity资料合集送上~ 本教程教大家如何使用Unity创建一个RPG游 ...
- Unity制作格斗游戏核心思路总结
http://anchorart9.com/2016/05/22/unity%E5%88%B6%E4%BD%9C%E6%A0%BC%E6%96%97%E6%B8%B8%E6%88%8F%E6%A0%B ...
- Python——利用pygame模块制作RPG游戏(一)
利用pygame模块制作RPG游戏(一) 需要用到的第三方库:pygame 一.构造游戏的基本框架 1.首先准备好相应的游戏素材:背景,人物动作图片,音乐,音效等. 图片均用png格式,音乐音效均用o ...
- 使用Unity开发RPG游戏完整指南
本教程教大家如何使用Unity创建一个RPG游戏.类似我们之前介绍过的RPG游戏<Ghost of a Tale>,玩家可以在城镇场景中进行导航并寻找战斗,并在战斗中遇到不同类型的敌人.玩 ...
- unity3d制作RPG游戏系列(4)——UI界面
个人博客文章链接:http://www.huqj.top/article?id=161 游戏中除了3d场景以外,UI界面也是很重要的一部分,例如主角的头像.血条.背包.按钮等. 下面是myrpg中的简 ...
- RPG游戏攻防公式设计探讨
游戏战斗模型之中,各种战斗公式的设计完全依照设计者的需求所致.这些战斗公式错中复杂,而且关联性十分紧密,因此我们在设计战斗模型时,必须先从宏观上来考虑战斗的整体流程. 数学公式的原理来自于设计师的概念 ...
最新文章
- JS实现HashMap
- 怎么给web 服务器 传文件,web文件传到服务器
- HDU5985 Lucky Conins 概率题
- Android项目使用Eclipse进行单元测试
- stanford-parser for C#
- 谈智能DNS解析的应用
- Android学习Matrix对称变换5
- usb网卡android驱动+win7,USB无线网卡万能驱动下载
- 基于F407ZGT6的WS2812B彩灯驱动
- 多张图片怎么合成一个pdf文件?
- abs在c 语言中的作用是什么意思,abs什么意思 c语言中abs是什么意思
- lambda累加求和
- 机器学习-决策树算法
- MSP430 G2553 Launchpad实现电容测量
- java实现hdf5表数据的动态逐条追加
- 摄影测量外方位元素代码
- 互动教程 for Xcode10 and Swift4.2
- python算法工程师需要会写什么_算法工程师到底在干嘛
- 【Altium Designer学习】:排针类元件模型的创建以及阵列式粘贴方法
- python 超大json文件读取