unity模型动画资源相关
来源:互联网 发布:怎样删除kingroot软件 编辑:程序博客网 时间:2024/06/09 14:02
最近在做一个unity的项目,记录一些心得。
在导入资源时,可以通过继承AssetPostprocessor来实现批处理,比如统一修改Scale Factor,Animation Type。 这时你会发现你在批处理修改过的属性无法改其它的了,那是因为你一修改属性,unity又自动调用一次AssetPostprocessor,又把属性修改回来了。
一般在打包模型动画资源时,都是通过创建prefab来生成assetbundle,这时候只是在prefab保存好设置的一切就可以了。可是当你不想手动创建prefab去保存的时候,你会发现这时就需要模型跟动画自己去关联了,结果就是你通过一个fbx创建了一个GameObject,Animations里面已经自动添加了所有动画,而你对模型.fbx右键选择Select Dependencies,会发现已经跟动画关联上了。这时BuildAssetBunlde只要选择CollectDependencies就可以把模型跟动画打包在一起了。要达到这效果,只需要fbx都是Legacy,并且先导入模型后再导入动画,动画会自动根据命名去匹配模型。(如果不行,可以先删除原文件夹再导入,因为可能文件夹已经保存meta了)
class FBXPostprocessor : AssetPostprocessor{ void OnPreprocessModel() { ModelImporter mi = (ModelImporter)assetImporter; mi.globalScale = 1; mi.animationCompression = ModelImporterAnimationCompression.Off; mi.animationType = ModelImporterAnimationType.Legacy; mi.importMaterials = false; } void OnPostprocessModel(GameObject go) { if (assetPath.Contains("@")) { foreach (SkinnedMeshRenderer smr in go.GetComponentsInChildren<SkinnedMeshRenderer>()) { Object.DestroyImmediate(smr.sharedMesh, true); Object.DestroyImmediate(smr.gameObject); } // Remove the bones. foreach (Transform o in go.transform) { if (o.parent.gameObject != go) Object.DestroyImmediate(o); } } }}
0 0
- unity模型动画资源相关
- 【Unity资源】(模型/人形)
- 【Unity资源】(模型/交通工具)
- 【Unity资源】(模型/道具)
- [cnblogs镜像]Unity 动画资源与模型资源的区别
- unity资源相关网站
- unity导入模型相关
- Unity 动画模型Mecanim应用
- Unity 修改FBX模型动画
- Unity模型资源使用流程
- Unity 资源加载释放相关
- cocos2d 骨骼动画相关资源
- 【Unity】骨骼动画如何优化资源
- unity模型动画无法进行模式设置
- Unity 相关经典博客资源总结
- Unity 相关经典博客资源总结
- Unity 相关经典博客资源总结
- Unity优化相关总结(资源)
- java各种配置
- Model-View-Controller(mvc)
- Cocos2d-x物理引擎世界的使用
- 项目中用到的一些第三方库
- css字体中 中文字体的英文表示法
- unity模型动画资源相关
- POJ-2976-Dropping tests
- 只能用GUEST用户访问共享的解决办法
- [转]Android系统中查看某个应用当前流量的方法
- Json的传递与解析
- Linux时间子系统之六:高精度定时器(HRTIMER)的原理和实现
- web项目分离记录
- iOS中的闭包
- oracle:表、列、约束等操作,table,constraint,column