从 Blender Guru 的 blender 甜甜圈教程中重新认识图形学【辰龙】

前言

跟着 Blender Guru 的 16 集的 blender 甜甜圈教程【可自行度娘或者去 B 站搜】,全部学完,其实坚持下来也挺不容易的。每晚一集,开着 Blender 边看边做,直接上一个短的我自己跟做的效果视频。。。

Blender 是什么?Blender 是一款免费开源的三维计算机图形软件,被广泛用于动画制作、建模、渲染、视频编辑、特效合成等领域。以下是 Blender 的一些特点和功能:1. 建模和雕刻:Blender 提供了强大的建模工具,包括多边形建模、曲面建模和物理模拟。它还支持高级的雕刻功能,可以创建复杂的有机形状。2. 动画制作:Blender 支持全面的动画制作功能,包括骨骼动画、逐帧动画和动态模拟。它提供了可视化的时间轴编辑器图形节点编辑器,使动画制作更加直观易用。3. 渲染引擎:Blender 内置了强大的渲染引擎 Cycles,可生成高质量的逼真渲染图像。此外,它还支持实时渲染引擎 Eevee,可以在编辑过程中实时预览场景。4. 特效合成:Blender 提供了视频编辑和特效合成功能,可以对影片进行剪辑、颜色校正、特效添加等操作。它还集成了一个强大的节点编辑器,可用于自定义复杂的特效和过渡效果。5. 游戏开发:Blender 具有游戏开发功能,包括可视化编程逻辑、物理模拟和材质编辑。可以用 Blender 创建游戏场景、角色和动画,并导出到多个游戏引擎中使用。6. 插件和脚本:Blender 支持插件和脚本扩展,可以通过用户社区编写的插件增加功能。它还包含一个 Python API,允许用户自定义和自动化任务。Blender 的免费开源性质使其非常受欢迎,成为了许多艺术家、设计师和动画制作专业人员的首选工具。无论是个人项目还是商业项目,Blender 都提供了强大而灵活的工具来实现创意的想象力

前言

全程学完下来,确实有种让我重新认识图形学的感觉,以前玩 Web3D, Shader, Opengl 等等遇到的图形学相关的知识与概念,在 Blender 中全部都可以非常形象的出现了,而且让我惊呆了:)Awesome!!!
作者 Andrew Price 真的非常用心,跟着学,获益匪浅。
先回顾一下,随意说一些印象比较深刻的东西。
1、三点式的光照。当需要为场景打灯时,可以教科书式的,加个 Key Light,Fill Light 和 Rim Light;真是长知识了!!!也就是主光、补光和边缘光。

三点式光照
三点式光照

入门图形学时,光照加阴影是绕不过的,光源有点光源平行光聚光灯。这里放三个点光源,只要放得远其实也就当作平行光一样效果用。太阳也类似。光照模型:有 Phong, Blinn Phong,Pbr,等等

2、强大的渲染引擎 Cycles。好家伙,直接光线追踪渲染引擎!!!比的就是显卡。效果杠杠的。
自己学习时,也写过一篇《A Simple Introduction to Ray Algorithms》,使用的是类似延时类加渲染把所有路径追踪的颜色结果累加到一起达到非常接近自然的结果。如果有一张好显示,渲染超快,效果超好!!!

soft shadows, global illumination, color bleeding and ambient occlusion
soft shadows, global illumination, color bleeding and ambient occlusion.

当然如果建模过程中机器显卡太垃圾,可以先切换 Eevee 实现渲染引擎顶上。

3、建模和雕刻工具。视频作者有句话我觉得很对:建模的目标其实就是把规则的东西做成不规则的。确实是这样,如果把头做成一个规则的圆球就没意思了,如果表面是绝对光滑,那也太奇怪了。在对顶点和面的雕刻建模过程中,让我想起以前使用 Adobe Illustrator 画漫画角色的线点编辑的感觉。

把标准的几何体,进行顶点编辑,实现膨胀,挤压,法向拉、压
把标准的几何体,进行顶点编辑,实现膨胀,挤压,法向拉、压、Ring Cut、Smooth 等等

4、各种键盘快捷键,惊呆了。G, S, R,I, shift + A, shift + D, ctr + A, alt + S, alt + H, F12 等等,更多可以参考:《Blender学习记录(甜甜圈)》

