位置: 编程技术 - 正文

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)游戏源码完整版(疯狂冰淇淋罗德)

  • 清理化粪池交什么印花税
  • 财务软件怎么看利润
  • 企业收到的捐赠应计入
  • 暂存款属于什么费用
  • 我国现行资源税的课税范围不包括
  • 公户转到老板私人账户
  • 计提结转本月城建税怎么做账?
  • 补缴去年地税社保的会计分录怎么写?
  • 粮食仓储设施设备管理
  • 汇算清缴是啥
  • 定期定额户开具增值税专用发票如何申报
  • 期间费用包括哪些?
  • 其他应付款可以用其他应收款代替吗
  • 购买的装修样品怎么入账
  • 买二手车转让费一般要多少钱
  • 应付账款借方余额怎么平账
  • 广告费超标今年怎么处理
  • 苹果mac怎么复制文件到u盘 免费软件
  • win10 0×0000007b怎么解决
  • linux虚拟机怎么输入中文
  • 路由器管家怎么登录
  • mac苹果系统怎么用
  • 水利建设基金是税还是费
  • 证券公司佣金是买卖都要收吗
  • 办理营业执照费用和流程
  • 应付票据的核算方法有哪些
  • mscorsvw.exe是什么进程
  • 增值税发票没认证 可以重新开吗
  • 建筑工程房屋租赁费属于什么费用
  • 前端部署发布项目有哪些
  • json_server
  • 想学web前端
  • 正则动量
  • 10万以下销售额怎么算
  • 小规模纳税人利润超过300万
  • Python怎么转化为中文
  • php怎么修改当前用户的密码
  • phpcms插件
  • 哪些无票费用能够抵扣所得税
  • 特惠贷利息怎么算
  • 零税率与免税有关系吗
  • 长期应付款项目,根据专项应付款和长期应付款
  • 商业印花税的计算公式
  • 预缴企业所得税计算公式
  • 员工购买口罩会计科目
  • 养老保险如何记算
  • 如何调整利润分录
  • 预存返现活动规则
  • 利息支出可以抵扣进项吗
  • 个体户需要报税吗?需要报哪些税?
  • 企业内在
  • sql必会知识
  • mysql查看查询耗时
  • ubuntu for windows
  • centos占用内存高
  • fedora打不开
  • win7双系统怎么设置开机选择系统
  • win10快速启动怎么进入bios
  • windowxp操作系统
  • centos中如何安装软件
  • win10联想笔记本还原系统
  • SonicStageMonitoring.exe是什么进程 有什么作用
  • win个性化设置没反应
  • win10wifi打开后自动关闭
  • linux 如何
  • psrameters
  • jqueryui
  • [android] intent实例
  • oracle安装使用
  • 如何进行arp病毒防范
  • javascript的promise
  • shell忽略大小写
  • u3d transform
  • python中os模块有什么作用
  • 广东省电子税务局app下载手机版
  • 政府补贴 收入
  • 国家税务局总局河南官网
  • 房屋出租到哪里挂出去
  • 自然人电子税务局
  • 重庆税务电子发票登录
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设