跳转到内容

Blender 3D:菜鸟到专业/程序化眼球

来自 Wikibooks,开放世界中的开放书籍

级别:中级

构建更好的(程序化)眼球!
最初由 Jon McKay(Ammusionist)创建,并在 blenderartists.org/forum 上发布
[1] 本教程的最终结果是一个眼球,它满足以下要求

  1. 单一网格
    • 我希望能够将一个单独的对象附加到任何项目中。
  2. 程序化纹理
    • 我不希望依赖可能会丢失的图像贴图。
  3. 多功能
    • 一个单一模型可用于任何类型的角色,无论是人类、外星人还是其他任何事物。
  4. 容易
    • 任何所需的效果都应快速访问。我不想浪费时间在纹理级别的颜色带设置上
  5. 令人印象深刻
    • 这东西无论如何都需要看起来不错。
  6. 我真正想要的另一件事是虹膜肌肉跟随瞳孔扩张!











一个古老的不同教程

  1. 制作深邃眼睛的非常古老的视频 [[2]]

创建网格

[编辑 | 编辑源代码]

这里的目标是制作一个看起来很棒的眼球。这意味着它可能在解剖学上并不完美,但有一些事情需要我们考虑:眼睛应该由白色(带血管的白色部分);虹膜(彩色部分);瞳孔(黑色,位于虹膜中心)和角膜(围绕整个眼睛的透明部分)组成。这些可能并不完全正确,但这就是我如何称呼眼睛的各个部分。

  1. 从一个球体开始:转到正面视图 ( 1键 ) 并创建一个 UV 球体。32 个环和 32 个段应该足够了。它会给我们足够的平滑度,并在我们创建形状时有足够的顶点可以使用。
  2. 点击“对齐到视图”
  3. 这个球体将成为眼睛的彩色部分,但我们还需要第二个球体来作为角膜。使用  Z  键切换到线框视图(如果你还没有在那里)。按下  A  键几次以确保所有点都被选中,然后  Shift + D  复制球体。
  4. 按下  S  键进行缩放,并将第二个球体缩放至略大于第一个球体。(提示:缩放时按住  Shift  以进行微调)或者也可以输入一个值,例如 1.01。
  5. 现在我们有了一个很混乱的网格,我们将让我们的生活变得更轻松。我们暂时将隐藏外侧部分。按下  H  键。
  6. 新手提示: 不要像我第一次不小心按下  H  时那样惊慌失措,你可以使用  Alt + H  将所有内容恢复。(注意:在 Blender 中, Alt  + 某些键通常会反转第一次按下该键的效果!)
  • 好的,现在创建内部部分的基本网格。基本上,我们需要创建一个凹形的虹膜/瞳孔部分。
  1. 确保你处于正交视图中。
  2. 切换到侧面视图,并使用边框选择 ( B ) 选择前 4 个环和尖端。现在我们将把它们压平。按下  S  键进行缩放, Y  仅缩放 Y 轴, 0键  缩放为零。

为了使眼睛更逼真,你还可以将内部的 3 个环 + 尖端稍微向内拉一些。

新手提示: 也可以将环压平的方式是保持最后一个环的位置,这样以后移动环就不需要了。在你压平这 4 个环和球体尖端之前,将你的 3D 光标放置在进行缩放操作的最后一个环所在的平面(使用边框选择仅选择第四个环,按下  Shift + S ,然后选择“光标至选中”)。然后将枢轴点设置为“3D 光标”。最后,按照上面的说明进行操作,选择要压平的所有环,并在 Y 方向将其缩放为 0。这次最外面的环将保持原位。不要忘记将枢轴点恢复为默认选项“中点”。你可以通过按下  Shift + C  将 3D 光标返回中心。












  1. 最后,沿着 Y 轴将它们拉到眼睛,直到再次变圆。











  • 现在是角膜。它并不完全是球形的;它在前面稍微凸起。我们将使用比例编辑工具。
  1. 首先,我们需要取消隐藏角膜。按下 Alt-H 使其可见。
  2. 点击 O 键,这将激活比例编辑,在 3D 视图标题栏中点击比例编辑设置中的“连接”。
  3. 选择衰减类型:“球体衰减”
  4. 再次按下 A 键几次以确保没有点被选中,切换到侧面视图(数字键盘-3),然后右键点击最前面点的左侧。我们只希望选择尖端顶点。
  5. 现在有趣的部分来了。我们希望将该点沿着 Y 轴从眼睛拉开,因此按下“G”键进行抓取,“Y”键选择 Y 轴。当你移动顶点时,你会看到一个圆圈,它定义了比例编辑的影响。调整它,使其与整个虹膜的高度相同,然后将其拖动出去,直到看起来合适。











  1. 首先,关闭比例编辑。
  2. 从中心选择尖端和前 4 个循环。











  1. 然后按下 E 键和 Y 键,然后稍微拖动出去,直到看起来不错。











  • 为了清理模型,我们将应用一个细分曲面修改器和一些平滑。
  1. 转到属性标题栏中的修改器,点击新建,选择“细分曲面”,选择视图:2。
  2. 按下 Tab 键切换到物体模式,然后点击链接和材质面板中的“设置平滑”按钮。





















  • 现在是保存工作的好时机,然后我们继续处理纹理。

