GitHub – iimachines/Maya2glTF:Maya 到 glTF 2.0 导出器
| Name | ||
|---|---|---|
|
4e72874 · last year
|
||
|
|
7 years ago
|
|
|
|
7 years ago
|
|
|
|
5 years ago
|
|
|
|
5 years ago
|
|
|
|
last year
|
|
|
|
6 years ago
|
|
|
|
3 years ago
|
|
|
|
6 years ago
|
|
|
|
4 years ago
|
|
|
|
6 years ago
|
|
|
|
7 years ago
|
|
|
|
5 years ago
|
|
|
|
3 years ago
|
|
|
|
4 years ago
|
|
|
|
last year
|
|
|
|
7 years ago
|
|
|
|
3 years ago
|
|
|
|
7 years ago
|
|
|
|
5 years ago
|
|
|
|
5 years ago
|
|
|
|
4 years ago
|
|
|
|
last year
|
|
|
|
last year
|
|
存储库文件导航
如果您认为这个插件足够好,可以请求 Github 赞助,请在此处说明
- Windows 版本 1.5.0 发布!
-
支持 Maya 2017-2020、Windows 10 x64、macOS High Sierra+ 和 Linux
-
视窗 10 x64
- 安装 Microsoft Visual C++ 再发行组件。
- 在许多系统上,这已经安装了,因此您可能希望跳过此步骤。
- 下载所需的版本
- 将下载的文件解压到任何位置(例如您的桌面)
zip - 打开创建的文件夹
maya2glTF - 双击批处理文件
deploy- 这会将插件和脚本复制到您的文件夹
Documents
- 这会将插件和脚本复制到您的文件夹
- 重新启动 Maya
- 安装 Microsoft Visual C++ 再发行组件。
-
macOS High Sierra 和 Linux
- 当前必须从源代码构建,见下文
- 加载场景
- 在 Maya 脚本窗口中,键入以启动 UI。
maya2glTF_UI- 您可能想要选择脚本文本并使用鼠标中键将其拖动到架子上,或者更好的是,创建一个架子……
maya2glTF_UICustomglTF
- 您可能想要选择脚本文本并使用鼠标中键将其拖动到架子上,或者更好的是,创建一个架子……
- 选择要导出的网格体和摄像机
- 或点按按钮
select all polygon meshes
- 或点按按钮
- 使用下拉框选择所需的动画剪辑源
- 还支持 TRAX 动画剪辑。
- 仅导出第一个轨道上启用的剪辑。
- 如果您有多个字符,请选择所需的字符。
- 还支持 TRAX 动画剪辑。
- 点击按钮。
export selected meshes- 目前,当您更改或加载场景时,用户界面不会自动更新;只需重新运行
maya2glTF_UI脚本或点击刷新用户界面按钮即可。
- 目前,当您更改或加载场景时,用户界面不会自动更新;只需重新运行
- 祝你好运!;-)
- 如果这对您不起作用,请告诉我
- 理想情况下,提供作系统、Maya 和插件版本以及测试场景。
- 如果它确实有效,请在 GitHUB 上给 maya2glTF 一个⭐,并传播这个消息 😎
- 我假设您已经使用过 Substance Painter 之类的东西来创建 glTF-PBR 纹理
- 确保您已选择 OpenGL 进行渲染,尚不支持 DirectX

