为Meta Spark准备3D模型

有许多工具可以帮助你为 Meta Spark Studio 创建 3D 对象,包括 Cinema4D、Blender 和 3ds Max。你还可以使用 Meta Spark Toolkit 优化 Blender 对象。

在本指南中,我们将介绍正确的设置,以便你可以成功地为 Meta Spark Studio 准备对象,并确保它们在你的体验中更有效地工作。

NSDT工具推荐: Three.js AI纹理开发包 - YOLO合成数据生成器 - GLTF/GLB在线编辑 - 3D模型格式在线转换 - 可编程3D场景编辑器 - REVIT导出3D模型插件 - 3D模型语义搜索引擎 - AI模型在线查看 - Three.js虚拟轴心开发包 - 3D模型在线减面 - STL模型在线切割 - 3D道路快速建模 

1、缩放和定位

以下是在缩放和定位对象以进行导出时需要牢记的要求列表。导入后,你还可以启用 Meta Spark Studio 真实世界比例设置。

  • 以米为单位导出你的模型。Meta Spark Studio 假设模型以米为单位上传。
  • 使用内置的 3D 测量工具检查对象的尺寸,并根据需要放大和缩小对象以匹配对象的真实尺寸或所需尺寸。
  • 保持所有 3D 对象不小于 1 厘米且不大于 5 米。用户可能无法与超出这些尺寸的对象进行交互。
  • 将对象的原点设置为其几何体的中心。
  • 正确定位和缩放对象后,不要忘记将对象的新变换值设置为默认值。在导出对象之前执行此操作。

左侧的图像是导入的鸟类对象,但比例不正确。右侧的图像显示了一只正确缩放的鸟。

Meta Spark 界面中错误和正确缩放的鸟

2、网格

3D 对象网格中的三角形数量或“三角形数量”会影响性能。最好将三角形数量保持在尽可能低的水平。每个对象的最大三角形数量应低于 50,000。将效果中所有对象的总三角形数量保持在 150,000 以下。

以下是减少三角形数量的一些技巧:

  • 如果不需要可见,请从网格中删除任何内部几何图形:如果你的对象是戴帽子的角色,请删除隐藏在视图之外的头部部分。
  • 修复几何图形:尝试删除松散的几何图形、三角形和顶点,制作平面,删除重叠的面并合并重叠的顶点。这将减少三角形数量和产生伪影(意外像素化和其他图形效果)的可能性,尤其是在使用 3D 扫描时。如果你在 Blender 中工作,Meta Spark Toolkit 将为你清理网格。
  • 将网格中高度详细的部分转换为纹理:如果你正在制作花冠并且花朵不会聚焦,请将它们映射到低多边形凹盘上,而不是导入带有每个花瓣和所有柱头的整个 3D 花朵。你可以在不需要太多细节的选定区域中设置较低的网格密度。

在下图的右侧,可以删除构成短裤下方角色臀部和腿部的几何图形,因为用户看不到它们。

2 个 3D 模型,其中短裤下方的几何图形在右侧模型中突出显示

你还可以通过以下方式优化网格:

  • 尽可能将网格合并在一起。这将减少效果中的对象数量,并通常提高性能。
  • 将多边形保持在三角形和四边形中以避免伪影。

3、UV 贴图

UV 贴图是 3D 对象表面的 2D 表示。要获得最佳纹理效果,UV 贴图过程必须成功。要优化该过程:

  • 手动生成 UV 贴图,而不是自动生成。
  • 将 UV 外壳保持在最低限度,不要重叠,否则会出现伪影。
  • 在外壳之间留出填充。例如,1K 纹理的外壳之间应有 8 像素的填充。
  • 仅对 3D 对象使用一个 UV 贴图。

左侧的图像显示了具有重叠 UV 的 UV 贴图。右侧图像是组织良好的 UV 贴图。

两个 UV 贴图,具有重叠和不重叠的 UV

4、材质

创建材料时:

  • 优先考虑标准和平面着色器,而不是 PBR 着色器,以获得更高的性能。
  • 对于需要它的逼真 3D 模型,使用基于物理的材料 (PBR) 和环境纹理。
  • 尽可能少使用材料。
  • 尽可能合并材料以提高性能。
  • 使用着色器时,简单是最好的。加、乘、减函数比其他函数(pow、exp、log、cos、sin、tan)占用的资源更少。

