http://www.narkii.com/club/thread-336153-1.html

WRP Ultimate 3D Endless Runner Kit -  下载位置:
http://www.narkii.com/club/thread-315389-1.html
此插件需要使用Unity 4.1.2以上的版本
适合对象:有Unity的基本操作经验与脚本基础即可

在上个教程里面,我们简单的介绍了WRP的一些功能与操作流程,有些朋友邮件询问替换角色的方法,也就是直接将其他的模型导入WRP进行玩家的替换,并且使用玩家预设的动作设置。

这里需要特别注意的地方就是导入的模型需要设置为Mecanim的模式,并且更换脚本里面玩家对应的名称,现在我们就来介绍操作的流程:

下载并安装资源后进行游戏测试,默认的玩家角色为逃犯,按下Tab to Start后即可进行游戏,在PC或是MAC端使用方向键来控制玩家的左右、跳跃与滑行,输出手机端时则是直接用上下左右滑动来进行控制。

而玩家的预制模型是存放在Hierarchy > Player > PlayerRotation > PlayerMesh的目录下,也就是我们需要将其他的模型放置在同一个目录下才能运作。

如图,在Animation里面显示了玩家的动作列表,而这些动作是不需要去进行任何调整的,插件里面已经提供了专用的Animation Controller,只需在其他的模型上面指定此动作控制内容即可。

接着我们导入一个僵尸模型包来进行角色的替换,如果自己有做好的模型也可,模型包的下载位置:
Cartoon Zombies - 卡通风格的僵尸动画模型
http://www.narkii.com/club/thread-328521-1.html
   
将卡通僵尸模型包里面的zombieBoy拖动到PlayerMesh的目录下,然后调整zombieBoy的高度与大小,使其接近于原来的角色(Prisoner),然后再将角色关闭,只留下添加的zombieBoy模型。

如图所示,zombieBoy的模型已经摆放在原来角色的位置,后面是追赶的警车,也可以换成自己的车辆或是其他的模型。

进行测试一下,我们看到zombieBoy目前是静止的状态,也没有任何的动作,这是很正常的,因为我们还没有设置Mecanim系统与控制的方式。

在ZombieBoy的导入部分将Rig更换为Humanoid模式,Avatar Definitio设置为Create From This Model,按下Apply即可完成Mecanim模式的设置。

将原来角色的动作控制器 - PrisonerAnimController添加到Controller,这个动作表示zombieBoy将会使用原来玩家的动作来作为控制方式。

接着就是在脚本里面修改Mecanim使用的判断,在ControllerScript.js的脚本Start()
内找到如下的代码位置进行修改,在else if里面将PlayerMesh后面的名称更换为zombieBoy,这样系统在运行时就会调用Mecanim系统。
  1. if (this.transform.Find("PlayerRotation/PlayerMesh/Prisoner"))
  2. {
  3. mecanimEnabled = false;
  4. aPlayer = this.transform.Find("PlayerRotation/PlayerMesh/Prisoner").GetComponent(Animation) as Animation;
  5. StartCoroutine("playIdleAnimations");//角色播放idle的动作
  6. }
  7. else if (this.transform.Find("PlayerRotation/PlayerMesh/zombieBoy"))//检查是否使用Mecanim动作模型
  8. {
  9. mecanimEnabled = true;
  10. aPlayerMecAnim = this.transform.Find("PlayerRotation/PlayerMesh/zombieBoy").GetComponent(Animator) as Animator;
  11. v3DefaultPlayerAnimPosition = aPlayerMecAnim.transform.localPosition;
  12. v3DefaultPlayerAnimRotation = aPlayerMecAnim.transform.localEulerAngles;
  13. }

复制代码

注意,WRP使用的脚本可以通过Wizards > Toggle Script Type进行类型的更换,这个功能对我们来说很方便,我们可以选择熟悉的语言来进行后续的修改与开发工作。
保存脚本后运行,按下Tab to Start即可开始新的角色游戏,现在zombieBoy开始一路狂奔了,或许有的朋友会觉得僵尸不是应该动作很缓慢吗..? 呵呵,当市面上已经太多的游戏都是在不断的复制类型,我们何尝不能运用手上的资源来创造一种新的玩法呢?

2014-11-17 02:07 上传

下载附件 (69 KB)

WRP里面附带的场景模型与道具物件也是很方便我们进行替换,应该是这样理解,做为一款跑酷项目的参考资源,WRP提供了很不错的基础原型,而剩下的就是看我们的想象力来尽情发挥!
WRP Ultimate 3D Endless Runner Kit -  下载位置:
http://www.narkii.com/club/thread-315389-1.html
此插件需要使用Unity 4.1.2以上的版本
适合对象:有Unity的基本操作经验与脚本基础即可

