跳至内容

Blender 3D:菜鸟到高手/创建基础海水

来自 Wikibooks,开放世界中的开放书籍
[编者注:需要更基础的介绍,讲解什么是材质、纹理、贴图以及所有相关术语,并辅以图例,然后再深入讲解具体的海水示例。当你了解你在更改什么时,学习效果会更好。]
海水材质设置

地球表面的 75% 被水覆盖。为了向这个伟大事实致敬,我们将首先通过创建基础海水来提升你的材质技能。

创建 3 个链接平面

[编辑 | 编辑源代码]

首先,我们在 Blender 中创建一个新文件,并通过按下 **XKEY** 并确认弹出对话框来删除默认立方体。现在,使用 **NUM7** 切换到顶视图,然后输入 **SPACE > Add > Mesh > Plane** 创建一个平面。然后使用 **SKEY** 将其按比例放大到原始大小的 20 倍,你已经在之前的教程中学习过这种方法。使用 **NUM3** 切换到侧视图,并使用 **Alt-D**(不是 Shift-D)复制此平面 *两次*,每次复制将平面沿 Z 轴向下移动两个网格空间。这样,当我们设置透明度后,水的透明度会更加逼真。使用 Alt-D 而不是 Shift-D 会创建一个链接副本,因此我们对一个平面所做的更改会影响另外两个平面。

创建材质

[编辑 | 编辑源代码]

现在开始进行实际的纹理工作。选择任何一个平面,并按下 **F5** 打开按钮窗口中的材质按钮。你可能会在这里发现两个新的窗口:一个名为链接和管道,另一个名为预览。

(**菜鸟提示:** 本节之后添加了针对 Blender 2.63 用户的新部分。)

单击“链接和管道”选项卡中的“添加新”按钮,创建一个名为“Material.001”的新材质。为了方便起见,我们将将其重命名为更具意义的名称,比如“Seawater”,只需单击它并输入字母即可,如图所示(在字段中使用 SHIFT+DELETE 清除)。

现在,在同一个选项卡上,将海水材质的颜色设置为 RGB (0.100, 0.310, 0.435)。找到名为“镜像透明”的选项卡,并单击它。单击“射线镜像”和“射线透明”。对于“射线镜像”框,将“RayMir”滑块移动到 0.3,将“Fresnel”滑块移动到 2.5,将深度设置为 5。对于“射线透明”框,将“IOR”滑块移动到 1.33,将“Fresnel”滑块移动到 2.0,将深度设置为 5。这将使水具有逼真的透明度和反射。另外,单击“着色器”选项卡,将“CookTorr”更改为“Blinn”,将“Spec”移动到 2.000,将“Hard”移动到 180,将“Refr”移动到 10.000。这样会使水看起来更加光亮。

现在,我们将为海水添加一个程序纹理,这将使它具有“波浪”效果。单击纹理按钮(看起来像砖块)或按下 **F6** 查看纹理按钮子上下文。单击纹理名称左侧的旋钮,并选择“添加新”按钮。这将创建一个名为“Tex.001”的新纹理。单击名称并将其更改为“Waves”。

转到纹理类型下拉菜单(**F6**),并选择“云”。在“云”选项卡中,将“NoiseSize”更改为 0.050。我们的 Waves 纹理已准备就绪;接下来,我们将完善它如何应用于我们的 Seawater 材质。

噪声大小会增加噪声的大小,在本例中是云。软噪声会混合强度并降低对比度。创造一种柔和的效果,就像柔和的波浪。硬噪声会创建高对比度,并突出显示单个“形状”。

如果你想为你的水添加更多细节,请添加另一个纹理,并将其重命名为“LargeWaves”。使其成为与之前纹理相同的云纹理,但将其“NoiseSize”设置为 0.300,并使用“硬噪声”。

最终渲染图像

左键单击材质按钮(看起来像一个红色球体),返回到材质按钮子上下文。查看纹理面板,你会看到“Waves”纹理已自动与 Seawater 材质关联。

