位置: 编程技术 - 正文

Unity3D游戏开发从零单排(五) - 导入CS模型到Unity3D(Unity3D游戏开发引擎)

编辑:rootadmin
游戏动画基础Animation组件

推荐整理分享Unity3D游戏开发从零单排(五) - 导入CS模型到Unity3D(Unity3D游戏开发引擎),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:Unity3D游戏开发(第2版)pdf,Unity3D游戏开发标准教程,Unity3D游戏开发(第2版),Unity3D游戏开发(第2版)pdf,unity3D游戏开发,Unity3D游戏开发pdf,Unity3D游戏开发毕业论文,Unity3D游戏开发标准教程,内容如对您有帮助,希望把文章链接给更多的朋友!

Animation组件是对于老的动画系统来说的。

老的动画形同对应的动画就是clip,每个运动都是一段单独的动画,使用Play()或CrossFade(),直接播放动画 或淡入淡出播放动画。

下面的是它的几个属性

Animation:默认的动画片段;

Aniamtions:包含的动画片段;

Play Automatically: 是否自动播放;

Aniamate Physics:动画是否应与物理交互。Culling Type:什么时候不播放动画。始终播放动画 (Always Animate)始终播放动画。基于渲染器 (Based on Renderers)基于默认动画姿势剔除。基于片段边界 (Based on Clip Bounds)基于片段边界(在导入过程中计算)剔除,如果片段边界超出视图,则不会播放动画。基于用户边界 (Based on User Bounds)基于用户定义的边界剔除,如果用户定义边界超出视图,则不会播放动画。

Animator组件

新的动画系统Macanim(具体文档参考这里)提供了一个Animator组件用于控制角色动画,这两个组件不能同时使用。

Animator组件也对应了几个属性:

Controller:Animator Controller资源;

Avator:骨骼模型

(注:何为Avatar?因为骨骼结构的类似性,使得把动画从一个类人骨架映射到另外一个类人骨架成为可能,也使得重定向和反向动力学成为可能。极少例外地,类人模型可以被认为是有相同的结构,有清晰的身体,头,四肢。Mecanim系统很好地利用这个主意来简化搭骨架和控制动画。创建动画的一个基本步骤是设置一个unity3d可理解的简化后的类人骨骼到骨架中实际骨骼的映射;在Mecanim的术语中,这个映射称为Avatar)

Apply Root Motion: 是否使用RootMotion,如果我们勾选了的话,当播放动画时是通过动画运动的幅度来改变角色的Transform的,如果我们不勾选,我们就可以用脚本设定此角色的Tranform。

下面两个选项和Animation组件基本一致。

Animator Controller

Animator控制器,用来设置角色上的行为。这些包括状态机、融合树和通过脚本控制的事件。Unity为Animator controller的编辑提供了一个可视化的窗口,打开一个Animator controller,里面就像这样:

通过在里面添加各种状态和变量,可以让角色在各个状态中自由变换,而且,controller资源是可以复用的。假如有两个模型的Avatar完全一样,那么controller就可以直接套用。

状态机之中的状态不仅可以是单个剪辑,也可以是一个混合树。构建和编辑复杂的状态机和混合树,以便完全控制的角色如何运动。Unity编辑器提供强大的工具,用于分割、创建循环和从导入的动画文件中提取轨迹。然后可以把这些动画短片用作一个多层混合树的叶子,或者作为分层状态机中的一种状态。混合树让您只使用几个动画剪辑就能创建各种各样的运动。在混合树编辑器中,您可以定义混合参数并在3D视图中预览混合动画。混合树和动画剪辑一样,可以用作分层状态机中的状态。

导入CS模型到Unity3D

CS应该是我们这代人第一个接触的FPS游戏了,虽然是年以前的产物,但是即使拿到现在来看,品质也是世界级的。

下面就介绍下如何把CS1.6中的模型提取到Unity3d中。

相关软件:

Unity3D 4.2

MilkShape 3D 1.8.4 - 分解MDL模型

smd importer_v1.0 - 导入smd模型进3dsmax

3dsmax - 编辑模型,导出fbx格式的模型

Jed's Half-Life Model Viewer - 查看游戏模型

1.分解模型

首先你得有CS1.6.

安装好Jed's Half-Life Model Viewer ,可以到对应的模型路径中加载游戏模型。

相关的路径如下:

Unity3D游戏开发从零单排(五) - 导入CS模型到Unity3D(Unity3D游戏开发引擎)

统一路径 cstrikemodelsplayer匪1 terrorterror.mdl匪2 leetleet.mdl匪3 arcticarctic.mdl匪4 guerillaguerilla.mdl警1 urbanurban.mdl警2 gsg9gsg9.mdl警3 sassas.mdl警4 gigngign.mdlVIP vipvip.mdl

更详细的路径介绍参考这里。

接下来就要将MDL模型分解为SMD模型,用到的工具是MilkShape。

(注:MDL模型和SMD模型

MDL文件并不是单纯的模型文件,他是一个文件包,里面包含模型,贴图,所有动作,以及脚本。CS中的mdl模型由控制文件(扩展名为QC) 和数据文件(扩展名为SMD)再加上贴图(只能是Windows格式的色BMP位图,而且它的长宽都必须是八的倍数。)编译而成。其中QC文件保存了模型的附件、接触点和子模型等数据,并指定编译时要读取的SMD文件。Smd有两种,一是记录模型的信息,包括模型、骨骼、hitbox、皮肤贴图。另一种是动作镜头,记录每一帧骨骼的位置,形成动画。)

打开MilkShape,Tools -> Half-Life -> Decompile Normal HL MDL file -> 选取需要解压的mdl文件。片刻,解好了,是qc,bmp,和一大堆smd文件,我们需要用的是smd。