添加纹理

[编辑 | 编辑源代码]

你需要在这个网格上使用多个材质。可以将材质应用于选定的面。

  1. 按下 A 键几次以确保没有任何内容被选中。
  2. 按下 Z 键关闭线框;没有线框会更容易。
  3. 将鼠标指针放置在眼睛外层的一个面的中心,然后按下“L”键选择链接的面。如果你收到“未指示任何内容”的消息,请尝试将指针放置在不同的面上,然后重试。











  1. 一旦外侧部分被选中,转到属性标题栏中的“材质”,点击“+”。点击“分配”将外侧部分分配给 Material.001。











  • 现在是内部部分。
  1. 隐藏外侧部分(H 键)。我们将从眼睛中分配其余部分。如果一个面已经分配给了一种材质,而你又将它分配给了另一种材质,它只会切换材质。











  1. 按下 A 键选择所有内容,然后像上面一样点击“+”,然后点击“分配”,将其分配给 Material.002。











  • 现在是虹膜和瞳孔。
  1. 按下 A 键取消选择所有内容。
  2. 切换到正面视图并放大。按下“C”键启用圆形选择,并选择中心的面以及外侧的一个环。你可以通过滚动鼠标滚轮来控制选择器的大小。
  3. 同样,创建一个“+”材质索引,并将瞳孔面分配给它。











  1. 最后,点击 A 键取消选择所有内容,并再次使用圆形选择来选择虹膜上的剩余面。将它们分配给一个新材质。











  • 现在我们准备好制作材质了。

角膜材质

[编辑 | 编辑源代码]
  1. 切换到物体模式(Tab)。转到 Material.001。

我们将从最简单的纹理开始。角膜基本上只是无色透明的。这是因为在某些光照条件下,角膜下的眼睛很难看到。转到阴影按钮 (F5)

  1. 找到“透明度”控制。将其设置为开启。这意味着,当我们进行操作时,我们将能够透过角膜看到。请注意,我们使用的是 Z 透明度而不是光线追踪。并将 Alpha 设置为 ".2"
  2. 漫反射颜色为白色,强度为 0.1。
  3. 在镜面反射下,使用 CookTor 为 1,硬度为 333。
  4. 在镜像反射下,点击开启,并设置为 0.4,深度为 3。
  5. 取消选项中的“可追踪”设置。
  6. 并在阴影下取消选中“投射”。





















白色材质

[edit | edit source]

眼球的白色部分稍微复杂一些。这里的材质包括一些红色的血管,可以在眼睛侧面看到,但从正面看不到。这可以用两种纹理来实现,但我们可以用一个技巧来简化操作。

首先,血管

切换到 Material.002。

从材质中找到纹理属性。

创建一个新的纹理。

使用大理石纹理,并复制以下设置。

  1. 在颜色下选择渐变。
  2. 第一个点为“0”:Pos=0; R=1, G=0.0, B=0.0; A=1;
  3. 点击第二个点,第二个点为“1”:Pos=0.340; R=1, G=1, B=1; A=1;
  4. 在大理石选项卡下:选择“更清晰”、“正弦”和“噪点”下的“硬”。
  5. 大小=2;噪点深度=10;湍流=26.04;
  6. 并将映射下的“坐标”设置为“生成”,并将“投影”设置为“球体”或“平面”。

两个颜色带在这里分别显示。这将创建一个漂亮的大理石纹理,它将均匀地覆盖眼球。那么如何从球体正面隐藏它呢?另一个颜色带技巧,但这次是在材质本身中。

