Blender教程之魔方全自动特效教学

2023-11-09

魔方玩家在我看来分为三种,一是不懂原理的佛系玩家,三阶魔方可能都要拧很久才能还原,第二种是明白怎么玩的玩家,其实还原一个被打乱的魔方就是做一道层先法的数学题。而第三种就是像我这样虽然不懂解密,但会用Blender做一个魔方来让它“自动还原”的“高阶玩家”,本期我就来教大家怎样实现这一效果,轻松制霸朋友圈。

1.制作魔方的小方块

这次的blender教程基于三阶魔方来设计,三阶魔方总计有3×3×3,也即27个小方块组成,所以我们首先要做一个单独的小方块,可以利用Blender默认的方块来进行设计,但注意建议大家养成严格恪守现实比例的习惯,对于魔方来说,单独的小方块可以近似取一个1cm边长,应用缩放后加载一个倒角修改器,调整数值后进入编辑模式,将所有面内插一定范围再沿法向向内挤出,就能获得如图1的效果了,这个内嵌的面就是我们魔方的颜色面。

1

2.上色并制作三阶魔方

因为我们制作的魔方是六面体,所以只需要给小方块的每个面赋予不同的颜色,再堆叠起来就满足魔方的要求了,首先我们要给魔方做一个黑色的基本色,也就是边框的颜色,然后可以在编辑模式下给每一个内嵌面新增不同颜色的材质,在这里我选择的是黑白红绿蓝黄紫。

这时候有一个非常关键的操作,如图2所示,将小方块的旋转属性从默认的XYZ欧拉切换为四元数运算WXYZ,只有这样才能保证我们后续“拧魔方”的操作不会出现莫名其妙的旋转方向问题。

2

完成设置后,如图3所示,为小方块在X、Y、Z方向以1个单位的价格分别添加3个数量的阵列,这样我们的魔方就算是整体完成了,当然,如果想要获得更真实的视觉效果,还可以通过着色器来添加金属度、糙度、凹凸等细节,在这里大家就自由发挥吧,我们接下来就做魔方的旋转效果。

3

3.间隔数帧为魔方块增加旋转效果

应用所有修改器之后,首先是将魔方的原点设置为几何中心,也就是整个魔方的中心点,这个步骤十分关键。完成后进入编辑模式全选所有面,按松散块分离每一个小方块,这时候所有小方块的原点都在大魔方的中心,所以它们都会整齐地以中心为基点按X、Y、Z轴进行旋转,符合魔方的运转方式。

4

接下来blender的操作就简单了,首先是全选所有小方块,并在第一帧打上旋转关键帧,然后到你想要的的帧数,比如第10帧,开启透视模式的情况下全选任意面的9个小方块沿轴旋转,就能得到如图4的效果了,这里要注意,需要如图5所示,在时间轴里将所有方块关键帧运动插值类型从默认的贝塞尔切换到线性,不然会出现小方块之间有时间差的问题。接下来只需要每间隔10帧,选不同的面以不同的轴进行旋转,记得一定要全选所有方块后再打上旋转关键帧,一般来说魔方的旋转都是以90°为单位,可以自由发挥,最后一次旋转甚至可以有一定的角度错位,可以增强真实感。

5

不过如图6所示,旋转后的方块背面颜色也显现了出来,而现实生活中的魔方内部应该是黑色的,所以这里也需要进行修改,我们回到第一帧,全选所有小方块进入编辑模式,选中你能看到的全部非黑色面,然后反选,如图5所示。再将这些面赋予黑色材料,也就是我们最开始的框架材料,这样一来内部就全部变成了黑色,无论怎么旋转也不再受影响。

6

至此,拧魔方的工作就基本完成了,但播放后你可能会发现一个问题:这是把已还原的魔方拧乱的操作呀,我要的可是跟这相反的效果!解决方法有两个,其一是输出后在Premiere Pro等视频剪辑软件中进行倒放处理,这属于已经输出才发现问题,又不想再重新输出一遍的“懒人急救法”。

其二是全选所有小方块,在时间轴上先把所有帧往前移,让第一帧位于原本最后一帧的位置,比如第一个关键帧在第1帧,最后一个在第100帧,那就把第一个关键帧移动到第100帧的位置,然后指针停留在第100帧,保持所有关键帧全选的状态,以-1倍进行缩放,这时候你会发现所有帧以地100帧为原点进行了反向排列,这时候再从头播放就可以看到魔方的旋转变成了从混乱到整齐,整个效果也就完成了。

本章小结:不注重几个小细节就会导致失败