5、各种强大的节点编辑器【编排器】。材质、几何顶点、后期效果合成等都可以通过节点编辑器来编辑实现。动画编辑器也非常惊艳。。UV 实时编辑。。贴图实时编辑。。编排过程中其实有点像自己在写 shader 代码进行处理,所以还是模拟写代码的过程,超级棒的交互体验效果。

基于物理的 Material 编辑
基于物理的 Material 编辑
使用几何节点编辑器编排出粒子系统 - 糖果飘落效果
使用几何节点编辑器编排出粒子系统 – 糖果飘落效果
甜甜圈表面贴图实时编辑
甜甜圈表面贴图实时编辑
甜甜圈绕 z 轴旋转动画编排
甜甜圈绕 z 轴旋转动画编排,使用曲线编辑器(可选)
整体渲染效果后期编排处理
整体渲染效果后期编排处理

当然还有动画渲染,视频后期处理,balalala…

Blender 与图形学

Blender 如何进行三维建模

要在Blender中创建三维模型,可以按照以下步骤进行:

1. 打开Blender:启动Blender软件,将打开一个空的场景。

2. 添加基本几何体:在3D视图窗口中,通过快捷键Shift + A或单击左下角的“添加”按钮,在场景中添加基本几何体,如立方体、球体、圆柱体等。这些几何体将成为你开始建模的基础。

3. 进入编辑模式:选中一个几何体,然后按Tab键进入编辑模式。在编辑模式下,可以修改几何体的顶点、边缘和面。

4. 使用编辑工具:在编辑模式下,可以使用各种编辑工具来修改几何体的形状。例如,可以使用顶点选择工具选择顶点,并使用平移、旋转、缩放等变换工具对选中的顶点进行操作。还可以使用切割、抽出、镜像等工具进行更进一步的操作。

5. 添加细节:在编辑模式下,可以添加细节来丰富模型。例如,可以使用切割工具切割额外的边缘和面,以创建更复杂的形状。还可以使用顶点细分工具来添加更多的细分级别。

6. 导入模型或使用自定义形状:除了使用基本几何体创建模型外,还可以导入现有的模型文件,如OBJ、FBX、STL等。或者,您可以使用各种绘图或雕刻工具在Blender中绘制自定义形状。

7. 应用材质和纹理:在建模过程中,可以为模型应用材质和纹理来定义其外观。可以在Blender的材质和纹理编辑器中创建和编辑材质,然后将其分配给模型。

8. 渲染和导出模型:完成建模后,可以使用Blender的内置渲染引擎(如Cycles或Eevee)进行渲染,生成最终的图像或动画。还可以将模型导出为各种文件格式,以供其他软件使用或进行进一步处理。

以上是在Blender中创建三维模型的一般步骤。Blender提供了广泛的建模工具和功能,可以满足各种需求,无论是建模简单的物体还是复杂的场景。通过实践和探索,您将能够更好地利用Blender建立令人惊叹的三维模型。

Blender 如何编辑动画

在Blender中编辑动画可以给模型和场景添加动态效果和运动。以下是在Blender中编辑动画的一般步骤:

1. 准备场景和模型:在开始创建动画之前,确保你的场景和模型已经准备好。你可以在场景中放置和设置好模型,并设置好相机和灯光等元素。

2. 进入动画模式:在Blender的底部工具栏中,切换到”动画”模式。这将使Blender进入动画编辑模式,允许你创建和编辑动画帧。

3. 选择对象和属性:在3D视图中,选择你希望添加动画的模型对象。然后,在”属性”编辑器中,选择要编辑和动画化的属性,如位置、旋转、缩放等。

4. 关键帧设置:在场景的时间轴上,选择一个时间点(帧),然后将你希望属性的值设置为该时间点的初始状态。然后,在属性编辑器上,点击插值按钮设置关键帧。这将在时间轴上添加一个关键帧和属性值。

5. 添加和调整关键帧:继续在时间轴上选择不同的时间点,并修改属性的值。然后,通过点击插值按钮来添加关键帧,并在时间轴上调整关键帧的位置和属性值,以创建所需的动画效果。