它们在这里以其全部荣耀展示。

  1. 在材质选项卡下,漫反射颜色为白色,强度为 1;
  2. 勾选渐变,0: Pos=0.533; R=1, G=1, B=1; A=0; 输入为着色器;
  1. 1: Pos=0.544; R=1, G=1, B=1; A=1; 输入为法线;































颜色带项目都是白色的,一个 Alpha 为 0.0,另一个 Alpha 为 1.0。正如你所看到的,它们非常接近,形成了一条相当清晰的线,血管将在此处停止。颜色带的输入设置为“法线”,这意味着颜色带的左侧指的是平行于摄像机视图的面,而右侧指的是直接面向摄像机的面。

瞳孔材质也有很多颜色带的乐趣。

瞳孔材质

[edit | edit source]

我想要一个漂亮的黑色纹理,但我也想在光线从摄像机后方直接照射到瞳孔时获得红眼效果。为什么?我想,只是因为我可以,现在你也可以了!

像之前一样,移动到 Material.003。

这个材质中没有纹理。它基本上是黑色的,有点反光,并带有漂亮的硬镜面反射。

  1. 漫反射颜色为黑色,强度应该是 1。
  2. 镜面反射颜色为白色,强度为 0.6,硬度为 300;
  3. 在镜像反射下,反射率为 0.1;











如果你想获得红眼效果,仔细查看颜色带设置!(并非必需,可能并非每个人都想要)

  1. 勾选渐变。
  2. 0: Pos=0.970; R=0, G=0, B=0, A=0;
  3. 第二个是全红色(没有蓝色或绿色)。我们希望红眼响应光线,而不是像眼球白色那样响应角度。
  4. 1: Pos=1; R=1, G=0, B=0, A=1; 输入:能量;











现在,你一直期待的部分——虹膜!

虹膜 UV 贴图

[edit | edit source]

保存你的工作,并喝一杯咖啡,因为这一部分稍微复杂一些。

我们需要纹理粘附在网格上,无论网格的形状如何。这将产生虹膜肌肉收缩和扩张的效果。简而言之,我们将把一个过程纹理 UV 贴图到网格的单个部分。

好了,我们开始吧。切换到 material.004。你需要能够看到 3D 视图和 UV/图像编辑器。这可以通过拆分窗口来实现,如果你不知道如何操作,请再次阅读“Blender 窗口系统”模块。新手提示:如果你渲染了眼睛的图像,你将看到渲染的图像,我们想要一个空的网格。因此,在 UV/图像编辑器标题的“数据块(图像)”选择部分中,点击“X”。














确保窗口显示的是正面视图(小键盘-1),这在我们展开要使用的部分时很重要。

将 3D 视图更改为编辑模式,并选择面模式。

  1. 像之前一样隐藏外部(角膜)。
  2. 转到 Material.004,并点击“分配”右侧的“选择”,这将选择分配到该材质的面。我们将展开这些面来放置纹理。
  • 你可以将以下属性用于虹膜材质
  1. 漫反射颜色:黑色,但强度为 1
  2. 镜面反射颜色:强度:0





















  1. 现在,在工具架中搜索“着色/UV”选项卡,你将在“UV”下找到“展开”按钮。
  2. 点击它,然后选择“展开”。展开工具是一个可以用来定位纹理的工具。你可以通过在网格中定位展开的面来将纹理中的位置分配给网格。纹理可以是图像或其他纹理,并且将在“UV/图像编辑器”中展开的图像中描述的位置使用。
  3. 放大,直到它精确地放置到“UV/图像编辑器”窗口的外部边缘。











  1. 图像窗口现在应该包含一个漂亮的均匀圆圈。如果它们不再被选中,将光标放在“UV/图像编辑器”中,然后按“A”选择所有点。现在使用 Alt-Shift 选择每个圆环,从最内侧的圆环开始,并将它们缩放,直到它们覆盖从图像网格的中心到外部,如所示。(这不会影响网格)











现在我们有了贴图,让我们获得一个纹理。在 3D 视图中,按“Tab”键进入物体模式,以进行下一步。如果 UV/图像编辑器挡住了你的视线,你可以合并这两个窗口。如果你不知道如何操作,请再次阅读“Blender 窗口系统”模块

虹膜纹理

[edit | edit source]

