由用户控制的数字3D头像唱歌跳舞
单击中央圆形“CLICK ME”按钮开始播放音乐.
头像将开始播放 10 随机运动.
• 您可以尝试使用数字键 1 至 10 您会发现它排列在键盘的左侧 (字母上方) 改变舞蹈动作.
• 随着 4 键盘中央箭头可以改变头像的位置.
• 随着 + 和 – 键位于键盘右侧的数字小键盘上, 您可以放大和缩小头像.
享受!
如何让你的 3D NFT 头像随着音乐跳舞?
你是不是一个无聊的猿? 也许你是一个密码朋克? 不? 也许多一点米比特 比精灵? 无论你对 NFT 化身的口味如何, 很明显,基于角色的艺术正在出现一个新世界. 其中一些化身已经是 3D 的,而另一些则需要更广泛社区的创造力才能为它们注入 3D 生命. 无论, 尽管, 由于 NFT,我们看到基于角色的艺术世界被推向极限.
今天, 我们将突破限制,向您展示如何让您的3D头像更加精彩, 更有趣, 和, 希望, 更多病毒式使用皮纳塔 作为这一切的支柱. 当今的数字体验需要多个媒体文件的组合. 一张图很好玩, 但将图像设置为音频是一种体验. 一段带有文字叠加的视频可以改变整个感觉. 3D 模型已经由许多不同的媒体文件组成. 网格, 纹理, 着色器, 和更多. 如果我们可以将动画和音频融入到一种统一的体验中会怎样??
让我们这样做!
入门
您无需了解如何编码即可跟随本教程进行操作 (#团队无代码). 但你需要一些东西才能让一切顺利进行.
- 下载搅拌机. 这是一个免费的, 开源桌面应用程序,可轻松处理 3D 文件和动画.
- 注册一个米萨莫 帐户. Mixamo 是一款 Adobe 产品,可让您装配 3D 模型并为其制作动画.
- 为自己获取 3D NFT 化身 (这可能很贵, 因此,如果您愿意,可以随意从 Mixamo 或 Sketchfab 或任何其他具有知识共享许可的市场获取角色模型). 我将使用 Sketchfab 中的资源.
- 注册一个皮纳塔帐户.
无论您最终如何获得 3D 资产, 您需要确定下一步应该做什么. 我们想在 Mixamo 中绑定模型, 但要做到这一点, 我们需要确保 3D 模型采用适当的文件格式.
为了本教程的目的, 我将使用 Sketchfab. 我一定会下载需要转换格式的模型,以便您可以按照该过程进行操作.
获取我们的模型
再次, 我将为此使用 Sketchfab, 但如果您已经有想要使用的模型,则可以跳过此部分. Sketchfab 有一个很好的搜索功能, 并且有大量模型可以在知识共享许可下下载 (只是一定要注明原艺术家).
这是我在搜索中使用的链接. 您可以根据需要更改此搜索参数. 最好的模型是 T 姿势格式的模型, 但任何人形且四肢脱离身体的模型 (意思是不依附于其他物体并且不, 说, 在他们的口袋里) 应该管用.
我发现了一个机器人 我喜欢,虽然不是 T 姿势, 我喜欢它的样子, 所以我将用它作为我的例子.
由于 Mixamo 需要 obj 和 fbx 文件, 我将确保以不期望的格式下载此模型,以便我们可以在 Blender 中完成转换过程. 模型上有下载链接. 我只需点击该按钮即可. 当然, 如果您想绕过转换步骤,只需获取 fbx 或 obj 格式并跳至 Mixamo 部分.
然后, 在弹出的模态中, 我将下载 glTF 格式.
这将以 zip 文件的形式下载到我的计算机上. 我现在需要做的就是解压缩并打开 Blender.
在 Blender 中转换文件
当您第一次打开 Blender 时, 将为您创建一个示例场景. 我们要删除该场景中集合下的项目. 您可以全部选择, 右键点击, 然后选择删除层次结构.
那些示例项目消失了, 我们现在可以导入我们的模型. 单击文件菜单, 然后选择导入. 由于我下载的是glTF格式, 这就是我要在这里导入的内容.
随着模型的导入, 我们可以尝试一下相机变焦, 浆纱, 和照明. 你不必这样做, 但我想确保模型看起来不错. 所以, 我缩小了, 我选择了新的照明. 这就是我现在看到的:
这看起来准备导出! 我们将以 obj 格式导出模型,与导入模型的方式非常相似. 在文件菜单中, 单击导出. 选择波前 (这是 obj 文件类型):
确保将其保存在您可以轻松找到的地方,因为我们将在一秒钟内将这个人带入 Mixamo. 导出完成后, 你实际上会得到两个文件: 一个 obj 文件和一个 mtl 文件. mtl文件是让我们的模型看起来好看的素材. 确保材料添加到 Mixamo, 我们需要选择两个文件并压缩它们.
Mixamo 中的动画
我们已经制作了 3D 模型, 使用 Blender 将其转换为我们可以在 Mixamo 中使用的文件, 现在是时候添加一些动画了.
如果您还没有这样做, 注册一个帐户米萨莫在这里. 注册后, 你应该看到这样的屏幕:
您可能会或可能不会在预览中显示模型. 无论哪种方式, 我们要更换它. 您所需要做的就是单击“上传角色”按钮.
在打开的模式中, 您将能够从计算机中选择一个文件. 我们将在这里找到我们创建的组合 obj 模型和 mtl 文件的 zip 文件. 您需要等待上传完成和处理完成.
完成后, 是时候预览你的模型然后对其进行装配了. 绑定只是向模型添加可用于动画目的的关节的过程. Mixamo 有一个简单的索具系统. 您可以按照指定的方式将点拖到模型上. 如果您的模特没有摆出 T 字姿势, 那么它可能不对称. 如果是这样的话, 取消选中底部的使用对称复选框.
当这个过程完成时, 您将看到带有基本动画的模型预览. 这应该证明在您单击“下一步”之前一切都按预期工作,并且可以添加您自己的动画.
可是等等!
添加动画之前, 你需要从 Mixamo 中取出装配模型. 看到此屏幕后,您将立即单击“下载”:
注意, 没有选择动画. 我们需要装配模型,以便我们可以在 Blender 中向其添加动画. 下载装配模型后 (FBX 格式), 打开一个新的 Blender 项目, 单击文件, 然后点击导入. 选择 fbx 作为您的导入类型并找到您从 Mixamo 导出的模型.
现在, 将搅拌机放在一边. 我们在 Mixamo 要做一些动画工作.
Mixamo 页面顶部, 确保选中“动画”选项卡,然后单击左上角的搜索框. 您可以选择任何可用的动画类型, 但我会选择舞蹈.
选择您喜欢的动画,它将自动应用于您的模型. 根据您的型号,某些动画会比其他动画看起来更好. 所以选择最适合您情况的一个. 因为我的模型的手臂比身体长, 我想选择一个手臂尽可能保持在头部上方的动画. 不希望那些手臂穿过地板.
我选择了众多“嘻哈舞”动画中的一部:
当您选择动画时, 您会看到它立即应用于您的模型. 很酷! 您已从静态 3D 模型转变为动态动画 3D 模型.
如果你喜欢动画, 你需要将其导出,以便我们可以将其带入 Blender.
简要说明为什么我们必须这样做. Mixamo 不允许您导出完全装备和动画的模型. 我们可以单独导出其中每一个,然后在 Blender 中将它们组合成成品.
就像你之前做的那样, 单击 Mixamo 中的“下载”按钮. 这次, 你会看到一组不同的选项. 我们只想要动画, 所以选择无皮肤选项:
现在您已经下载了动画和装配模型, 是时候在 Blender 中做一些工作了.
在 Blender 中添加动画
您之前将装配模型导入到 Blender 中. 现在, 我们需要导入动画. 单击文件 -> 进口. 再次选择fbx, 然后选择您从 Mixamo 下载的动画文件.
当你这样做时, 你应该在模型中看到一种骨架.
这是你的动画. 它还不会做太多事情, 但我们会解决这个问题. 在右侧面板中, 单击模型并将其重命名以使事情变得更容易. 我刚刚将我的重命名为“机器人”.
对你的动画做同样的事情. 然后展开动画,你会看到这样的东西:
您可以更改嵌套的“Armature”的名称.001|mixamo…”项目改为更容易记住的内容,例如“动画”.
一旦你这样做了, 你需要打开摄影表. 您可以通过将主逻辑面板编辑器切换到 Dope Sheet 来完成此操作:
打开摄影表, 你现在有额外的选择. 我们将更改为动作编辑器:
在右侧面板中, 单击您的型号. 当它突出显示时您就会知道它已被选中:
下一个, 返回动作编辑器, 找到动画下拉列表并将其更改为您导入的动画 (请记住您已将其重命名以便更容易找到):
当你选择那个时, 你应该看到模型的姿势发生变化. 这意味着动画已应用于模型. 我们可以通过切换摄影表并返回时间线来验证这一点.
当你切换时, 你会看到一个播放按钮. 点击那个, 你的模型现在应该像在 Mixamo 中一样跳舞!
播放速度可能会有点慢, 但别担心, 当我们将其上传到 IPFS 并通过 IPFS 网关 3D 查看器播放时,它看起来并不是这样的.
我们实际上不再需要 Blender 编辑器窗口中的动画, 所以你可以右键单击它,然后选择“删除层次结构”:
您将只剩下您的模型. 立即保存您的 Blender 场景. 当你这样做之后, 我们需要在 Blender 中做的最后一件事是导出我们的模型.
我们将以 glTF 格式导出模型. 单击文件 -> 出口, 然后点击glFT. 为您的文件命名并将其保存在易于访问的位置.
将您的模型带入虚拟世界
你的模型来自 (在一个完美的世界里) 您在区块链上购买的 NFT. 我们应该使用类似的技术来存储和显示该模型的新动画迭代.
我们将使用皮纳塔 将动画模型上传到IPFS. 我们将创建一个专用网关,以确保查看我们模型的任何人都可以快速访问它,而不必等待公共 IPFS 网关的缓慢加载时间. 我们将使用一个也通过网关提供服务的插件来显示我们的模型.
作为额外的奖励, 我们要在背景中添加一些音乐. 当您注册 Pinata 帐户后, 继续升级到付费计划. 相信我, 这很值得. 这可以是您托管所有内容并以您完全拥有的方式分发内容的家. 该计划起价仅为 20 美元/月.
完成此操作后, 您现在可以创建专用的 IPFS 网关. 将其视为您自己的个人媒体平台. 我们在这里提供了有关设置专用网关的精彩指南:
如果您想使用自己的自定义域为网关打上品牌, 你也可以那样做. 只需按照本指南操作即可:
完成此操作后, 在您的动画 3D NFT 头像上线并准备好分享之前,您只需执行几个步骤. 前往 Pin Manager 页面并上传从 Blender 导出的 glTF 文件.
一旦你这样做了, 是时候找一些音乐来为舞蹈配乐了. 我们不想侵犯任何版权, 所以让我们找一些公共领域的音乐。自由PD 是找到这些音乐的好地方. 一旦你找到了一些你喜欢的音乐, 下载它. 然后, 按照上传模型的方式将其上传到您的 Pinata 帐户.
行, 所以你已经上传了模型并且上传了音乐. 现在, 您只需要使用我们构建的插件来帮助通过 IPFS 网关显示动画模型. 这会很容易.
在您的 Pin 图管理器页面上, 点击上传, 然后选择来电显示:
系统会要求您提供 IPFS 网络上的 CID. Pinata 将找到关联的文件并将其固定到您的帐户. 这是要使用的 CID:
QmXypjaBUNuCAAt2eqEhNCGHq9B57eCZV6sqEEBYjFVefn
给它一个你会记住的名字. 执行此操作后, 您可能需要刷新页面几次才能显示. Pinata 会很快在网络上找到它,因为这是我们构建并固定的官方插件.
当文件出现在您的 Pin 图管理器中时, 单击名称以通过网关将其打开. 您会注意到它加载时出现错误. 那是因为它不知道要加载什么3D模型.
让我们解决这个问题!
在刚刚打开的页面上, 转到 URL 末尾并添加以下内容:
?CID=THE_CID_FOR_YOUR_MODEL&audio=THE_CID_FOR_YOUR_MUSIC
你可以得到THE_CID_FOR_YOUR_MODEL
和THE_CID_FOR_YOUR_MUSIC
来自您的 Pin Manager. 单击每个旁边的复制按钮并将其添加到 URL. 当您这样做并重新加载页面时, 您的模型应该加载,您将立即听到音乐播放, 或者您会在右上角看到一个播放按钮. 点击那个, 您将获得一个带有背景音频的跳舞 3D 模型.
这是我的机器人:
皮纳塔 IPFS 3D 加载器
快速且轻量级的 glTF 2.0 由 PlayCanvas WebGL 引擎和 Pinata 提供支持的场景查看器
灯光可能不完美, 但你可以扩大左侧的窗口并调整灯光和其他东西.
包起来
这是可能性的证明. NFT 正在改变我们思考体验的方式, 我们需要技术来跟上, 尤其是在Web3中. 我希望通过本教程您能学到一些增强 NFT 的新方法, 使用IPFS, 并通过专用网关和 Pinata 扩展可能性. 现在, 开始创造.
快乐的固定和创造!
贾斯汀·亨特 编剧
https://medium.com/pinata/how-to-make-your-3d-nft-avatar-dance-to-music-38bcd1439cf4