6. 使用曲线编辑器(可选):曲线编辑器是一个功能强大的工具,可以让你更精确地编辑和控制动画曲线。通过曲线编辑器,你可以调整关键帧之间的插值,创建平滑的运动曲线,调整曲线缩放和延伸等。

7. 动画渲染和预览:当动画编辑完成后,你可以使用Blender的渲染引擎(如Cycles或Eevee)对动画进行渲染,并生成最终的动画视频。你还可以在时间轴的播放控制区域或动画编辑器中预览动画效果。

通过以上步骤,你可以在Blender中编辑动画,为你的模型和场景添加动态效果和运动。不断实践和尝试不同的动画编辑技巧,以获得你所期望的最终结果。Blender提供了丰富的动画编辑工具和选项,可以帮助你创造出令人惊叹的动画。

Blender 3 中的最常用的 BSDF 材质有什么属性?【关于 Material 编辑】

在Blender 3.0中,BSDF材质依然是用于表征光线与物体表面相互作用的材质模型。虽然我无法提供Blender 3.0具体的属性列表,但我可以告诉你一些常见的BSDF材质属性。以下是一些可能存在于BSDF材质中的属性:

1. 基础颜色(Base Color):用于指定物体表面的基础颜色。

2. 金属度(Metallic):指定物体表面的金属度。设置为1时表示完全金属,设置为0时表示完全非金属。

3. 光滑度(Roughness):调整物体表面的光滑程度。

4. 法线(Normal):用于调整物体表面的法线方向和强度,以改变纹理和细节的外观。

5. 发光(Emission):用于指定物体表面的自发光效果。

6. 折射(Refraction):控制透明表面的折射效果。

7. 透明度(Opacity):指定物体表面的透明度。

8. 透明反射(Transparency Reflection):控制透明表面的反射效果。

9. 反射(Reflection):控制物体表面的镜面反射效果。

10. 体积(Volume):用于模拟有体积的效果,如烟雾、云彩等。

这些属性可以帮助你调整物体表面的外观和行为,以实现不同的材质效果。另外值得注意的是,Blender的版本可能会有所不同,因此具体的属性名称和功能可能会在不同版本中有所调整或改变。请查阅Blender 3.0的官方文档或更新说明以获取更详细的信息。

这个跟我的 Blender 3.6 版本的 Principle BSDF 使用上有点不一样,如下图,现在有个 Subsurface 配置!!!

BSDF 材质编排
BSDF 材质编排

Subsurface 绝对是高级的东西~~

介绍一下图形学中的 Subsurface

在计算机图形学中,Subsurface(次表面散射)是指光线在物体内部发生散射和传播的现象。它是一种模拟光线在半透明或不透明物体中穿行并散射的技术,用于模拟物体内部光线的传播和散射行为。

Subsurface散射在现实世界中非常常见,特别是在半透明的物体(如皮肤、蜡烛、果冻等)中。当光线射入物体内部时,会与物体内部的结构和成分相互作用,并在物体内部发生多次散射,最终产生出从物体内部向外部的光线。这个过程会导致光线在物体表面下的扩散和柔化,给物体的外观带来更柔和、逼真的效果。

在计算机图形学中,实现Subsurface散射可以通过多种方法,其中一种常用的方法是基于体积散射(Volume Scattering)的渲染技术。该技术通过模拟物体内部的光线传播和散射,并且在渲染过程中考虑光线与物体内部结构相互作用的效果,从而得到更加逼真的渲染结果。

Subsurface散射能够帮助我们在渲染半透明或不透明物体时获得更真实的效果。例如,在渲染皮肤时,Subsurface散射可以模拟光线穿过皮肤内部并在表面下弥散的效果,使皮肤看起来更加逼真和柔和。此外,Subsurface散射还可以应用于其他材质,如果冻、石膏、乳液等,以模拟它们材质特有的光线传播行为。

需要指出的是,Subsurface渲染需要考虑光线与物体内部相互作用的复杂计算,因此在计算上较为消耗资源。不同的渲染引擎和软件在Subsurface渲染实现方面可能有不同的算法和参数设置,以平衡渲染质量和效率。

【待续】

作者: 博主

Talk is cheap, show me the code!

发表评论

邮箱地址不会被公开。

Captcha Code