ZhangZhihui's Blog  

我创建了一个Plane,开启了Shadow Catcher,在Rendered模式下还是隐约能看到这个平面,怎样让它只捕捉阴影本向不显现出来?

 

这在 Blender 的 Cycles 渲染器中是一个非常经典且普遍的现象。你创建的 Plane 虽然开启了 Shadow Catcher(阴影捕捉)但你之所以在 Rendered 模式下依然能“隐约”看到它,通常是因为以下两个原因:

  1. 世界环境(World)的反射: 这个平面是一个实体物体,哪怕它不显示基础颜色(Base Color),它的表面(尤其是如果默认的 Principled BSDF 带有默认的粗糙度 0.5 和高光 0.5)依然会像一面非常模糊的镜子,反射出周围世界环境的颜色。如果你的环境是灰色的,这个平面看起来就是一个隐约的灰色圆盘或方块。

  2. 材质本身的漫反射: 默认的材质依然在计算光线反射。

要让它实现真正的“彻底隐形,仅捕捉阴影”,不需要去动 Shader Editor 里的 Principled BSDF,最快、最专业的方法是在物体属性中彻底关闭它的物理反射和漫反射路径

🛠️ 彻底让 Shadow Catcher 平面“隐形”的步骤:

这个设置位于物体属性的“光线可见性”(Ray Visibility)面板中,它是控制物体在渲染管线中如何与光线交互的最高权限。

  1. 在 3D 视口中,选中作为 Shadow Catcher 的那个 Plane

  2. 来到右侧的属性面板,点击那个名为 Object Properties(物体属性) 的图标(通常是一个红色的小正方体)。

  3. 向下拉,找到 Visibility(可见性) 栏目并展开。

  4. Visibility 下方,找到子栏目 Ray Visibility(光线可见性)

  5. 核心步骤: 依次取消勾选以下选项:

    • [ ] Diffuse(漫反射) (取消勾选)

    • [ ] Glossy(光泽/反射) (取消勾选)

    • [ ] Transmission(透射) (可选,如果周围有玻璃,最好也取消勾选)

💡 为什么这样做就有效了?

  • 启用 Shadow Catcher: 这个开关只是在告诉 Cycles,把这个物体变成一个“阴影采集器”。

  • 取消勾选 Diffuse 和 Glossy:

    • 当光线(Camera Ray)直接射击到这个平面时,原本它会根据其材质计算漫反射和光泽反射。

    • 我们取消了这两个开关,等于直接在物理层面断绝了光线从这个平面反射回摄像机的路径。

    • 既然没有光线反射回来,它在摄像机里就是纯粹透明的。

    • 但是光线追踪引擎依然会计算它是否被其他物体(比如你的汽车)所遮挡,从而正确地将阴影留在这个“透明但被我们标记为捕捉阴影”的位置。

✅ 最终效果:

再次切换到 Rendered 模式你会发现那个 Plane 的灰色/浅色圆盘/方块已经完全消失不见背景如果是 HDR 就显示 HDR,如果是纯色就显示纯色,只有在原本 Plane 的位置上,物体(如你的车轮)落下的阴影依然完美、清晰地存在着,就像它直接投射在环境上一样。

 

 

一个面被挖出去一个较小的锐角,然后对这个面做Subdivision和Solidify,挖掉锐角的地方会出现折皱,怎么处理能消除这些折皱?

 

在开启 Subdivision Surface(表面细分) 修改器后,如果在平面或曲面上直接开切一个锐角(小于 90° 的角),细分算法(Catmull-Clark)在试图平滑这些非四边形(N-gon 或三角面)和极点(Junction Points)时,会导致网格张力极不均匀,从而在表面产生明显的拉伸、扭曲和折皱(Pinch/Wicked Artifacts)

加上 Solidify(实体化) 修改器后,侧边的厚度挤出会进一步放大这种拉伸。