首先,一个纹理来控制整个虹膜的颜色混合。通常,它在外部边缘颜色较深,然后随着向中心移动而变得更亮。这听起来像是混合纹理的工作。

  1. 在属性标题的纹理属性中,为 Material.004 创建一个新的纹理。它将被称为“Texture.001”。
  2. 将类型更改为混合。
  3. 创建一个类型为:云的第二个纹理。

纹理本身相当简单,但再次,颜色带是神奇的地方。

颜色带中有两个停止点。注意 Alpha 值。这个混合纹理旨在对虹膜纹理进行染色,使其在中心更亮,在外部更暗。

我们创建一个混合纹理和一个云纹理(是的,是云)。

现在,让我们创建虹膜纹理。

混合纹理

混合纹理应用于 UV 贴图输入。绿色用于作为浅色混合,对虹膜中心附近的颜色进行染色。

  1. 选择渐变。
  2. (蓝色)0: pos: 0,调整颜色设置,并将 Alpha 设置为 1
  3. (绿色)1: pos: 0.009,调整颜色设置,并将 Alpha 设置为 0.89
  4. 将渐变方式设置为球形
  5. 将映射设置为坐标:UV,投影:平面





















现在你有了颜色

云纹理

颜色带点为黑色,Alpha 为 0,白色,Alpha 为 1。

  1. 0: pos: 0,黑色,Alpha:0
  2. 1: pos: 0.737,黑色,Alpha:1
  3. 在云下:选择“灰度”,噪点:选择“硬”。
  4. 大小:0.4,深度:2
  5. 以下是(与 UV 贴图一起)线条的魔力:映射坐标:UV,投影:平面
  6. 重要:大小 X:0.01,Y:5
  7. 在影响下 - 几何体 - 法线:1





















此纹理再次应用于 UV。这将在光线从侧面照射时,在虹膜中产生一些小的阴影。添加一些灯光,看看你到目前为止的眼球。

瞳孔缩放

[edit | edit source]

我们将使用形状键来创建瞳孔效果。

我们将创建一个正常的眼睛和一只猫的眼睛。幸运的是,完全扩张的眼睛在两种情况下都是一样的,因此这将成为我们的形状键基础。

新手提示:请注意,你只能在物体模式下设置“形状键”。

  1. 进入物体模式,然后进入“物体数据”(三角形)上下文中的“形状键”属性,该上下文位于“属性”标题中。
  2. 点击“添加形状键”来创建“基础”。
  3. 创建 3 个额外的形状键。(不要在编辑后创建形状键,因为你将更改上一个关键帧,这不是我们的目标)











  1. 进入“编辑模式”,并点击形状键 1。
  2. 使用圆形选择(Alt+Shift)或材质中的取消选择按钮,在顶点选择模式下仅选择前两个环和尖端(瞳孔)。
  3. 现在将其缩放至下一个环,选择后者,并将其缩放至虹膜边缘之前(这将形成一个非常宽的瞳孔)。它必须尽可能宽,因为你可以在形状键部分调整想要的宽度。这只是一个最大值,因此你可以简单地制作动画。
  4. 将其名称更改为“宽瞳孔收缩”。











  1. 因为你可能也需要它创建一个非常小的瞳孔(使用形状键 2)。将其命名为(小瞳孔)。











在“物体模式”中使用值滑块,并将视窗着色设置为渲染(这样你就可以看到渲染后的效果),可以使用“宽瞳孔收缩”增加瞳孔形状,使用“小瞳孔”缩小瞳孔形状,你也可以同时使用它们(以及更多,如果需要)。

现在切换回物体模式,并尝试使用形状键滑块。很酷吧?

  1. 现在让我们创建一个猫眼。将形状键 3 的名称更改为“猫瞳孔”。
  2. 使用与之前相同的方法来缩放边缘环。缩放时,将缩放限制在 X 轴上(即按“S”,然后按“X”)。你应该得到一个很小但中等长度的形状键。












这基本上就是全部了。尝试其他一些东西来练习一下。

设置摄像机和灯光。

注意:由于你在眼球白色材质中所做的设置,你必须将摄像机放置在眼睛前面。因为覆盖血管纹理的眼球白色是在摄像机中间的一个白色斑点,而该斑点必须放置在眼睛中间,围绕着虹膜。

不要忘记保存,并尽情享受!












华夏公益教科书