这次的效果虽然看起来并不复杂,但如果没有注重细节就很容易出现问题,比如所有原点必须统一在中心,旋转方式必须是四元数运算WXYZ,关键帧插值必须是线性等等,稍有偏差就会出现问题,影响最终效果甚至无法正常输出,这也反映出一个现实:Blender是一款逻辑较为严密的软件,设计者的思路必须足够清晰,才能得到想要的效果,哪怕这个效果很简单。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Blender教程之魔方全自动特效教学 的相关文章

  • Blender里的三种绑定 (三)骨骼

    文章目录 Blender里的三种绑定 骨骼 骨骼基础 骨骼的父子关系 挤出骨骼 细分骨骼 骨骼分层 骨骼分组 骨骼约束 骨骼被遮挡 对称骨骼 为模型绑定骨骼 刚体物体 只跟随骨骼的移动 不随骨骼移动发生形变 如机械 软体物体 跟随骨骼的移动
  • Blender材质贴图入门图文教程

    推荐 将 NSDT场景编辑器 加入你的3D开发工具链 大家好 今天跟大家分享Blender材质贴图入门图文教程 一套blender的PBR材质包 和HDRI环境纹理贴图 在文末领取 希望能助到大家更高效完成场景练习 据我了解 越来越多人开始
  • 【blender基础】常用基础功能记录

    blender常用基础功能记录 1 游标与选中项的吸附功能 1 1 选中项 gt 游标 1 2 选中项 gt 游标 保持偏移 1 3 选中项 gt 活动项 1 4 选中项 gt 栅格点 1 5 游标 gt 栅格点 1 6 游标 gt 世界原
  • Blender基本使用(个人笔记)

    界面移动 按住鼠标滚轮以一点为中心进行视图旋转 同时按住shift和鼠标滚轮可平移视图 滚动鼠标滚轮进行视图的缩放 按下小键盘1 3 7进入前视图 右视图 俯视图 以及CTRL 1 CTRL 3 CTRL 7查看后视图 左视图 底视图 AL
  • 7 个隐藏的 Blender 技巧将改善您的工作流程

    谁不喜欢秘密技巧 因为 Blender 是一个全面的 多功能的工具 所以有很多隐藏的复活节彩蛋 隐藏在可见表面之下的时尚工具和功能 对于今天的文章中 让我们来找出了最好的秘诀Blender技巧以提高您的工作流程与效率 1 轻松选择集合中的所
  • blender 2.8的基本使用和使用形态键(Shape key)做帧动画

    文章目录 打开blender 盒子形状 用形态键做帧动画 一些常用快捷键 打开blender 首先打开blender 2 8 出来的画面是这样的 点击画面的任意位置 除中间弹出框 就可以关闭弹出框 之后点击上方的Help gt Splash
  • 【blender基础】02 交互-吸附模式与衰减编辑

    02 交互 吸附模式与衰减编辑 1 吸附 1 1 吸附至的可选项 增量 1 2 吸附至的可选项 活动元素 1 3 吸附至的可选项 顶点 1 3 1 背面剔除 1 3 2 旋转对齐目标 1 4 吸附至的可选项 面 1 5 吸附至的可选项 体积
  • blender基础入门 / 操作快捷键

    鼠标停留在工具按钮上 按F1 打开官网在线帮助 基本显示 操作框放大缩小 T 显示 隐藏左侧工具栏 基本信息侧边栏Sidebar 展开 弹出 快捷键N 模型比例1 1 保持自身比例数据 模型游标轴点中心点设置位置 游标模式 shift C游
  • Blender编程入门

    在本教程中 我们将学习一些 Blender 脚本技术 比如如何使用代码处理 操作 复制和动画网格图元 要结合所有这些技术 我们将创建一个波浪形的锥形图案 一个看起来很酷的动画 你可以将其转换为循环 GIF 我将使用bpy data模块中的一
  • Blender基础操作:移动、旋转、缩放、删除、抓取、复制

    1 物体的移动 微调面板 Adjust last operation 对上一步操作进行微调 2 物体旋转与缩放 快速归位 几个快捷键 ALT G 坐标归零 ALT R 旋转归零 ALT S 缩放归零 3 删除 抓取 复制 快捷键x 确认后删
  • libgdx导入blender模型

    具体就是参考 官网 https libgdx com wiki graphics 3d importing blender models in libgdx blender 教程可以看八个案例教程带你从0到1入门blender 已完结 这里
  • ThreeJS - 如何将环境贴图应用到导入的 obj 模型?

    EDIT 我在这篇文章中找到了一个解决方案 如何将材质分配给 ColladaLoader 或 OBJLoader 我使用以下代码实现了允许我在导入的 obj 上使用 envMaterial 立方体贴图的效果 var loader new T
  • 播放动画一次而不是循环三个.js

    我已将搅拌机 JSON 动画导出到 THREE js 中 一切正常 但我只想播放动画一次并停止而不是循环播放动画 老问题 但如果有人需要它 解决方案是设置animation setLoop THREE LoopOnce let objLoa
  • 如何将 EXR 转换为 PNG 并同时调整亮度

    我能够使用中概述的技术将 EXR 图像转换为 PNG图像从 IFF 和 EXR 格式转换为 JPEG 格式 https stackoverflow com questions 28110353 image conversion from i
  • 我可以在 OpenGL 中使用不同的多 GPU 吗?

    我读到OpenGL 多 GPU 支持 https stackoverflow com questions 43811699 opengl multi gpu support 我目前使用的是支持 OpenGL 4 5 的 NVIDIA 卡 我
  • 网格碰撞器在应该有孔的地方有墙壁并且变形了

    我的曲线水管模型需要一个曲线圆柱对撞机 以便我的玩家红色立方体可以轻松通过 我尝试了网格碰撞器 它不起作用 还尝试了另一种技巧 我在搅拌机中构建了 2 个模型 一个用于网格渲染 一个用于碰撞器 作为一个整体 九分之一导致网格碰撞器无法在整个
  • 使用 OpenCV 测量物体的表观长度(以像素为单位)

    我用过从不同角度 姿势渲染 3D 对象的不同图像 该对象具有彩色边缘 如图所示 现在 我的目标是测量橙色和蓝色边缘的长度 Lo 和 Lb 以像素为单位 使用 OpenCV 如果边缘由单个像素组成 即由单个边缘组成的线 那么这将是一项简单的任
  • 具有材质颜色的三个 js 动画搅拌机模型

    我有一个导出的 三个 js json 格式 搅拌机模型 该模型有一些带有颜色的材料 如果我使用 THREE MorphAnimMesh 和 THREE MeshPhongMaterial 动画工作正常 但没有材质颜色 如果我使用 THREE
  • 将 3D 模型转换为 SceneJS JSON,包括纹理

    Motive我正在尝试使用 WebGL 创建一个小型演示应用程序 我选择使用 SceneJS 因为它看起来是一个简单的框架 并且足以满足此目的 我已经下载了几个 blend 模型 等 并使用 Blender 将它们导出为 Collada d
  • 将 3D 场景导入babylonJS

    所以我今天读到巴比伦JS http blogs msdn com b eternalcoding archive 2013 06 27 babylon js a complete javascript framework for build

