【翻译】Blender 乱中有序的图像块

1,517 阅读8分钟

本文正在参加「金石计划 . 瓜分6万现金大奖」

英文原文链接:Ordered Image on Disordered Blocks in Blender

前言

今天,我们将创建一个带图像纹理的立方体动画,一开始看起来无序,当所有的立方体掉落和分散在地面上时成为有序。当然,这在现实中是很难实现的,因为事物不会自发地变得比之前更有序,所以我们将从结尾开始,然后 反向 进行。

工欲善其事必先利其器,我将使用 Blender 的 3.0 版本 并将使用来自 PixabayOpenClipart-Vectors 图像: 

ordered image

但你可以用任何喜欢的图片。

下面是这些立方体落地前的样子:

ordered image

在它撞击地面 之前 不久,你只能看到大立方体的一部分,因为它将从屏幕顶部附近开始,并在一段时间后才进入视野。你可以看到图像的碎片 随机地 (或者看起来是这样)附着在立方体的表面上。

以下是动画完成后的它们样子。

ordered image

你可以在这里看到动画:

Rot.gif

让我们开始吧。以下是你需要遵循的 11 个步骤 :

步骤1 - 为默认立方体添加物理属性

这次我们将使用默认的立方体。实际上,我们将使用 Array 修改器 创建许多立方体,但在此之前,让我们向原始的立方体添加 物理,以便我们在之后所有创建的立方体上拥有它。转到 Physics 选项卡(A),并选择 Rigid Body(B)。我们希望立方体与其他对象交互。将 Shape 设置为 Box (C),在 Surface Response 下拖动 Friction 一直到 1 (D)。

Step 1 – Add Physics to the Default Cube

步骤 2 - 创建更多立方体

现在转到 Modifier 选项卡,添加一个 Array 修改器。我们将总共创建8000 个立方体。首先,为了创建一个包含 20 个立方体的行,将 Count 设置为 20 (A),为了在它们之间添加一些空间,将 Factor X 设置为 1.1 (B)。

Create More Cubes

接下来,将鼠标光标悬停在修改器面板上,并按 Shift + D 复制 Array 修改器。你可以点击第一个修改器的箭头将其折叠(A)。在第二个修改器中保留 Count20 ,但将 Factor X 改为 0 ,并将 Factor Y 设置为 1.1 (B)。现在我们有 20 行,每行有 20 个立方体。

Create More Cubes

再次复制 Array 修改器,保留 Count20 ,将 Factor Y 设置为0,将 Factor Z 设置为 1.1 。这将创建 20 层,每层有 400 个立方体,总共 8000 个立方体。

Create More Cubes

现在我们可以 应用 上述的修改器了。点击它们中的向下箭头(A)并选择 Apply (B)。

Create More Cubes

现在它看起来有 8000 个立方体,但如果你看 Outline,只有一个立方体对象。所以我们需要把小立方体分开。进入 编辑 模式,点击 P 并选择 By Loose Parts我们之前在立方体之间添加了一些偏移,所以它们是松散的部分

Create More Cubes

现在您应该可以在 Outliner 中看到所有的新立方体。

Create More Cubes

回到 物体 模式。原点 现在都在 同一个位置 ,和第一个立方体(A) 的位置相同,我们来改变它。在 Object 菜单中选择 Set Origin,并选择 Origin to Geometry(B)。

Create More Cubes

现在你会看到各个分离的立方体的原点在它们应该在的地方。

Create More Cubes

旋转立方体,使大立方体的一个角指向下方,沿着 Y 轴旋转立方体(R + Y),直到最底部的立方体接近世界中心,然后沿着 X 轴移动立方体( G + X),直到接近这个视图的中心,点击 G+Z 50,将立方体向上移动 50 个单位。

Create More Cubes

步骤 3 - 创建地面

我们需要立方体掉下来会撞向的东西。我们来画一个平面。按 Shift + A,在 Mesh 下选择 Plane。按 S 120 来缩放它。

Create the Ground

我们希望平面与立方体碰撞,所以去 Physics 选项卡并选择 Rigid Body (A)。设置 TypePassive (B),因为它不会撞向其他物体,而是一个被撞到的物体。

Create the Ground

步骤 4 - 测试动画

让我们测试一下动画,看看是否一切正常。要做到这一点,点击播放动画按钮。你会看到箱子掉下来,散落在地上。不过,这可能需要一些时间。

Test the Animation

如果一些立方体会从平面的边缘脱落,我们可以把平面放大,但让它保持原样。我们仍然会有足够的立方体。

这是动画的最后一帧(默认是 250 帧)。

Test the Animation

步骤 5 - 烘焙动画