2.导入smd到3dsmax

首先将插件装好,将解压后得到的文件SMDImporterx.dli放到 X:Program FilesAutodesk3ds Max plugins 中,X是你安装软件的盘符。

打开3dsmax.文件->导入,选择SMD,定位到GSG9.smd,加载。

加载进来的模型没有贴图,所以要手动赋一下材质。编辑材质->漫反射 -> 位图,选择分解出来的bmp纹理,加载。

将材质球赋上去,打开纹理开关,模型就正常显示了。

导出动画

导入run.smd,可以拖动滑块开一下跑的动画(发现是反向的 - -).

文件->导出FBX,注意勾选Animation和Embed Media.,确定。

加载FBX模型进Unity3D

打开Unity3D,创建一个新项目,将刚才导出的fbx模型拖到assets中。在Inspector中点Rig,Animation Type选Humanoid,其他的默认,Apply.

接下来创建一个Animation Controller,Create -> Animation Controller,将fbx自带的run动画拖拽进Controller中。

黄色表示是默认的动画。

接下来就可以把模型拖入到场景中了,Animation controller拖拽到Animator组件对应的位置。

循环动画的话,在模型的Animation选项卡中勾选Loop Pose.

接下来及可以用脚本来控制人物的跑动了 ^^.

参考

解决Unity3d 4.3 动画系统带来的烦恼 - -

疯狂冰淇淋(CrazyCream)游戏源码完整版 疯狂冰淇淋(CrazyCream)游戏源码完整版,该游戏目前已经上线了一些IOS应用市场了,而且该游戏也已经有安卓版本了,游戏的源码比较源码完整的,功能

android猜猜红桃A游戏源码 一个简单的猜扑克游戏,很适合初学者,点击TextView扑克由反面变为正面,未点击的TextView有透明效果,点击再玩一次按钮,运行洗牌程序undefinedignore_js_

激情台球游戏源码 android游戏开发实例————桌面类游戏——《激情台球》还有地图编辑源码和ppt此系列游戏代码皆为android游戏开发教程一书,仅为开发教学演示,非上

标签: Unity3D游戏开发引擎

本文链接地址:https://www.jiuchutong.com/biancheng/371236.html 转载请保留说明!

上一篇:一款类似塔防类的保卫羊村游戏android源码(塔防类的网游)

下一篇:疯狂冰淇淋(CrazyCream)游戏源码完整版(疯狂冰淇淋罗德)

  • 年检更换需要什么材料
  • 积分换物品是真的吗
  • 分公司可以成为单位犯罪的主体吗
  • 个体工商户在哪注销营业执照
  • 社保代理公司的合作协议
  • 小规模纳税人收入账务处理
  • 幼儿园收取生活费通知
  • 业务招待费扣除限额计算基数
  • 工会专户收到职工福利经费会计处理怎么做?
  • 国有控股企业股权转让
  • 暂估出库是什么意思
  • 字节跳动属于什么类型的企业
  • 个人借款无法收回确认坏账账务处理
  • 美金公户打入个人账户
  • 补交注册资本的法律规定
  • 发票不一致是什么原因
  • 股东划入资产会计处理
  • 教学用品采购
  • 工资不在本单位拿取的能加入会员吗
  • 如何填制记账凭证总结
  • 所得税补缴自查需要缴纳什么
  • 固定资产一次性扣除账务处理
  • 没有单据怎么核算成本?
  • 职工赔偿金的账务处理
  • 期末留抵税额可以冲减欠税吗
  • win10专业版激活密钥永久2023
  • 找发票抵工资
  • 试生产时间规定
  • 简易计税分包抵减
  • 外贸出口退税企业差旅费可以抵扣吗
  • wordpress 常用函数
  • 税前可扣除的税费
  • 企业受赠业务的法律规定
  • 转让股权后公司资产
  • 预收账款增值税纳税义务
  • vue3与vue2的区别
  • PHP面向对象程序设计
  • 到2023年
  • 网络安全文章1000字
  • 软件行业的最后阶段是
  • 残疾人就业保障金计入什么科目
  • 办理车辆购置税流程
  • 合作卖东西怎么分成
  • 快速显示隐藏单元格
  • access使用查询设计视图计算并显示平均成绩
  • 弥补以前年度亏损怎么算
  • 销售价格含税的会计分录
  • 结转应交税金的分录
  • 工程施工二级设哪些明细
  • mysql查询性能分析
  • 存货抵债如何做分录
  • 固定资产一次性扣除后第二年账务处理
  • 成本发票未到怎么入账
  • 确认收入时,也必须确认资产或债务
  • 同时知识产权专利,其做账是?
  • 年度所得税汇算清缴报告在哪打印
  • 退回的包装物怎么做账
  • 专票网上抵扣流程
  • 会计里面权益是什么
  • 账户记录试算不平衡说明记账肯定有差错对吗
  • 远程桌面连接没反应
  • linux增加命令
  • win10预览设置
  • linux系统中怎么全选
  • win7 64位系统RAR压缩文件损坏该怎么修复
  • win10增加右键菜单
  • windows8的ie浏览器在哪
  • mac如何中文输入法
  • 禅道界面
  • win8.1拨号上网
  • 快速批量取关
  • dmg是啥文件
  • 使用nodejs中httpProxy代理时候出现404异常的解决方法
  • Git 创建分支提交远程分支详解
  • unity技术分享
  • js 小数取整的函数怎么写
  • js匿名函数和箭头函数
  • 企业吸收合并都包括什么
  • 辽宁地方税务局网上申报
  • 核定征收,新企业怎么填
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设