5、纹理

GPU 内存是一种宝贵的资源,因此高效思考会让你的内容和其他内容的帧速率受益。要实现有趣而高效的纹理结果:

  • 在 sRGB 空间中使用纹理,最大分辨率为 1024 x 1024 像素,并且只使用你需要的大小。
  • 为了获得更好的性能,请以 2 的幂(64x64、128x128、256x256、512x512、1024x1024)制作纹理。
  • 对于简单对象,请尝试使用顶点颜色和平面着色以减少对纹理内存的依赖。你可以使用顶点颜色在 Spark 中为视觉交互性制作动画。
  • 尽可能利用纹理图集:将多个纹理组合成一个图像,以减少纹理和绘制调用的总数。更突出的英雄对象应该在你的图集中占用更多空间。
  • 可以更进一步,使用颜色通道打包来节省空间:将纹理信息编码到图像的各个颜色通道中,以便在逻辑中使用。专业提示:你可以通过这种方式使纹理单调,并动态更改其颜色或通过在顶部乘以颜色图来更改颜色。
  • 如果可能,请避免使用带有 alpha 通道的图像。这些图像比 RGB 图像消耗更多的 GPU 内存。你可以使用黑色背景和材质属性中的混合模式来实现类似的效果。
  • 如果使用 Adob​​e® Substance Painter® 纹理软件创建纹理,请使用 Meta Spark 模板使你的纹理兼容。
  • 对于具有重复图案的纹理,请导入较低分辨率的图像并使用 Meta Spark Studio 的视觉着色器和纹理平铺功能,而不是使用较大分辨率的图像。你还可以以独特的方式转换纹理以适当地重复使用它们。
  • 在将纹理带入 Spark 之前对其进行压缩,以更好地控制质量和灵活性。

在 AR 效果中很难实现具有逼真灯光的纹理,并且需要大量的处理能力。为减少对性能的影响:

  • 将照明直接烘焙到用于面部效果装饰的 3D 对象中,以暗示高光和阴影。
  • 将照明烘焙到静态(非移动)对象(如家具和配饰)中,以获得更逼真的效果
  • 使用柔和的灯光设置,不要使用强烈的高光或阴影。烘焙照明最适合光线、强度、颜色等在整个效果过程中不会发生变化的环境。
  • 将 MatCap(材质捕捉)反射环境纹理与平面着色器结合使用。
  • 不可以使用环境光将一个环境纹理用于所有 3D 对象,以便在场景中共享。

6、绑定和蒙皮

如果你正在构建动画 3D 对象,你将创建(装配)骨架并将网格附加(蒙皮)到骨架上,以控制对象移动时的变形方式。如果此过程未针对 Meta Spark 工作室进行优化,则动画的组件可能无法正常工作或性能不佳。

创建骨架时:

  • 虽然动画对象中可以使用的骨骼数量没有上限,但我们建议使用尽可能少的骨骼以减少对性能和大小的影响。少于 20 个是一个不错的开始。
  • 利用简单、直接动画的骨骼或“双骨架”装配导出到 Spark。Spark 无法理解约束和其他装配控件或高级设置。
  • 对骨骼使用一致的命名约定,并为每个单独的骨骼使用单独的名称。例如,左臂为 arm_L,右臂为 arm_R。
  • 使用 Z+ 向前和 Y+ 向上调整骨骼方向。
  • 在所有轴上将每个骨骼的比例设置为 1。
  • 以自然层次结构组织骨骼。Meta Spark Studio 将松散的骨骼视为空对象,不会将它们识别为变形器。

以下是两种可能的骨架层次结构。右侧图像是最佳实践示例。

组织良好和组织不良的骨架层次结构

不建议将下面的骨架层次结构用于动画 3D 骨架对象。

组织不良的骨架层次结构


蒙皮过程的一些一般准则包括:

  • 将装备绑定到网格时,将每个顶点的影响数限制为四个。这是 Meta Spark Studio 出于性能原因支持的最大数量。如果您的对象不符合这些准则,则可能会在动画之前和动画期间产生伪影。
  • 确保骨骼处于预期位置以避免伪影。

左侧的图像是一只 3D 鸟,其骨架位置不正确。右侧图像显示了一个位置良好的骨架。