在上个教程里面,我们简单的介绍了WRP的一些功能与操作流程,有些朋友邮件询问替换角色的方法,也就是直接将其他的模型导入WRP进行玩家的替换,并且使用玩家预设的动作设置。

这里需要特别注意的地方就是导入的模型需要设置为Mecanim的模式,并且更换脚本里面玩家对应的名称,现在我们就来介绍操作的流程:

下载并安装资源后进行游戏测试,默认的玩家角色为逃犯,按下Tab to Start后即可进行游戏,在PC或是MAC端使用方向键来控制玩家的左右、跳跃与滑行,输出手机端时则是直接用上下左右滑动来进行控制。

而玩家的预制模型是存放在Hierarchy > Player > PlayerRotation > PlayerMesh的目录下,也就是我们需要将其他的模型放置在同一个目录下才能运作。

如图,在Animation里面显示了玩家的动作列表,而这些动作是不需要去进行任何调整的,插件里面已经提供了专用的Animation Controller,只需在其他的模型上面指定此动作控制内容即可。

接着我们导入一个僵尸模型包来进行角色的替换,如果自己有做好的模型也可,模型包的下载位置:
Cartoon Zombies - 卡通风格的僵尸动画模型
http://www.narkii.com/club/thread-328521-1.html
   
将卡通僵尸模型包里面的zombieBoy拖动到PlayerMesh的目录下,然后调整zombieBoy的高度与大小,使其接近于原来的角色(Prisoner),然后再将角色关闭,只留下添加的zombieBoy模型。

如图所示,zombieBoy的模型已经摆放在原来角色的位置,后面是追赶的警车,也可以换成自己的车辆或是其他的模型。

进行测试一下,我们看到zombieBoy目前是静止的状态,也没有任何的动作,这是很正常的,因为我们还没有设置Mecanim系统与控制的方式。

在ZombieBoy的导入部分将Rig更换为Humanoid模式,Avatar Definitio设置为Create From This Model,按下Apply即可完成Mecanim模式的设置。

将原来角色的动作控制器 - PrisonerAnimController添加到Controller,这个动作表示zombieBoy将会使用原来玩家的动作来作为控制方式。

接着就是在脚本里面修改Mecanim使用的判断,在ControllerScript.js的脚本Start()
内找到如下的代码位置进行修改,在else if里面将PlayerMesh后面的名称更换为zombieBoy,这样系统在运行时就会调用Mecanim系统。
  1. if (this.transform.Find("PlayerRotation/PlayerMesh/Prisoner"))
  2. {
  3. mecanimEnabled = false;
  4. aPlayer = this.transform.Find("PlayerRotation/PlayerMesh/Prisoner").GetComponent(Animation) as Animation;
  5. StartCoroutine("playIdleAnimations");//角色播放idle的动作
  6. }
  7. else if (this.transform.Find("PlayerRotation/PlayerMesh/zombieBoy"))//检查是否使用Mecanim动作模型
  8. {
  9. mecanimEnabled = true;
  10. aPlayerMecAnim = this.transform.Find("PlayerRotation/PlayerMesh/zombieBoy").GetComponent(Animator) as Animator;
  11. v3DefaultPlayerAnimPosition = aPlayerMecAnim.transform.localPosition;
  12. v3DefaultPlayerAnimRotation = aPlayerMecAnim.transform.localEulerAngles;
  13. }

复制代码

注意,WRP使用的脚本可以通过Wizards > Toggle Script Type进行类型的更换,这个功能对我们来说很方便,我们可以选择熟悉的语言来进行后续的修改与开发工作。
保存脚本后运行,按下Tab to Start即可开始新的角色游戏,现在zombieBoy开始一路狂奔了,或许有的朋友会觉得僵尸不是应该动作很缓慢吗..? 呵呵,当市面上已经太多的游戏都是在不断的复制类型,我们何尝不能运用手上的资源来创造一种新的玩法呢?

2014-11-17 02:07 上传

下载附件 (69 KB)

WRP里面附带的场景模型与道具物件也是很方便我们进行替换,应该是这样理解,做为一款跑酷项目的参考资源,WRP提供了很不错的基础原型,而剩下的就是看我们的想象力来尽情发挥!

