微软MR开发技术笔记之3D APP Launchers UWP 3D图标制作

这个笔记是2017年11、12月份我跟着Lei哥一起应邀到上海参与微软的MR混合现实UWP应用开发培训,所进行的一些技术探究。

当时总共整理记录了几篇技术总结,不经意间看到,想分享出来。心想当时也浪费了不少时间研究,技术也总是往前发展的,可能当时用的技术手段已经过时了,但还是希望能对有缘的开发者提供一些帮助。

一、gltf 以及glb格式的文件如果按官方推荐,使用Blender软件安装gltf插件,导出的gltf以及glb文件不带贴图。

二、研究官方提供的GLTF文件发现是用Unity导出的,因此后面采取用官方提供的UnityGLTF插件,实现Gltf文件的转换。将模型文件用UnityGLTF工具导出Gltf文件

插件链接: 

https://github.com/KhronosGroup/UnityGLTF

Unity GLTF工具使用步骤:

步骤1:Unity中新建GLTF工程后,导入自己制作的FBX或者其它格式的模型文件,以及模型使用到的相关贴图文件。

步骤2:经测试,3D launchers 实现PBR材质(带凹凸,高光等)效果,目前需使用特定的PBR材质。

上面红框标明的Shader可以正常导出所有PBR的贴图,下面的Pbr Shader在导出Gltf格式后则缺少BaceColor贴图,因此推荐使用 PbrMetallicRoughness 材质,在Unity中调整好3D Launcher模型材质效果。

步骤3:在Unity菜单中选择模型,选择路径,导出GLTF文件。

三、使用 makeglb 工具将Gltf格式文件转换成Glb文件。

工具链接:https://github.com/sbtron/makeglb  

工具使用方法:使用Chrome浏览器打开Index,把所有的Gltf文件相关联的文件(包括Gltf、贴图,以及bin文件)拖放到显示的框内,即可自动下载3D Launcher使用到的Glb文件

经测试微软提供的 WindowsMRAssetConverter 

链接:https://github.com/Microsoft/glTF-Toolkit/releases 

工 具不用也是可以的,如果使用他转换,GLB文件反而体积变大了。但是模型带LOD细节级别则必须要使用 WindowsMRAssetConverter 转换工具。

四、将Glb文件复制到UWP项目的资源文件夹下面,并将其内容改为True。

动画的添加

技术参考链接:

https://docs.microsoft.com/zh-cn/windows/mixed-reality/creating-3d-models-for-use-in-the-windows-mixed-reality-home#animation-guidelines

3D launcher动画添加步骤:

1、从3D软件中制作好模型,指定好相关的材质与贴图,如果模型需要凹凸、反射、高光等效果,需要按照PBR材质的制作流程(PBR流程贴图最终输出为Albedo,Normal,Metalness,Roughness(以金属度,粗糙度流程为例))。导出带动画的FBX文件。

2、https://github.com/KhronosGroup/glTF#editors-and-modeling-tools 从此链接下载FBX转换GLTF文件工具-FBX2glTF-windows-x64.exe

用命令符把FBX文件转换成为GLTF格式的文件。

3、在电脑上下载安装Visual Studio Code,glTF Tools for Visual Studio Code ,VS Code很方便打开和编辑预览GLTF文件,并且可以导出GLB格式的文件。

4、将FBX转换好的GLTF文件用VS Code打开,在最末尾加上:图示的这一段语句。将动画触发器添加到GLTF模型JSON中。

5、保存文件,在VS Code编辑器标题栏右键选择导出GBL文件。

6、把GBL文件复制到UWP项目的资源文件夹下面,并生成操作为内容。

7、配置3Dlaundher 的指定路径。

8、在混合现实门户中选择生成的UWP应用,创建3DLauncher。用户接近3Dlauncher,触发动画。

重点注意:

经测试,目前带动画模型超过32个网格数量时,混合现实门户识别不出来,显示无法放置。如果超过32个网格数量的模型需要优化模型。

不支持透明贴图

动画持续时间:不超过20分钟

变形动画顶点:不超过8192

动画帧数:不超过36,000

支持多个动画导出及使用,

使用Maya2glTF插件:https://github.com/WonderMediaProductions/Maya2glTF

文中的一些技术笔记、工具、链接可能已经过时失效,我暂时也没有精力验证和更新,也不知是否有必要?所以还请谅解。

至此本文完!

为您推荐

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注