鸟模型上位置良好和位置不佳的骨架

7、动画

使用 Meta Spark Studio 中的程序动画可让你实时生成动画,同时保持项目大小较小。

在 Meta Spark Studio 之外向对象添加关键帧动画是创建更复杂和更详细的动作的不错选择,但它可能会增加文件大小。如果你需要使用关键帧动画:

  • 仅向标准属性(位置、比例和旋转)添加关键帧。
  • 不要向不需要动画的属性添加关键帧。例如,如果不需要,请不要向比例添加关键帧。
  • 请记住,自定义属性关键帧不会被导出。
  • 在你使用的 3D 软件中使用 24 fps(每秒帧数)的帧速率。

向 3D 对象添加复杂动画的另一种方法是创建动画剪辑并将其分配给 Meta Spark Studio 中的对象。你可以:

  • 使用 Autodesk® Maya® 中的 Game Exporter 插件等工具或 Blender 中的 NLA(非线性动画)操作来创建剪辑。
  • 在导入对象之前,你还应注意Meta Spark对文件格式和功能的要求和限制。

    原文链接:为Meta Spark准备3D模型 - BimAnt

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/58533.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

shodan7,shodan参数使用,常用端口,Google语法

参数使用 alert shodan alert -h(查看帮助文档 这个就是怎么去配置ip监控)我们能在web页面上面去做,而且更加方便,所以就不多讲了 info shodan info(查看你查询的扫描的一些次数每个账户都是每个月有限制次数的)domain shodan domain(查询域名信息…

MATLAB/Simulink学习|在Simulink中调用C语言-04使用C Function 实现PI运算(使用模块自定义代码-仿真自定义代码)

在上一篇博客中,介绍了如何使用C Function 实现PI运算,但是在模块内编辑C代码,而不能直接调用已经写好了的C代码。 在Simulink中使用C Function调用自定义代码有两种方法,本篇博客介绍其中一种方法。 添加头文件和源文件 在实际…

博图V19的DB块,批量导入组态王

最近在使用组态王做一个厂区的DCS项目,plc选用西门子1500系列。一共用了3个1500,5个io站点。整个项目下来,点位大约有5000多个。把这5000多个点位,一个一个导入到组态王,无疑是一个非常非常非常难受的工作,…

Kafka相关API开发

(一)引入依赖 用API直接去操作kafka(读写数据)在实际开发中用的并不多,学习它主要还是为了加深对Kafka功能的理解。kafka的读写操作,实际开发中,是通过各类更上层的组件去实现。而这些组件在读写kafka数据时,用的当然是kafka的jav…

linux离线安装Ollama并完成大模型配置(无网络)

这篇文章主要分享两方面内容: 1)在纯内网环境下如何部署ollama 2)在纯内网环境下如何配置大模型 话不多说直接开始。 ①离线部署ollama 一、通过浏览器访问ollama官方安装脚本,获取脚本内容。复制里面的内容。 在Linux中执行…

Centos安装配置Jenkins

下载安装 注意:推荐的LTS版本对部分插件不适配,直接用最新的版本,jenkins还需要用到git和maven,服务器上已经安装,可查看参考文档[1]、[2],本次不再演示 访问开始使用 Jenkins 下载jenkins 上传至服务器…

【java数据结构】二叉树

【java数据结构】二叉树 一、 认识二叉树1.1 二叉树的概念1.2 二叉树的特性:1.3 两种特殊的二叉树:1.4 二叉树的性质:1.5 二叉树的存储: 二、 实现二叉树2.1 二叉树节点的定义:2.2 二叉树的基本操作:获取树…

智源推出小时级超长视频理解大模型Video-XL

北京智源人工智能研究院联合上海交通大学、中国人民大学、北京大学和北京邮电大学等高校推出了一款名为Video-XL的超长视频理解大模型。这款模型是多模态大模型核心能力的重要展示,也是向通用人工智能(AGI)迈进的关键步骤。与现有多模态大模型…

《链表篇》---两两交换链表中的节点(中等)

题目传送门 1.定义一个虚拟节点链接链表 2.定义一个当前节点指向虚拟节点 3.在当前节点的下一个节点和下下一个节点都不为null的情况下。 定义 node1和node2。保存当前节点后面两个节点的地址。cur.next node2;node1.next node2.next;node2.next node1;cur node1; 4.返回re…