WRP Ultimate 3D Endless Runner Kit - 狂徒末路跑酷角色替换教程相关推荐

  1. [教程] 使用3D Infinite Runner Toolkit打造僵尸跑酷游戏

    使用3D Infinite Runner Toolkit打造僵尸跑酷游戏 3D Infinite Runner Toolkit是一款风格特异的3D版跑酷游戏开发包,其优点是容易使用与修改场景内的所有组 ...

  2. 2312、卖木头块 | 面试官与狂徒张三的那些事(leetcode,附思维导图 + 全部解法)

    零 标题:算法(leetcode,附思维导图 + 全部解法)300题之(2312)卖木头块 一 题目描述 二 解法总览(思维导图) 三 全部解法 面试官:看你准备得差不多了,我们开始面试吧. 狂徒张三 ...

  3. 西部狂徒自建服务器,在《西部狂徒》中如何快速建立自己根据地?杀人放火是上策...

    原标题:在<西部狂徒>中如何快速建立自己根据地?杀人放火是上策 作为一个游戏爱好者,小编一直关注着游戏圈里面的动态,当<西部狂徒>这款游戏刚刚上架Steam的时候,小编就有所留 ...

  4. “狂徒”富豪严介和经典语摘

    2005年,胡润榜二号富豪严介和成为备受争议的黑马富豪,我有幸在央视专访节目中看到记者对他的专访,对他的个人独特的人格魅力折服,现在把他在节目中的精典语言摘录出来,让大家也分享这位狂人的个性!(易勇摘 ...

  5. js爬山之作用域和自由变量~~狂徒李四

    作用域的种类 全局作用域 js中最外层 的作用域就是全局作用域 函数作用域 js中可以通过函数来创建一个独立作用域称为函数作用域,函数可以嵌套,所以作用域也可以嵌套: 块级作用域(es6新增) es6 ...

  6. js的爬山之路原型与原型链~~狂徒李四

    prototype 每个函数都有一个prototype属性被称为显示原型 _ proto _ 每个实列对象都会有--proto--属性被称为隐式原型 没一个实列对象的隐式原型-- proto--属性指 ...

  7. 五狂徒盖伦过来插眼 准备边学边写 Egret 游戏

    这两天手头的工作,告一段落. 过来插个眼, 准备学习 手机网页通杀的Egret.

  8. vuex的模块化管理~~~狂徒李四

    路由模块化 创建问价路径如下: 路由模块化思路 /** * * 还是导入导出那一套,首先新建语义化的文件,在js文件中导出export default { //路径 } * 在main.js引入,将引 ...

  9. 路由token验证和路由守卫~~狂徒李四

    在router文件夹下的index.js下写代码 在路由模块下写以下代码 // 路由守卫 router.beforeEach((to, from, next) => {// if判断本地是否有t ...

最新文章

  1. Android/Java 单例使用总结
  2. python多线程输出_Python多线程
  3. 06_Dart异常处理
  4. LIVE555再学习 -- testRTSPClient 实例
  5. springboot在intellij中的热部署(Hot swapping)配置
  6. TWiki 语法格式(TWiki语法教程及TWiki使用技巧)
  7. RabbitMQ 普通集群配置_04
  8. 卷积神经网络中的池化方法(pooling)总结
  9. USB-HDD/ZIP/HDD+/ZIP+/CDROM(量产) U盘启动模式简介
  10. 沟通CTBS常见问题
  11. 黑盒测试与白盒测试(结合例子详细讲解)
  12. js md5加密 无法md5解密
  13. 男人为什么离不开酒?(写的太好了,句句入骨)
  14. Samba结合Windows AD
  15. Unity3d 物体速度快直接穿透墙体没有发生碰撞怎么办?
  16. conda安装tensorflow和conda常用命令
  17. 计算机c盘要满了电脑会卡吗,电脑C盘快满了,赶快来清理电脑C盘垃圾文件,不然系统会越来越卡...
  18. 记录一次MySQL数据库失败教训
  19. java8 access_Java语言8 连接Access数据库UCanAccess的操作介绍
  20. oracle emp表不见了怎么办

热门文章

  1. 【风马一族_php】
  2. 好好说话之Fastbin Attack(1):Fastbin Double Free
  3. PTA1003 python3
  4. [STL源码剖析]空间置配器allocator
  5. ARCH模型和GARCH模型
  6. window与linux双系统文件互通解决方案
  7. C#远程主机强迫关闭一个现有链接问题简述
  8. 阿里天池供应链需求预测(二)
  9. 华三防火墙配置端口地址转换_H3C SecPath 防火墙设置之端口映射(命令)
  10. wireshark学习笔记(MAC地址欺骗)