要彻底消除这些折皱,解决思路是“重塑拓扑结构(Topology)+ 边缘控线(Crease/Bevel)”。以下是硬表面建模中最有效、最常用的 3 种处理方案(按推荐程度排序):

方案一:四边形化 + 拐角布线重定向(最正统、效果最好)

细分修改器最喜欢全四边形(Quads),且极度讨厌顶点直接卡在锐角尖端。你需要改变锐角尖端的走线,把“尖角”的力量分散出去。

操作步骤:

  1. 切掉最尖锐的顶点(Champlining / Bevel)

    • 进入 Edit Mode(编辑模式),选中挖空区域那个最尖锐的顶点。

    • Shift + Ctrl + B(顶点倒角),拉出一个极小的平角,把原来的 1 个尖锐点变成 2 个顶点

  2. 改出“缓冲带”(Offset Outer Loop)

    • 在挖空开口的四周,顺着轮廓线用 I (Inset / 内嵌) 向外或向内挤出一圈平行的保护边(E-Pole 隔离带)

    • 这样细分的变形张力就会被限制在这圈保护边内部,不会传递并拉扯外面的大平面。

  3. 连接周边节点(刀客 K 工具)

    • K(Cut 刀具),将锐角周围多出来的顶点,顺着平面的延伸方向连线到外围大平面的边界顶点上,确保整个面全部由四边形组成(不要留 N-gon)。

方案二:给锐角边缘加卡线(Support Loops)

如果锐角出折皱,说明细分修改器在平滑时“跨度太大”。你需要告诉细分修改器:哪些边需要保持硬朗。

  1. 内侧/外侧环切卡线

    • 在锐角挖空区域的边缘,按 Ctrl + R 环切(Loop Cut)出一条非常贴近开口边缘的保护线(也叫 Support Loop / 卡线)。

    • 原理:卡线距离原始边缘越近,细分时产生弯曲和折皱的半径就越小,折皱就会被“挤压”到肉眼不可见的极小区域内。

方案三:使用 Crease(折痕值)或 Bevel 修改器(不改布线快捷法)

如果你不想花费大量时间手动改布线,可以使用 Blender 内置的权重控制:

方法 A:Mean Crease(折痕权重)

  1. 进入 Edit Mode,选择挖空区域边缘的那几条锐角边(以及连接尖端的边)。

  2. N 打开右侧边栏,在 Item(项目) 标签页下找到 Mean Crease(平均折痕)

  3. 将数值从 0.0 调高到 0.8 - 1.0(边会变成紫色)。

  4. 效果:这会强制细分修改器在该边缘保持锐利,不进行平滑过渡,从而瞬间消除由过度平滑导致的折皱。

方法 B:前置 Bevel(倒角)修改器

  1. 在修改器堆栈中,将 Bevel(倒角修改器) 放在 Subdivision 之前

  2. 更改修改器顺序为:

    $$\text{Solidify (实体化)} \rightarrow \text{Bevel (倒角)} \rightarrow \text{Subdivision (细分)}$$
  3. 将 Bevel 的 Limit Method(限制方式) 设为 WeightAngle(如 30°),段数设为 2,Profile(形状)设为 0.7

  4. 倒角修改器会自动在锐角处生成一小块过渡面,接管了原本会乱弹的细分张力。

💡 修改器堆栈顺序(非常重要!)

如果你的修改器顺序放错了,哪怕布线再完美也会产生折皱甚至破面。请检查右侧修改器面板,正确的上下顺序应为:

Plaintext
 
┌──────────────────────────────────────┐
│ 1. Solidify (实体化)                │ ── 先产生厚度
├──────────────────────────────────────┤
│ 2. Bevel (倒角)                      │ ── (可选) 先卡住硬边
├──────────────────────────────────────┤
│ 3. Subdivision Surface (表面细分)    │ ── 最后平滑整个带有厚度的整体
└──────────────────────────────────────┘

总结:

追求极致硬表面工业质量,用 方案一(切掉顶点尖端 + 内嵌一圈 Protect Loop) 是标准解法;如果是快速制作,使用 方案三(加小倒角或调高 Crease 值) 最省时!

 

 

用Shift+Ctrl+B处理消除了这些折皱,但出现了另一个问题,就是拐角处两个点离得很近,对处理后的面进行Inset操作时内面的边会交错,怎么处理?

 

在进行 Inset(内嵌面 I 操作时,如果顶点之间距离太近,内嵌产生的平行新边向内推进时就会互相碰撞并穿透,出现边缘交错、甚至拉扯破面的情况。

处理这个问题,主要有以下 4 种最快、最优雅的解决办法

方法 1:改用 Offset Edge Slide(偏移边滑动)—— 绝不交叉

如果对整个面按 I 总是让近距离顶点挤在一起,不要直接对面内嵌,改对“边缘”做偏移

  1. 2 进入 Edge Select(边选择模式)

  2. 双击(或 Alt + 左键)选中挖空区域的一整圈边缘

  3. 按快捷键 Ctrl + Shift + R(Offset Edge Slide / 偏移边滑动)。

  4. 移动鼠标,这会在这一圈边的两侧(或一侧)平行复制出一圈新的边。

    • 这个工具对离得很近的拐角顶点处理得非常平滑,几乎不会产生交叉

方法 2:合并距离过近的顶点(Merge by Distance)

既然那两个点离得极近(是导致交错的根源),可以在内嵌前直接把它们焊成一个点,或者内嵌后自动焊接。

操作 A:内嵌前手动融掉/焊接

  1. 1 进入 Vertex Select(顶点选择模式)

  2. 框选拐角处离得很近的那两个顶点。

  3. M --> 选择 At Center(合并到中心),或者按 Alt + M 选择 By Distance(按距离合并)并稍微微调阈值,把它们融合成 1 个顶点。

  4. 此时角变回了一个顶点(或者平缓的点),再次按 I 内嵌时,就不存在挤压交错的问题了。

操作 B:利用 Auto Merge(自动合并)

  1. 在 3D 视图右上角,勾选那个小小的磁铁旁边的“双圆圈”图标 —— Auto Merge Vertices(自动合并顶点)

  2. I 进行内嵌,即使出现了交错,拖动内嵌边让交错的顶点重合在一起,Blender 会在松开鼠标的瞬间自动把重合的点焊死在一起

  3. 内嵌完成后,按 G 稍微移动一下那个合并后的点,整理一下走线即可。

方法 3:改用“ Offset Edge Loop(偏移边循环)”或“Bevel(倒角)”代替直接 Inset

如果你发现对整个面按 I 总是搞砸拐角,可以只针对边缘进行操作:

  1. 进入 Edge Select(边选择模式),选中这个面四周的外围环线(Alt + 左键双击边缘)。

  2. Ctrl + B(倒角/Offset 边)。

  3. 向内拉动鼠标,这会沿现有边缘向内复制出一圈极其平行的保护线。

  4. 倒角对近距离顶点的处理算法比 Inset 更加平滑,通常能完美避免尖角交错。

方法 4:手动修复交错(刀客 K + 融解边)—— 完美高精布线

如果你已经做完了 Inset,且拐角处已经发生了交叉拉扯:

  1. 删掉/合并交叉点: 选中交叉重叠的那几个脏顶点,按 M --> At Center 合并。

  2. 连接正确拓扑:K(刀具),从重合后的点切一刀连接到外围,形成标准的四边形。

  3. 融解多余边: 选中内部交错重叠、导致 N-gon 的那条乱线,按 X --> Dissolve Edges(融解边)

💡 总结硬表面布线小经验

当你用 Shift + Ctrl + B 把尖角切平(Chamfer)时:

  • 如果切得太小,两个点太近 --> Inset 容易交错;

  • 如果切得稍微大一点点(给拐角留出足够的缓冲空间),不仅能彻底消除细分折皱,再按 I 内嵌时,内嵌线就会顺着这个平缓的斜坡等距向内缩,完全不会碰撞

 

 

Render Animation时Output选择PNG,生成很多图片后怎么组合成动画?

 

在 Render Animation 时选择 PNG 序列帧输出是非常专业且规范的做法。因为如果渲染过程中途崩溃或断电,PNG 序列帧不会损坏,只需从断掉的那一帧继续渲染即可。

将渲染好的一堆 PNG 序列帧组合成视频动画,最快、最方便的方法是直接使用 Blender 内置的 Video Sequencer(视频剪辑器),无需安装任何第三方软件。

以下是详细的操作步骤:

🎬 使用 Blender 将 PNG 序列帧合成视频

步骤 1:新建或清空场景

  1. 打开 Blender,点击顶部菜单栏的 File $\rightarrow$ New $\rightarrow$ Video Editing(视频编辑)

    (或者在现有界面顶部点击 + 号新建一个 Workspaces 选项卡 $\rightarrow$ Video Editing $\rightarrow$ Video Editing)

步骤 2:导入 PNG 序列帧

  1. 将下方的时间轴指针(Playhead)移动到第 1 帧。

  2. 在视频编辑器区域,点击顶部菜单的 Add(添加) $\rightarrow$ Image/Sequence(图像/序列)(快捷键 Shift + A)。

  3. 在弹出的文件浏览器中,找到并进入保存 PNG 图片的文件夹。

  4. A 键全选所有的 PNG 图片。

  5. 点击右上角(或右下角)的 Add Image Strip(添加图像片段) 按钮。

  6. 此时所有的 PNG 序列帧就会变成一条紫色的视频片段放置在轨道上。

步骤 3:设置帧率与渲染输出参数

来到右侧的 Output Properties(输出属性,小打印机图标) 面板:

  1. Dimensions(尺寸/帧率):

    • Frame Rate(帧率): 确保这里的帧率(如 24 fps30 fps60 fps)与你之前渲染动画时设置的帧率完全一致,否则视频声音或速度会不同步。

    • Frame Range(帧范围): Start Frame 设为 1End Frame 设为你的总帧数(例如 120)。

  2. Output(输出路径与格式):

    • File Path(文件路径): 点击文件夹图标,选择最终合成好的视频要保存在哪里,并给视频起个名字(如 MyCarAnimation.mp4)。

    • File Format(文件格式):PNG 切换改为 FFmpeg Video

    • Encoding(编码,展开该栏目):

      • Container(容器): 改为 MPEG-4(即 MP4 格式)。

      • Video Codec(视频编码器): 选择 H.264(兼容性最好)。

      • Output Quality(输出质量): 选择 Perceptual Lossless(感知无损)High Quality(高质量)

步骤 4:渲染导出视频

  1. 确认无误后,按下快捷键 Ctrl + F12(或者点击顶部菜单栏的 Render $\rightarrow$ Render Animation)。

  2. Blender 会以极快的速度(通常几秒钟)将所有 PNG 图片合成并导出为一个 MP4 视频文件!

💡 其它备选合成工具(如果你想用外部软件)

  • PR / AE (Adobe Premiere / After Effects):

    打开软件,点击 Import(导入),选中第一张 PNG 图片,勾选底部的 Image Sequence(图像序列) 选项,软件就会自动将其读取为一段视频片段,直接拉入时间线导出即可。

  • FFmpeg(命令行极速合成):

    如果你熟悉命令行,可以在 PNG 图片文件夹下直接运行:

    ffmpeg -framerate 30 -i %04d.png -c:v libx264 -pix_fmt yuv420p output.mp4
    

    (注:%04d 对应 Blender 默认输出的 4 位数字编号,如 0001.png)

 

posted on 2026-07-21 20:06  ZhangZhihuiAAA  阅读(14)  评论(0)    收藏  举报