Oracle视频基础1.3.4练习

1.3.4 检查数据库实例启动情况,进程以及进程间通信 ps -ef | grep oracle ipcs启动数据库实例, 用缺省spfilewilson ls -l env | grep ORACLE sqlplus /nolog conn / as sysdba startup shutdown immediate exit clear新创建pfile和spfile指定pfile数…

图书管理系统汇报

【1A536】图书管理系统汇报 项目介绍1.用户登录注册功能1. 1用户角色管理2.图书管理功能2.1 添加图书2.2 编辑图书2.3 删除图书 3.图书搜索和筛选3.1 图书搜索3.2 图书筛选 4.图书借阅、图书归还4.1 图书借阅4.2 图书归还 5.用户信息管理5.1上传头像5.2修改头像5.3 修改密码 项…

JetCache启动循环依赖分析

问题呈现 项目性能优化,需要将本地内存(JVM内存)替换为本地Redis(同一个Pod中的Container),降低JVM内存和GC的压力,同时引入了JetCache简化和统一使用(对JetCache也做了扩展&#x…

使用二进制安装K8S 多master节点 高可用集群

目录 1.初始化 1.1 配置静态IP 1.2 配置主机名 1.3 配置hosts文件 1.4 配置主机之间无密码登录,每台机器都按照如下操作 1.5 关闭firewalld防火墙,在xianchaomaster1、xianchaomaster2、xianchaomaster3、xianchaonode1上操作: 1.…

vue的基本使用

简介 vue组件 三个部分组成&#xff1a;结构、样式、逻辑 文本插值 类似于java的spel表达式 属性绑定 綁定是单向绑定的&#xff0c;修改输入框无法改变原本的&#xff0c;只能读&#xff0c;不能写 <input :value"name" placeholder"Type your name"&g…

从APP小游戏到Web漏洞的发现

一、前因&#xff1a; 在对一次公司的一个麻将游戏APP进行渗透测试的时候发现&#xff0c;抓到HTTP请求的接口&#xff0c;但是反编译APK后发现没有在本身发现任何一个关于接口或者域名相关的关键字&#xff0c;对此感到了好奇。 于是直接解压后everything搜索了一下&#xff…

【有啥问啥】视频插帧算法技术原理详解

视频插帧算法技术原理详解 引言 视频插帧&#xff08;Video Interpolation&#xff09;技术&#xff0c;作为计算机视觉领域的一项重要应用&#xff0c;旨在通过算法手段在已有的视频帧之间插入额外的帧&#xff0c;从而提升视频的帧率&#xff0c;使其看起来更加流畅。这一技…

【温酒笔记】DMA

参考文档&#xff1a;野火STM32F103 网友资料整理 1. Direct Memory Access-直接内存访问 DMA控制器独立于内核 是一个单独的外设 DMA1有7个通道DMA2有5个通道DMA有四个等级&#xff0c;非常高&#xff0c;高&#xff0c;中&#xff0c;低四个优先级如果优先等级相同&#xf…

精选云手机平台推荐:五大知名云手机品牌汇总

云手机目前已经在很多行业开始应用&#xff0c;特别是对于需要多设备操作、稳定性能和账号安全保障的用户。下面就为大家推荐几款优质云手机平台&#xff0c;一起来看看各大品牌有什么优势。 1. Ogphone云手机 Ogphone云手机凭借强大的海外网络连接和群控性能受到各行业用户的欢…

C++设计模式结构型模式———适配器模式

文章目录 一、引言二、适配器模式三、类适配器四、总结 一、引言 适配器模式是一种结构型设计模式&#xff0c;它在日常生活中有着广泛的应用&#xff0c;比如各种转换接头和电源适配器&#xff0c;它们的主要作用是解决接口不兼容的问题。就像使用电源适配器将220V的市电转换…

生产车间怎么管?设备、生产、物料管理方法更好

我们都知道&#xff0c;面对竞争激烈的大环境&#xff0c;生产车间对于企业的重要性不言而喻&#xff0c;它是企业发展的关键所在。 生产车间管理是一项复杂且系统性很强的工作&#xff0c;涉及多个重要方面。其中&#xff0c;人员管理是核心之一&#xff0c;员工作为生产活动…