随机推荐

  • STM32F4_nRF24L01无线通讯

    目录 前言 1 nRF24L01无线模块简介 2 nRF24L01状态机 3 nRF24L01模式 4 nRF24L01的SPI配置 4 1 nRF24L01 Rx 和 Tx 的初始化配置 4 2 nRF24L01相关寄存器 5 硬件连接
  • Spark基础学习笔记:SparkSQL词频统计

    目录 一 使用Spark SQL实现词频统计 一 数据源 words txt 四 修改源目录名称 六 创建词频统计单例对象 七 启动程序 查看结果 一 使用Spark SQL实现词频统计
  • 哥斯拉jsp马分析

    前言 这篇文章分析了哥斯拉jsp马的特征原理 写这篇文章的初衷在提高对哥斯拉马的识别 改造能力 笔者接触安全的时间较短 难免会有疏漏 恳请发现问题的大佬给予指正 哥斯拉PHP马解析可以看这篇文章 https blog csdn net ze
  • python3 题解(28 级数法求圆周率)

    级数法求圆周率 问题 圆周率是十分重要的常数 它是个无理数 无法表示为有限小数的形式 但 我们可以表示它的近似值 可以用无穷级数去逼近它 pi 的级数公式十分多 下面给出3个较简单的 2 6 1 1 2 1 2 2 1 3 2 frac p
  • 经纬高(LLA)坐标系地心地固(ECEF)坐标系与东北天(ENU)坐标系转换

    前段时间在做水下机器人项目 添加了RTK 读取到的数据为经纬高坐标系中度分形式的经纬度信息 无法直接用于定位 还需要进行坐标系的转换 后来在学习Cartographer时处理GPS数据也有提到这方面的知识 于是决定汇总到一起进行学习 下文将
  • HTML文本格式化

    目录 HTML 文本格式化实例 如何查看 HTML 源码 文本格式化标签 计算机输出 标签 引用 引用和术语定义 延伸阅读 一个完整的实例 HTML 可定义很多供格式化输出的元素 比如粗体和斜体字 下面有很多例子 可以亲自试试 HTML 文
  • SpringMVC中Controller层注解扫描

    SpringMVC中Controller层扫描 方式一 方式二
  • mysql基于Java web的电动车销售平台毕业设计源码201524

    电动车销售平台的设计与实现 摘 要 信息化社会内需要与之针对性的信息获取途径 但是途径的扩展基本上为人们所努力的方向 由于站在的角度存在偏差 人们经常能够获得不同类型信息 这也是技术最为难以攻克的课题 针对电动车销售平台等问题 对电动车销售
  • 论文研读:SuperGlue vs. LoFTR

    简介 SupeGlue与LoFTR都是对图片间进行特征点匹配的方法 其目的是 找到图像A 图像B中同时存在的相同物体实例 并输出其位置信息 匹配关系 在提取出特征点后 我们通过图神经网络生成匹配代价矩阵 并求解最优匹配矩阵 以获得全局最优的
  • 1.3 起步 - Git 基础

    1 3 起步 Git 基础 版本说明 版本 作者 日期 备注 0 1 loon 2019 3 18 初稿 目录 文章目录 1 3 起步 Git 基础 版本说明 目录 Git 基础 1 直接记录快照 而非差异比较 Figure 4 存储每个文
  • python报错:ValueError: not enough values to unpack

    报错 ValueError not enough values to unpack 分析具体原因 这个错误的信息是 期望有7个返回值 但其实函数只有4个返回值 解决方法 检查函数和接收函数返回值的参数个数是否一致 改成一致即可
  • MySQL - 一文了解MySQL的基础架构及各个组件的作用

    1 概述 不管是开运 运维 测试 都或多或少的要接触MySQL 了解MySQL的基础架构及各个组件之间的关系 有助于我们更加深入的理解MySQL 下面由一张MySQL基础架构图来一起走进MySQL MySQL可以基本划分为Server层和存
  • helm的安装、使用以及自定义Chart

    Helm概述 Helm 是一个 Kubernetes 的包管理工具 类似 Linux 的包管理器 如RedHat系的yum Debian的apt 可以很方便的将之前打包好的 yaml 文件部署到 Kubernetes 上 Helm主要解决以
  • Open3D 基于法线的双边滤波

    目录 一 算法原理 1 算法概述 2 计算步骤 3 参考文献 二 代码实现 三 结果展示 1 原始点云 2 滤波结果 四 相关链接 一 算法原理 1 算法概述 Fleishman 等人提出一种网格双边滤波器 双边滤波器最早应用于灰度图像 该
  • Linux下挂在SATA硬盘时的诡异现象

    ata1 SATA link down SStatus 1 SControl 300 ata1 EH complete ata1 exception Emask 0x10 SAct 0x0 SErr 0x4000000 action 0xa
  • Windows下配置Mask-RCNN环境(各种踩过的坑)

    Windows下配置Mask RCNN pytorch环境 各种踩过的坑 安装Anaconda 1 1 下载和安装Anaconda 安装maskrcnn benchmark项目 2 1 官方建议的安装需求 2 2 逐步安装过程 1 创建虚拟
  • TCP通讯客户端怎样判断与服务器端断开,该如何处理

    TCP通讯客户端怎样判断与服务器端断开 大虾们 神们 C winform里面 采用多线程监听端口 接收方式为阻塞式 创建单一线程进行监听函数 这样阻塞时只阻塞单一线程 对主线程没有影响 并使用异步通信模式 来一个连接后回调函数进行解析入库
  • 动态修改模板字符串中图片--简单解决

    document addEventListener error function e var elem e target if elem id toLowerCase imgurl infowindow 在这内部可以发请求拿到动态的地址 i
  • IP地址,子网掩码、默认网关,DNS的设置和工作原理(总结)

    概念 1 概述 IP地址 人们在Internet上为了区分数以亿计的主机而给每台主机分配的一个专门的地址 通过IP地址就可以访问到每台主机 子网掩码 不能单独存在 它必须结合IP地址一起使用 子网掩码只有一个作用 就是将某个IP地址划分成网
  • Blender教程之魔方全自动特效教学

    魔方玩家在我看来分为三种 一是不懂原理的佛系玩家 三阶魔方可能都要拧很久才能还原 第二种是明白怎么玩的玩家 其实还原一个被打乱的魔方就是做一道层先法的数学题 而第三种就是像我这样虽然不懂解密 但会用Blender做一个魔方来让它 自动还原