选择“映射到”选项卡。单击“Nor”和“Spec”按钮,使其被选中并显示白色文本(白色文本表示正向映射)。双击“Hard”按钮,使其被选中并显示黄色文本(黄色文本表示负向映射)。单击“Col”按钮使其不被选中,此按钮将显示我们不希望在纹理中显示的任何颜色。找到“Nor”滑块,将其值移动到大约 5.00。

如果你创建了“LargeWaves”纹理,请在“纹理和输入”下选择“LargeWaves”纹理,转到“映射到”选项卡,取消选择“Col”,选择“Nor”,并将“Nor”滑块移动到 7.00。这次不要选择“Hard”或“Spec”。

对于灯光,按下 **Space > Add > Lamp > Sun**。你不应该需要移动太阳或更改任何设置。最后,将相机移动到平面的边缘,并将其向上移动一点,朝向天空。

转到场景选项卡(**F10**),并查看大渲染按钮旁边的六个按钮。取消选中所有这些按钮,只保留“Ray”按钮处于选中状态。这将告诉 Blender 不要渲染我们场景中的一些我们不需要的功能。现在按下 **F12** 渲染水,这可能需要一些时间,具体取决于你的系统。

欣赏你的水,也许喝一杯清凉的饮料!

创建材质/纹理 (Blender 2.63)

[编辑 | 编辑源代码]

材质

  • 转到属性窗口(默认情况下位于右下角的窗口),并单击材质选项卡
  • 单击 + 符号创建一个新的材质,并将其命名为 Seawater
  • 单击漫射颜色框,并将其设置为海水蓝 RGB (0.100, 0.310, 0.435)
  • 启用镜像复选框
  • 在镜像部分,设置反射率:0.3,菲涅尔:2.5,深度:5
  • 启用透明度复选框
  • 在透明度部分,单击射线追踪按钮
  • 同样在透明度部分,设置 IOR:1.33,菲涅尔:2,深度:5
  • 在镜面反射部分,使用下拉菜单将 CookTorr 更改为 Blinn,然后设置强度:1,硬度:180,IOR:10


纹理

  • 仍在属性窗口中,单击纹理选项卡
  • 单击“+ 新建”按钮创建一个新的纹理,并将其命名为 Waves
  • 使用下拉菜单将类型设置为:云
  • 在云部分,设置大小:0.05 以创建软噪声
  • 在影响部分,取消选中漫射下的颜色,然后在镜面反射下,选中“镜面反射”框和“硬度”框,然后将值设置为硬度:-1。在几何体下,选中“法线”框,并将值设置为法线:5

(**菜鸟提示:V. 2.78** 在映射中,将坐标更改为生成。)

  • 选择纹理列表中的第二行,并使用“+ 新建”按钮创建一个新的纹理。将其命名为 LargeWaves
  • 再次将类型设置为云,但这次在云部分设置大小:0.3,并单击“硬度”按钮以使用硬噪声
  • 取消选中“颜色”,并在几何体下选中“法线”框,并将值设置为法线:7

(**菜鸟提示:V. 2.78** 在映射中,将坐标更改为生成。)


灯光

  • 在物体模式下,选择默认灯(如果有)并将其删除
  • 通过按下 ALT+A 并选择灯 --> 太阳来创建一个新的灯
  • 通过沿 Z 轴向上移动太阳将其放置在天空。按下 G,Z,20,然后按回车键
  • 返回属性窗口,并单击世界选项卡
  • 单击地平线颜色下的框,并将颜色设置为 RGB (0.242, 0.617, 0.831),以获得天空蓝
  • 将相机位置调整为俯瞰水面,可以看到一些天空,并渲染你的场景。
  • 如何在水面下方添加一些海豚,就像我们之前模块中学习的那样?

The final rendered image

额外练习

[编辑 | 编辑源代码]

本教程可能还会帮助您制作更加逼真的水:链接

华夏公益教科书