正如我刚才提到的,现在有 250 帧。但这意味着,一旦动画播放完毕,我们将没有太多时间观看结果。我们设为 500 帧。所以,转到 Scene 选项卡(A),在 Rigid Body World 下的 Cache 下,设置 Simulation Start 为第 1 帧,模拟 End 帧为第 500 帧(B)。在时间轴中设置结束帧为 500 帧,以匹配(C)。然后保存文件并点击 Bake 按钮(D)来烘焙模拟。这需要一些时间。

Bake the Animation

步骤 6 - 设置摄像头

让我们选择相机并对齐到视图。要做到这一点,转到 View 菜单,在 Align View 下选择 Align Active Camera to View

Set the Camera

现在你应该看到相机能看到的东西,但也很可能你什么也看不到。这是因为 默认情况 下相机只能看到一定距离,比如 100 个单位。为了解决这个问题,转到 Object Data 选项卡(A),并设置 Clip End1000 (B)。现在相机可以看到多达 1000 个单位,这对我们的目的是足够的。

Set the Camera

看最后一帧。现在相机应该看到以下内容:

Set the Camera

现在将 Focal Length (焦距)更改为 70

Set the Camera

接下来,点击 N 打开侧边栏。转到 View 选项卡(A),选中 Lock Camera to View 。然后,在视口中点击 R + X 并旋转相机,直到它再也看不到地面以外的任何东西。我们现在应该得到我们想要的。这就是摄像机将要看到的。

Set the Camera

取消勾选 Uncheck Lock Camera to View ,并按 N 隐藏侧边栏。

步骤 7 - UV 展开

我们现在暂时不需要地面。让我们把它藏起来。要做到这一点,选择地面并点击 H 或点击 Outliner 中的 眼睛 图标。

在我们继续之前,让我们稍微清理一下层次结构。为此,我们将为所有立方体创建一个新的集合。右键单击 Outliner 中的 Scene Collection 并选择 New Collection。将集合重命名为 “cubes”。然后选择第一个立方体,向下滚动到最后一个立方体,按住 Shift 并选择最后一个立方体。这将选择所有的立方体。然后将它们拖到 cubes 集合中。此时,立方体们仍应被选中,但如果取消选中,只需右键单击 cubes 集合并单击 Select Objects

UV-Unwrap

现在,我们可以打开 展开 UV 了。确保你在第 500 帧(A),也就是最后一个。然后在左边打开一个新窗口,设置它的编辑器类型为 UV editor (B)。进入 编辑 模式(C)。

UV-Unwrap

选择所有并确保你在相机视图中。现在转到 UV 菜单,从视图中选择 Project from ViewBlender 3.2 经测试,需要提前全选面 [A],再 UV -> Unwrap,)。

UV-Unwrap

这是你应该在 UV 编辑器 中看到的:

UV-Unwrap

步骤 8 - 添加图像

转到 Material 选项卡,设置 Base ColorImage Texture ,并单击 打开 按钮。选择要显示在立方体上的图像打开它(A)。它应该会自动在 UV 编辑器 中打开,但如果没有,只需从下拉列表中选择它即可(B)。

Add the Image

在 3D 视口中切换到 渲染着色(A),并暂时关闭 显示叠加 按钮(B)。现在你可以看到图像(C)。

Add the Image

你现在可以切换回 Show Overlays 按钮。我们可以在 UV 编辑器 中调整 UV 来调整立方体上的图像成我们喜欢的样子,但目前让我们保持原样。

步骤 9 - 设置灯光

我们的图像看起来相当昏暗。我们让这里有更多的光吧。取消所有选择,进入 对象 模式并选择光。同时你也可以关闭 UV 编辑器 (右键点击选择 Close Area 菜单),因为我们不再需要它了。转到前视图,按 G + Z 50 向上移动灯。

Set the Light

回到相机视图(小键盘 0).选择光,到 Object Data 选项卡,设置 光类型Sun (A)和 Strength10 (B). 如果你想要达到不同的效果,你也可以旋转光,但我不打算这样做。

这就是动画结束时的图像。

Set the Light

步骤 10 - 在地面上添加一个材质

点击 眼睛 图标(A)来显示地面。选择它并转到 Material 选项卡。添加一个新的材质,并设置其Base Color 为白色(B)。

Add a Material to the Ground

步骤 11 - 渲染动画

我们已经准备好渲染动画。在开始之前保存文件,以防出现任何问题。选择 Output 选项卡(A),选择你想要保存动画的文件夹(B)。设置 File FormatFFmpeg Video(C),在 Encoding 下设置 ContainerMPEG-4 (D)。

Render the Animation

让我们做一个测试渲染。转到 Render 菜单,选择 Render Image

这就是你应该得到的图像: Render the Animation

以上我们的测试证明渲染是好的,上图是最后一帧拍摄的图像。现在再次转到 Render 菜单并选择 Render Animation 。过一段时间你就能享受你的动画了。

本文正在参加「金石计划 . 瓜分6万现金大奖」