unity3d-角色控制器续
自学是一个坚持和寂寞的过程,写博客更是一个总结与成长的过程,加油!
角色控制器续
之前学习了角色漫游,但里面有很多效果都不是我想要的。只有自己的动手实践了才能理会其中的奥妙。所以我又琢磨了许久。
为了把文章写的完整。所以把地形到角色控制器一个流程写下了
地形Terrain
1:新建地形
新建地形后。可以设置地形的参数,开发前期就要设置好地形配置,开发中期,如果在设置地形的话。地形将会变成初始化状态
2:参数设置
选择地形对象,在Inspector中可以看到地形菜单栏
单击地形设置,找到下面Resolution选项
3:编辑地形
现在可以拿出自己的艺术细胞。可以尽情的开始涂鸦。几分钟后........
接下来看第二个:编辑地形特定高度
第三个是平滑过渡,可以把地形弄得圆滑些。自己可以试试。就不上图了
第四个是地形贴图。给地形添加一张山漠的贴图,
unity内置了地形资源。ok,导包
导入完成后。资源包含了贴图,树。花草等等
你会发现这里可以添加多张贴图。第一张默认是地形是整个颜色,如果你想在上面画其他颜色,可以添加第二个贴图,比如现在想画绿色
那么现在在添加一张绿色贴图,然后选中绿色贴图,用画笔在地形中绘制。
当然,你可以删除贴图和编辑贴图。达到你想要的效果。
第五个是添加树。第六个是添加草,具体添加方法跟上面贴图一样。也不上图了
来看看树的一些参数解释
草的参数也不上图了。跟上面差不多。然后在给加上天空盒子(上篇博客介绍过怎么使用),最后我的涂药效果。
现在终于到了角色控制器了。
角色控制器
角色控制器组件保存在unity标准资源包中,可以模拟第一人称或者第三人称视角,它不受刚体的限制,ok,既然是资源包,导包呗。
Import Package-->Character Controller 搞定
1:第一人称。在第一人称视角中,整个游戏视图好比主角的眼睛,游戏画面中的一切好像好像是从自己眼睛看到的一样,就像CS游戏。
2:第三人称。在游戏场景中包含主角和Camera,主角移动后,Camera永远跟着主角移动,所以游戏中一直可以看到主角当前移动的方向。
看看刚刚导入的角色控制器资源包
选择第一人称或者第三人称拖入Scene视图中,,运行游戏看效果(wsda移动空格键跳跃)
看看效果:你会发现什么问题?
1:当我把第三人称角色控制器拖入sceen视图中的时候。有一半是在地形里面的。这样。你需要把他拖到地形之上,否则会掉小去
2:发现他是不是可以穿过树木,因为树木是地形内置的资源。是没办法解决的。除非你单独导入树模型。然后给模型添加控制器。
现在看到这些。是不是迫不及待的想自己做一个游戏角色来模拟这些效果。
ok。拿之前的"角色漫游"那篇博文来讲解
1:新建地形
2:导入角色
3:我这里导入树模型和石头。这样角色就不可以穿过树或者石头
为了不能穿过石头。所以要把石头和角色都添加碰撞器角色添加刚体,当角色用力撞击石头的时候,你会发现。角色因为刚体的作用会反弹,那么问题来了。
所以这里就需要用到角色控制器组件,对,就是这个组件,角色控制器组件和刚体组件都具备物理引擎功能,他们都需要绑定在游戏对象中,、才能实现物理效果
并且同一个游戏对象中两者只能存在一个。刚体组件可以非常精确的模拟现实世界中模型的一切物理效果,而角色控制器组件则没有刚体那么精确,它更多地受控制器的限制,所以它更适合控制游戏对象
有兴趣的可以去尝试下。今天就写到这里,这里没什么代码是些理论。下一篇在写角色控制器组件,和用代码控制角色
unity3d-角色控制器续的更多相关文章
- unity3d角色控制器01
参考出处貌似是雨松大神.如有侵权,立即删除. 需要导入包 ①将FirstPerson Controller拖拽入Hierarchy(层次视图)中.由于角色控制器是具有一定物理引擎的,所以一定要将它放在 ...
- [unity3d]角色控制器组件相互间不碰撞
RPG游戏会有这种需求. 队友之间,玩家之间.玩家与怪物之间,都有可能须要不能碰撞.怎样实现?这个问题困恼了一段时间,昨天在网上看到解答的方法: 这里举例玩家和怪物之间: 1,填加2个不同的层级mon ...
- [原]Unity3D深入浅出 - 角色控制器(Character Controller)
角色控制器主要用于第一人称和第三人称主角的控制,并不使用刚体物理效果. 添加角色控制器的方法:依次打开菜单栏中的Component - Physiscs - Character Controller ...
- Unity3D笔记 英保通六 角色控制器
一.角色控制器 U3D有两种角色控制方式:Rigidbody刚体.角色控制器组件(胶囊体组件) 面试的题目中经常会遇到这个问题: CharacterController和Rigidbody的区别? 这 ...
- Unity手游之路<七>角色控制器
Unity手游之路<七>角色控制器 我们要控制角色的移动,可以全部细节都由自己来实现.控制角色模型的移动,同时移动摄影机,改变视角.当然Unity也提供了一些组件,可以让我们做更少的工作, ...
- Unity手游之路<七>角色控制器
我们要控制角色的移动,能够所有细节都由自己来实现.控制角色模型的移动,同一时候移动摄影机,改变视角.当然Unity也提供了一些组件,能够让我们做更少的工作,实现我们所期望的功能.今天我们就一起系统来学 ...
- unity3d-代码控制游戏角色控制器移动
先上一个gif看看效果.因为图片大小限制.所以录制的比较小.个人认为效果比较牵强.特别是里面的逻辑代码. 不过我还是认为一切是为了先实现,因为我是刚接触的新手. 工程结构图 这次实现的效果是: 1:摄 ...
- 【Unity 3D】学习笔记三十八:角色控制器
角色控制器 在unity中,已经帮我们实现的上下左右跳等动作,并将他们封装成了角色控制器.角色控制器保存在unity标准资源包中,能够说是很的强大.能够模拟第一或者第三人称视角.不受刚体的限制,很适用 ...
- U3D组件------CharacterController(角色控制器)
角色控制器中有碰撞体和刚体的属性 Slope Limit:角色能爬的斜坡的坡度限制 Step Offset:角色走台阶的高度 Skin Width:当场景里面出现多个角色控制器的时候,两个对象在接触的 ...
随机推荐
- {django模型层(二)多表操作}一 创建模型 二 添加表记录 三 基于对象的跨表查询 四 基于双下划线的跨表查询 五 聚合查询、分组查询、F查询和Q查询
Django基础五之django模型层(二)多表操作 本节目录 一 创建模型 二 添加表记录 三 基于对象的跨表查询 四 基于双下划线的跨表查询 五 聚合查询.分组查询.F查询和Q查询 六 xxx 七 ...
- LeetCode 4 - 两个排序数组的中位数 - [分治]
题目链接:https://leetcode-cn.com/problems/median-of-two-sorted-arrays/description/ 给定两个大小为 m 和 n 的有序数组 n ...
- 1.7Oo局部变量和成员变量执行顺序
import java.util.Scanner; public class booleann { private float fWidth; private float fHeight; void ...
- 创建结点 与 分配内存 Function to create a Node. Allocates memory for a new node. 主动申请内存 链表 指针的写法
Self Referential Data Structure in C - create a singly linked list http://www.how2lab.com/programmin ...
- Flink – JobManager.submitJob
JobManager作为actor, case SubmitJob(jobGraph, listeningBehaviour) => val client = sender() val jobI ...
- EF-CodeFirst-基础
什么是Code-First Code-First主要用于领域驱动设计.在Code-First方法中,专注于应用程序的域,先开始为域实体创建类,而不是先设计数据库,然后创建与数据库设计相匹配的类.下图说 ...
- Appium-两个小报错
(1) 执行脚本appium报错:> info: [debug] Emulator not running appium设置中取消勾选launch avd解决 (2)执行脚本python ...
- linux进程间通信同步-共享内存
参考:https://www.cnblogs.com/charlesblc/p/6142868.html 使用有名信号量,sem_open().sem_close().sem_post().sem_w ...
- 在Linux下用C语言实现短信收发
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/lyserver/archive/2008/10/01/3007090.aspx 首先,我根据功能需要创建了几个头文件 ...
- centos中文语言安装
1.查看当前使用的系统语言 #echo LANG 2.查看系统是否安装中文 #locale 如有zh_cn,表示已经安装了中文语言 3.安装中文 #yum groupinstall chinese-s ...