unity制作GTA5(一) —— Michael人物
一、模型制作
使用maya对obj文件的人物进行绑定骨骼与蒙皮:https://www.bilibili.com/video/av37072405/
首先将模型改为T型,因为这样有利于后面设置蒙皮权重。
二、添加武器、摄像机等
1.导入UFPS、Final IK 插件。
2.将预制件HeroHDWeapons拖入到场景。将我们做好的模型替换其子对象Body。
为模型添加组件:Animator(UFPSExampleAniatior)、Vp_FP Body Animator、Full Body Biped IK。
3.将Body下的weapons复制到模型的RightHand下,并分别将每个武器调整到相对模型左手合适的位置。
4.之所以使用Final IK的组件是因为使用Michael的模型替换后,左手位置在原有动画下位置错误,也方便以后对动作进行修改。
对需要两只手拿的武器,添加一个球体,作为左手IK的标记物,命名格式为:武器编号LHTarget。
5.不同的武器要将不同的LHTarget赋值给FullBodyBIipedIK的LeftHandEffector.Target,所以要修改vp_WeaponHandler.cs,在初始化枪械时完成赋值。
首先在代码开头,对该类进行实例化生成对象,
protected FullBodyBipedIK fullBodyBipedIK;
然后在protected virtual void Awake()函数里,将Michael的组件赋值给该对象,
protected virtual void Awake(){// store the first player event handler found in the top of our transform hierarchym_Player = (vp_PlayerEventHandler)transform.root.GetComponentInChildren(typeof(vp_PlayerEventHandler));fullBodyBipedIK = transform.root.GetComponentInChildren<FullBodyBipedIK>();if(Weapons != null)StartWeapon = Mathf.Clamp(StartWeapon, 0, Weapons.Count);}
最后在激活枪械函数public void ActivateWeapon(int index)里完成LHTarget的赋值,此处代码要求LHTarget要为枪械的第一个子对象。
public void ActivateWeapon(int index){m_CurrentWeaponIndex = index;m_CurrentWeapon = null;if (m_CurrentWeaponIndex > 0){m_CurrentWeapon = Weapons[m_CurrentWeaponIndex - 1];if (m_CurrentWeapon != null)m_CurrentWeapon.ActivateGameObject(true);//Set Left Hand Iif (m_CurrentWeaponIndex != 4 && m_CurrentWeaponIndex != 5) {Transform LeftHandTarget = m_CurrentWeapon.Weapon3rdPersonModel.transform.GetChild (0);fullBodyBipedIK.solver.leftHandEffector.target = LeftHandTarget;fullBodyBipedIK.enabled = true;} else {fullBodyBipedIK.enabled = false;}}if(m_CurrentWeapon != null)m_CurrentShooter = CurrentWeapon.GetComponent<vp_Shooter>();}
unity制作GTA5(一) —— Michael人物相关推荐
- unity制作GTA5(二)—— 添加地形、小地图、布娃娃系统
1.添加地形 导入Asset Store里Japanese Otaku City的PQ_Remake_AKIHABARA的预制件 为Block添加碰撞体,并且关闭cast shadow. 2.添加小地 ...
- 【游戏开发实战】使用Unity制作像天天酷跑一样的跑酷游戏——第一篇:人物动画序列帧
文章目录 一.前言 二.创建工程 三.导入序列帧图片素材 四.设置图片格式 五.切割序列帧 六.制作序列帧动画 七.运行效果 一.前言 嗨,大家好,我是新发,今天是大年初一,大家牛年快乐,牛气冲天. ...
- Unity 制作简单的任务动画
Unity 制作简单的任务动画 1.添加人物模型到unity 我使用的是unity store中的免费模型: https://assetstore.unity.com/packages/3d/char ...
- Unity 制作萌系live2d桌宠:屏幕自适应+交互
目录 准备工作 使用unity显示live2d人物 全屏+背景透明+点击穿透+置顶 屏幕自适应 交互 本文在之前的博客如何使用unity制作萌萌的live2d桌宠的基础上对项目继续改进,解决了屏幕自适 ...
- 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 ...
- 【游戏开发实战】(完结)使用Unity制作像天天酷跑一样的跑酷游戏——第七篇:游戏界面的基础UI
文章目录 一.前言 二.导入游戏界面UI素材 三.制作游戏界面UI预设 四.事件管理器 五.编写GameMainPanel.cs脚本 六.游戏管理器添加金币逻辑 七.加金币 八.跳跃事件 九.运行测试 ...
- Unity制作王者荣耀商业级手游
文章目录 1. 本文地址 2. 目录 3. 下载 1. 本文地址 https://blog.csdn.net/COCO56/article/details/94933395 2. 目录 ├─01.Un ...
- 【游戏开发实战】使用Unity制作像天天酷跑一样的跑酷游戏——第三篇:跑酷地面制作
文章目录 一.前言 二.导入地面素材 三.制作地面预设 四.使用脚本控制地面移动 五.起始和结束位置 六.复制多个地面预设 七.运行效果 一.前言 嗨,大家好,我是新发,今天是大年初三,大家牛年快乐, ...
- 【游戏开发实战】使用Unity制作像天天酷跑一样的跑酷游戏——第二篇:使用Animator控制跑酷角色的动画状态切换
文章目录 一.前言 二.制作一段跳.二段跳动画 三.编辑动画控制器 四.运行效果 一.前言 嗨,大家好,我是新发,今天是大年初二,大家牛年快乐,牛气冲天. 我打算写一篇使用Unity制作像天天酷跑一样 ...
最新文章
- 手把手教你如何做建模竞赛(baseline代码讲解)
- 架构师之路 — 数据库设计 — 关系型数据库应用程序设计
- Android开发--XML文件解析
- 计算机视觉深度学习顶会_顶会论文接收量再破纪录,计算机视觉创新正在发生什么变化?丨 CVPR 2019分享会...
- 吐血整理所有常用端口,遇到端口问题一查就懂!
- 创业失败的七个原因及解决之道
- 从零开始学习jQuery (五) 事件与事件对象
- 树莓派4烧录系统后黑屏_树莓派4B初次使用--系统安装|配置
- error: invalid use of incomplete type 'XXXX' ;error: forward declaration of 'XXXX' 声明改为包含头文件
- SpringBoot项目新手——问题疑惑及解决笔记
- python利用缩进写模块_Python之缩进块
- Python学习笔记:列表、字典与集合解析(List, Dict and Set Comprehensions)
- linux的增删改查、压缩与解压缩
- python强制释放内存_强制Python释放对象以释放内存
- 深掘工业互联网大数据五大维度
- 了解Android布局,了解Android对话框布局
- 北大公开课-计算概论
- 三星S5P6818开发板 (ARM Cortex-A53架构)
- LeetCode——5785. 合并若干三元组以形成目标三元组(Merge Triplets to Form Target Triplet)[中等]——分析及代码(Java)
- 手机浏览器能上网微信无法连接服务器,苹果手机微信可以上网浏览器不能