- 选择要着色的多边形
- 单击按钮
assign PBR shader to selection - 第一次,您需要在以下位置选择我们的 PBR OpenGL 着色器:
Documentsmayamaya2glTFPBRshadersglTF_PBR.ogsfx
- 接下来,一次性选择要应用的所有 PBR 纹理:
- 例如,对于损坏的头盔模型,多选以下纹理:
Default_normal.jpgDefault_albedo.jpgDefault_AO.jpgDefault_emissive.jpgDefault_metalRoughness.jpg
- 例如,对于损坏的头盔模型,多选以下纹理:
- 现在,PBR 着色器和所有纹理都应应用于您的选择
- 默认情况下,我们使用以下文件名中的关键字约定来检测纹理类型:
basecolor或 => 基色纹理albedometal或 => 金属纹理_ormrough或 => 粗糙度纹理_ormoccl或 或 => 遮挡纹理_orm_aonormal=>切线空间法线纹理- 如果您的模型来自 Blender,请参阅 MikkTSpace 信息的标志
-mts
- 如果您的模型来自 Blender,请参阅 MikkTSpace 信息的标志
emissive=> 自发光纹理diffuse_env=> 基于图像的照明 (IBL) 预滤波漫反射环境图 (PMREM)specular_env=> 基于图像的闪电 (IBL) 预过滤镜面环境图 (PMREM)brdf=> 双向反射率分布函数查找表纹理- 您可以自定义这些约定,请参阅
maya2glTF_assignPbrShader.mel
- 所有纹理都是可选的
- 如果需要,将技术设置为透明
- 有关更多信息,请参阅 glTF PBR 页面页面。
- 导出时,金属纹理和粗糙度纹理始终合并为单个纹理。
- 如果您提供JPEG,我们将使用Maya的JPEG编码器来生成此纹理。但是,默认的 Maya JPEG 编码设置质量非常低。
- 以下 MEL 代码段设置 JPEG 编码器质量:
putenv "AW_JPEG_Q_FACTOR" "92"; - 以下 MEL 代码可实现最大可能的 JPEG 质量:
putenv "AW_JPEG_Q_FACTOR" "100"; putenv "AW_JPEG_SUB_SAMPLING" "1x1,1x1,1x1";
- 以下 MEL 代码段设置 JPEG 编码器质量:
- 如果您提供JPEG,我们将使用Maya的JPEG编码器来生成此纹理。但是,默认的 Maya JPEG 编码设置质量非常低。
自 1992 年以来,在 IIM,我们专注于为网络、教育、活动和广播电视制作实时交互式 3D 动画。我们开发了自己的多机实时 3D 木偶表演软件,名为 AnimationNow,我们即将对其进行升级,以利用最新的渲染技术。
如果我们的生产流程出现问题,通常是导出复杂的绑定Maya角色。过去,我们向开源 OGRE 导出器捐赠和补丁,但现在我们想自己深入研究 Maya API,这样如果导出过程中出现问题,我们可以帮助我们的美术师。
glTF 2.0 似乎包含我们需要的大部分功能,并且是可扩展的。恕我直言,glTF 必须成为动画 3D 内容的事实上的标准。在 IIM,我们计划将 glTF 用于我们所有的 3D 资产。
Maya 在内部使用数据流架构(称为依赖关系图)。这意味着高级用户可以以他们喜欢的任何方式连接图中的依赖节点。不幸的是,这种令人敬畏的灵活性也使得开发一个始终有效的导出器变得异常困难;
_ -outputFolder (-of) STRING_(必填)* * 输出文件夹
-
-scaleFactor (-sf) FLOAT(可选)- 要应用于顶点的比例因子
-
-copyright (-cpr) STRING(可选)- 将版权文本嵌入 GLTF 文件
-
-selectedNodesOnly (-sno)(可选)- 仅导出直接选择的节点
- 默认情况下,所选节点的所有后代也会导出
-
-sceneName (-sn) STRING(可选)- glTF 文件名的名称
- 默认值为 Maya 场景名称
-
-binary (-glb)(可选)- 导出单个资源文件
glb - 默认是包含缓冲区的 JSON 和二进制文件
glTFbin
- 导出单个资源文件
-
-niceBufferURIs (-nbu)(可选)- 如果仅生成一个文件,则从生成的文件中删除后缀。
0.bin - 不附加到缓冲区名称,仅使用场景名称。
/data
- 如果仅生成一个文件,则从生成的文件中删除后缀。
-
-hashBufferURIs (-hbu)(可选)- 为每个缓冲区计算一个 256 位哈希值,并将其用作缓冲区名称。
-
-externalTextures (-ext)(可选)- 不会在文件中嵌入纹理。
glb - 仅在导出
-glb
- 不会在文件中嵌入纹理。
-
-camera (-cam) STRING(可选,多个)- 导出按名称指定的相机。
-
-initialValuesTime (-ivt) TIME(可选)- 可以找到初始值/默认值的时间
- 默认情况下,使用帧 0
- 此帧应与皮肤绑定姿势匹配
- 所有节点和网格体都会从此时获得其默认变换和权重
-
-animationClipName (-acn) STRING(可选,多个)- 动画剪辑的名称
-
-animationClipStartTime (-ast) TIME(可选,多个)- 动画剪辑的开始时间
- 导出动画剪辑时需要
-
-animationClipEndTime (-aet) TIME(可选,多个)- 动画剪辑的结束时间
- 导出动画剪辑时需要
-
-animationClipFrameRate (-afr) FLOAT(可选,多个)- 动画剪辑的每秒帧数
- 导出动画剪辑时需要
- 您可以为每个剪辑传递此
-
-detectStepAnimations (-dsa) NUMBER(可选)- 传递以检测采样动画曲线中的“插值”。
-dsa 2STEP - 例如,在将 绑定到 时启用此选项,以防止插值。
shape.visiblitynode.scale.x, y z - 目前这是全有或全无,动画曲线尚未拆分为离散部分和连续部分
- 传递以检测采样动画曲线中的“插值”。
-
-meshPrimitiveAttributes (-mpa) STRING(可选)- 要导出的形状的属性,由垂直条分隔 |
- 默认情况下,导出所有属性,例如
-mpa POSITION|NORMAL|TANGENT|TEXCOORD|COLOR|JOINTS|WEIGHTS
-
-blendPrimitiveAttributes (-bpa) STRING(可选)- 要导出的混合形状的属性,由垂直条分隔 |
- 默认情况下,导出所有 GLTF 支持的属性,例如
-mpa POSITION|NORMAL|TANGENT
-
-force32bitIndices (-i32)(可选)- 强制将 32 位索引写入 GLTF 缓冲区
- 默认情况下,尽可能使用 16 位索引
-
-disableNameAssignment (-dnn)(可选)- 不要将 Maya 节点名称指定给 GLTF 节点
- 默认情况下,复制名称
-
-mikkelsenTangentSpace (-mts)(可选)- 使用“MikkTSpace”算法来计算切线,而不是来自 Maya 的切线
- 默认情况下,将导出 Maya 切线
- 如果你从Blender导入网格体而没有导入切线,并且你只是使用Maya来制作动画,你应该使用这个标志。
-
-mikkelsenTangentAngularThreshold (-mta)(可选)- 要传递给“MikkTSpace”算法的角度阈值
- 默认情况下,传递 180
- 一般来说,你不应该使用这个标志,它主要用于调试
- 要传递给“MikkTSpace”算法的角度阈值
-
-skipStandardMaterials (-ssm)(可选)- 不出口标准材料(兰伯、防风等),只出口GLTF PBR材料。
- 默认情况下,标准材质被转换
- 但现在只复制了颜色和透明度。
-
-excludeUnusedTexcoord (-eut)(可选)- 当网格图元没有纹理时排除纹理坐标?
- 默认情况下,纹理坐标始终导出
- 当网格图元没有纹理时排除纹理坐标?
-
-defaultMaterial (-dm)(可选)- 始终生成 glTF PBR 材质,即使 Maya 中没有将材质指定给网格体也是如此
- 默认情况下,不生成默认材质
-
-colorizeMaterials (-cm)(可选)- 为了进行调试,为每种材质生成不同的颜色的唯一 PBR 材质
- 默认情况下,不生成调试材质
-
-dumpMaya (-dmy) STRING(可选)- 将Maya对象的调试信息转储到给定的文件路径参数
- 使用该词打印到 Maya 输出窗口
CONSOLE- 警告:如果您有复杂的网格,这可能需要很长时间!
- 默认情况下,不打印任何内容
-
-dumpGLTF (-dgl) STRING(可选)- 将格式化版本的 glTF 资产文件转储到给定的文件路径参数
- 使用该词打印到 Maya 输出窗口
CONSOLE- 警告:如果您有复杂的网格,这可能需要很长时间!
- 默认情况下,不打印任何内容
-
-ignoreMeshDeformers (-imd) STRING(可选,多个)- 要忽略的混合形状或蒙皮簇变形器
- 默认情况下,不会忽略任何变形器
- 如果你有用于生成不同角色但不用于动画的变形器,请使用此选项
- 你还可以将自定义属性(简称)添加到变形器中以忽略它。
Maya2glTF_ignoredMGi- 有一个按钮,用于将此属性添加到选定的变形器
maya2glTF_UI
- 有一个按钮,用于将此属性添加到选定的变形器
-
-skipSkinClusters (-ssc)(可选)- 跳过所有蒙皮簇变形器,就像网格体未蒙皮一样
- 默认情况下,不会跳过任何皮肤簇
-
-skipBlendShapes (-sbs)(可选)- 跳过所有混合形状变形器,就像网格体未变形一样
- 默认情况下,不会跳过任何混合形状变形器
-
-redrawViewport (-rvp)(可选)- 导出动画时重新绘制视口。
- 默认情况下,视口不会刷新,因为这会减慢导出器的速度
我认为这个插件现在是生产质量的,但使用它的风险由您自行承担:)
-
支持 Maya 2017-2020(仅限 64 位)
- 不再支持 Maya 2016
-
Linux 支持尚未经过太多测试。
-
支持静态和动画、蒙皮和变形网格
- 目前所有动画都是每帧烘焙的,尚未完成压缩
-
支持多个动画剪辑(节点和关节变换、混合形状权重)
- 混合形状目标还不是稀疏的
-
导出 、 、 、 、 和属性
POSITIONNORMALCOLORNORMALTANGENTTEXCOORDJOINTSWEIGHTS -
支持导出为、单个或单个文件。
glTF + binglTFglb -
使用 COLLADA2GLTF 项目中 glTF 代码的修改分支
-
目前,Phong、Lambert 和 Blinn 着色器已转换为 PBR,但仅考虑颜色纹理和透明度(这主要用于使用现有模型进行测试)。
-
附带 GLSL 代码,带有从 Khronos PBR WebGL 官方代码移植而来的友好 UI。
- 看
maya2glTFmayarenderDatashadersglTF_PBR.ogsfx - 使用此硬件着色器
- 确保已加载GLSL着色器插件
- 在首选项/显示中使用 OpenGL/核心配置文件
- 您可以使用该脚本根据文件名模式一次分配多个纹理
maya2glTFmayascriptsassign_glTF_PBR_material_and_textures.mel
- 看
-
支持导出相机
-
还没有灯
- 对KHR_lights_punctual的支持将在某个时候添加,欢迎公关,请参阅问题
-
目前,仅为 Windows x64 提供开箱即用下载
- 如果你想尝试导出器,但你无法构建它,请给我一个标志
-
我假设你已经安装了一个 GIT 客户端
-
某些版本的 Maya 需要 Maya 开发工具包
- Maya 2018+ 似乎不需要
-
克隆此存储库
- 打开命令提示符(又名终端),然后运行
git clone https://github.com/iimachines/Maya2glTF.git --branch master
-
- 至少选择 C++ 桌面开发有效负载
- 在单个组件选项卡中,选择:
- Windows 8.1 SDK
- Windows 通用 CRT SDK
- 本文档是为 Visual Studio 2019 编写的,其他版本可能不起作用。
-
安装 Win64-x64 版本的 CMAKE
- 确保将 CMake 添加到系统路径
-
进入文件夹,然后运行
maya2glTFwindows_create_vs_project -D MAYA_VERSION=2020- 更改要定位的 Maya 版本中的 2020。
- 几秒钟后,应在文件夹中生成 Visual Studio 解决方案。
build
-
接下来构建插件本身
maya2glTF-
启动 Visual Studio 2019
-
打开解决方案
maya2glTFbuildmaya2glTF.sln -
选择所需的配置目标(例如
release) -
建
-
如果一切顺利,插件和所有脚本都将被复制到您的文件夹中
%userprofile%Documentsmaya
-
- 从应用商店安装 XCode
- 安装 CMake
- 打开终端窗口
- 看
FinderUtilitiesTerminal
- 看
- 克隆此存储库
- 例如
git clone https://github.com/iimachines/Maya2glTF.git ~/Documents/Maya2glTF
- 例如
- 进入克隆目录
- 例如
cd ~/Documents/Maya2glTF
- 例如
- 通过运行
./osx_create_project.sh 2020- 将 2020 替换为您目标的 Maya 版本
- 进入生成的文件夹,插件
buildmakemake
- 然后通过运行
make install
- 如果一切顺利,该插件应该可以使用了。
- TODO
-
启动Maya
-
加载场景
-
注意要从此项目加载场景,请先将 Maya 项目设置为
maya2glTFmaya -
要查看插件是否正确构建,最好使用此存储库中的场景,例如
maya2glTFmayascenesdamaged_helmet.ma
-
-
选择要导出的网格体和摄像机
- 默认情况下,所有后代也会导出,除非您添加 -selectedNodesOnly (sno) 标志。
-
运行以下 MEL 脚本
maya2glTF -outputFolder "<your output folder>"
2. 分享目的仅供大家学习和交流,请不要用于商业用途!
3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员!
8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载
声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性
GLB下载网 - GLB/GLTF模型与格式资源免费下载,支持在线浏览与转换 » Maya 到 glTF 2.0 导出器
常见问题FAQ
- 免费下载或者VIP会员专享资源能否直接商用?
- 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
- 提示下载要提取码
- 分享过期和重复下载怎么办
- 模型和平台不兼容怎么办


