百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

Blender 教程:创建旋转文字圆环动画

myzbx 2025-05-25 14:22 106 浏览

本教程将指导你使用 Blender 创建一个三维文字环绕成圆环并旋转的动画效果。我们将使用文字工具、曲线修改器(Curve Modifier)、重构网格修改器(Remesh Modifier)以及 Cycles 渲染引擎来实现最终带有玻璃质感和动态光效的视觉效果。

核心思路是先创建 3D 文字,然后利用一个圆形的曲线(Curve Circle)和曲线修改器让文字沿着曲线路径弯曲成环状。为了解决文字弯曲后可能出现的模型表面瑕疵(Artifacts),我们会使用重构网格修改器来优化几何体(Geometry)。接着,添加一个圆环体(Torus)作为外部的玻璃罩。最后,设置材质、灯光和动画,并使用 Cycles 引擎进行渲染,通过合成节点(Compositing Nodes)添加辉光(Glare)和色散(Dispersion)效果。

添加文字

  1. 启动 Blender。
  2. 按下 Shift + A,在弹出的菜单 (Menu) -> Text (文本) 中选择 Text,添加一个文字对象。
  3. 按下 Tab 键进入编辑模式 (Edit Mode)。
  4. 删除默认的 "Text",输入你想要的文字,比如 "BLENDER TEXT"。
  5. 再次按下 Tab 键退出编辑模式。

设置文字格式

  1. 选中文字对象。
  2. 在右侧的属性面板中,找到并点击绿色的 'a' 图标,进入对象数据属性 (Object Data Properties)。
  3. 展开 Paragraph (段落) 面板。
  4. 在 Alignment (对齐) 部分,将 Horizontal (水平) 设置为 Center (居中),Vertical (垂直) 设置为 Middle。
  5. 展开 Font (字体) 面板。
  6. 点击字体选择框旁边的小文件夹图标,打开字体浏览器。
  7. 为了让文字弯曲和重构后效果更好,需要选择一个笔画粗壮 (Bold) 的字体。带有 "Black" 或 "Heavy" 字样的字体通常很合适。避免使用纤细的字体。
  8. 在你的系统中选择一个粗字体,例如 "Arial Black"。点击 Open Font (打开字体)。

挤出和倒角

  1. 在文字的对象数据属性中,展开 Geometry (几何体) 面板。
  2. 调整 Extrude (挤出) 的值,给文字增加厚度,可以根据视觉效果调整,使其看起来比较方正。
  3. 展开 Bevel (倒角) 面板。
  4. 稍微增加 Depth (深度) 的值(比如 0.01m 左右),为文字边缘添加一点圆滑的倒角效果,让它看起来不那么尖锐。Resolution (分辨率) 保持默认即可。

创建曲线圆环

  1. 按下 Shift + A,选择 Curve (曲线) -> Circle (圆环),添加一个贝塞尔圆环。这个圆环将作为文字变形的路径。

应用曲线修改器

  1. 选中你的文字对象。
  2. 在右侧属性面板,点击扳手图标,进入修改器属性 (Modifier Properties)。
  3. 点击 Add Modifier (添加修改器),选择 Deform (形变) 下的 Curve (曲线)。
  4. 在 Curve 修改器的 Curve Object (曲线物体) 选项中,点击吸管图标或者下拉菜单,选择刚刚创建的 BezierCircle。
  5. 你会看到文字已经沿着圆环路径弯曲了。

调整文字方向

  1. 选中文字对象。
  2. 在右侧属性面板,点击橙色方块图标,进入对象属性 (Object Properties)。
  3. 展开 Transform (变换) 面板。
  4. 找到 Rotation (旋转),将 X 轴旋转设置为 90 度。
  5. 将 Z 轴旋转设置为 -180 度。这样文字的正面就朝向外侧了。

修正文字几何体(Remesh)

  1. 你可能会发现弯曲后的文字表面有很多瑕疵和不规则的面。直接使用 Shade Smooth (平滑着色,右键菜单中选择) 效果不佳。
  2. 选中文字对象。
  3. 回到修改器属性(扳手图标)。
  4. 添加 Generate (生成) 下的 Remesh (重构网格) 修改器。
  5. 重要: 将 Remesh 修改器拖拽到 Curve 修改器的上方。修改器的应用顺序很重要。
  6. 在 Remesh 修改器设置中:将模式从 Voxel 改为 Sharp。取消勾选 Remove Disconnected (移除连接断开的部分),否则字母的内部孔洞可能会消失。将 Octree Depth (八叉树深度) 的值提高,比如 8 到 10。这个值越高,模型细节越多,但计算量也越大。原理说明: Octree Depth 类似于细分级别,它决定了重构网格的精细度。请根据你的电脑性能调整,值太高可能导致 Blender 卡顿或崩溃。勾选 Smooth Shading (平滑着色)。
  7. 现在文字的表面应该变得平滑干净多了。

调整字符间距(可选)

  1. 如果发现字母之间因为弯曲而挤压或重叠过于严重,可以选中文字对象,回到对象数据属性 ('a' 图标)。
  2. 展开 Spacing (间距) 面板。
  3. 适当增加 Character Spacing (字符间距) 的值,直到字母分开一些。
  4. 调整间距后,你可能需要稍微缩放 (S) 一下文字对象,使其整体大小合适。

添加外部圆环(Torus)

  1. 为了获得更好的性能,可以暂时将文字对象的 Remesh 修改器的 Octree Depth 调低,比如 6。
  2. 按下 Shift + A,选择 Mesh (网格) -> Torus (圆环体)。
  3. 不要立刻进行其他操作! 在视图左下角会出现 Add Torus (添加圆环体) 的选项面板,点击展开它。
  4. 调整 Major Radius (主半径),使其大致匹配文字圆环的大小。
  5. 调整 Minor Radius (次半径),使其厚度刚好能包裹住文字的厚度。你可以临时切换到线框视图(按 Z 选择 Wireframe)来观察。
  6. 调整完毕后,可以点击视图空白处确认。

平滑圆环

  1. 选中刚刚创建的 Torus 对象。
  2. 按下 Tab 键进入编辑模式。
  3. 确保所有顶点都被选中(如果没有,按 A 全选)。
  4. 右键点击,选择 Subdivide (细分)。
  5. 在左下角的 Subdivide 面板中,将 Smoothness (平滑度) 设置为 1。
  6. 按 Tab 键退出编辑模式。
  7. 右键点击 Torus 对象,选择 Shade Smooth (平滑着色)。

恢复文字细节

  1. 选中文字对象。
  2. 回到修改器属性(扳手图标)。
  3. 将 Remesh 修改器的 Octree Depth 设置回你想要的高精度值,例如 10。

设置 Cycles 渲染参数

  1. 在右侧属性面板,点击相机图标,进入渲染属性 (Render Properties)。
  2. 确保 Render Engine (渲染引擎) 设置为 Cycles。
  3. 将 Device (设备) 设置为 GPU Compute (如果你的显卡支持)。
  4. 展开 Light Paths (光线路径) -> Max Bounces (最大反弹次数)。
  5. 将 Total, Diffuse, Glossy, Transmission, Volume, Transparent 的值都设置为 5 左右。 由于我们会用到玻璃材质,需要足够的光线反弹次数(尤其是 Transmission)来正确渲染透明和折射效果。将它们设为 5 是一个比较快的折中方案。
  6. 展开 Sampling (采样) -> Render (渲染)。将 Max Samples (最大采样数) 设置为一个较高的值,比如 500。这个值决定了最终渲染图像的噪点多少,值越高噪点越少,但渲染时间越长。

设置材质

  1. 选中外部的 Torus 对象。
  2. 在右侧属性面板,点击红色的球形图标,进入材质属性 (Material Properties)。
  3. 点击 New (新建) 创建一个新材质。
  4. 将 Base Color (基础色) 设置为纯白色(或接近纯白)。
  5. 将 Roughness (糙度) 设置为 0(或者一个非常小的值,比如 0.03,如果想要一点点模糊感)。
  6. 将 Transmission (透射) 设置为 1。这会让它变成玻璃材质。
  7. 调整 IOR (折射率) 的值。IOR 控制光线穿过材质时的弯曲程度。默认 1.45 是类似玻璃的值。你可以按住 Shift 拖动滑块微调,观察内部文字的变形效果,找到你喜欢的感觉(可以调到 1.18 左右,产生了有趣的放大效果)。
  8. 选中内部的文字对象。
  9. 点击 New 创建一个新材质。
  10. 将 Metallic (金属度) 设置为 1。
  11. 将 Base Color 设置为纯白色。
  12. (可选)降低一点 Roughness,让金属更有光泽。

设置灯光

  1. 点击视图右上角的渲染预览按钮 (Viewport Shading),进入 Cycles 实时预览。
  2. 在世界属性 (World Properties,红色地球图标) 中,将 Color (颜色) 设置为纯黑色,创建全黑背景。
  3. 按下 Shift + A,选择 Light (灯光) -> Spot (聚光灯)。
  4. 按下 G 移动灯光,可以移到斜上方。按 R 两次(自由旋转)或 R 加轴向(如 RX)来调整灯光指向圆环。
  5. 选中聚光灯,在灯光属性(灯泡图标)中:将 Power (功率) 大幅提高,例如 10000 W 或更高(根据场景亮度调整)。将 Color 设置为浅蓝色。可以调整 Radius (半径) 来控制阴影柔和度,调整 Spot Size (光束大小) 和 Blend (混合) 来控制光照范围。
  6. 选中第一个聚光灯,按 Shift + D 复制一个。
  7. 将复制的灯光移动到圆环的另一侧(比如相对的位置),同样用 R 两次调整方向,使其也照亮圆环。
  8. 选中第二个聚光灯,在灯光属性中:将 Power 设置为更高的值,例如 20000 W。将 Color 设置为醒目的红色或橘红色。

设置摄像机

  1. 按 ~ 键(波浪号键,通常在 Tab 上方)选择 View Camera (查看摄像机) 进入摄像机视图,或者按 Numpad 0。如果还没有摄像机,或者想调整视角:
  2. 先在 3D 视图中调整到你喜欢的观察角度。
  3. 按 Ctrl + Alt + Numpad 0 将当前视图设置为摄像机视角。
  4. 选中摄像机,按 G 然后按 Z 两次,或者按 G 然后按鼠标中键,可以前后移动摄像机,调整距离。

设置动画控制(Empties)

问题: 如果我们直接旋转文字或圆环,再想让它们整体倾斜旋转会很麻烦,轴向会混乱。 解决方案: 使用空物体 (Empty) 作为控制器来分离不同的旋转轴。

  1. 按下 Shift + A,选择 Empty -> Plain Axes (平面坐标轴)。
  2. 在 Outliner (大纲视图,右上角) 中,将这个 Empty 重命名为 ROTATE 1。
  3. 按顺序选中:文字对象、BezierCircle、Torus 对象,最后按住 Shift 键选中 ROTATE 1 这个空物体。
  4. 按下 Ctrl + P,在弹出的菜单中选择 Object (Keep Transform) (物体(保持变换))。这样,文字、曲线和圆环都成为了 ROTATE 1 的子级。
  5. 再次按下 Shift + A,添加第二个 Empty -> Plain Axes。
  6. 将这个新的 Empty 重命名为 ROTATE 2。
  7. 选中 ROTATE 1,然后按住 Shift 键选中 ROTATE 2。
  8. 按下 Ctrl + P,选择 Object (Keep Transform)。现在 ROTATE 1 成为了 ROTATE 2 的子级。

控制逻辑:

  • ROTATE 1 将控制 Z 轴的持续旋转。
  • ROTATE 2 可以用来设置整体的倾斜角度,并且这个倾斜会随着 ROTATE 1 的旋转而保持。

制作旋转动画

  1. 在底部的时间线 (Timeline) 窗口,确保当前帧是第 1 帧(如果不是,点击最左边的跳转按钮)。总帧数 End 设为 250。
  2. 选中 ROTATE 1 这个空物体。
  3. 在对象属性(橙色方块图标)-> Transform -> Rotation 中,将鼠标悬停在 Z 值上,按下 I 键,插入一个旋转关键帧。
  4. 点击时间线上的跳转到结尾按钮(最右边的按钮),跳转到第 250 帧。
  5. 将 ROTATE 1 的 Z 轴旋转值改为 360。
  6. 再次将鼠标悬停在 Z 值上,按下 I 键,插入第二个关键帧。
  7. 重要: 为了实现无缝循环,需要将动画曲线设置为线性。在时间线窗口中,确保两个关键帧都被选中(黄色),然后右键点击 -> Interpolation Mode (插值模式) -> Linear (线性)。或者,在主菜单 Edit (编辑) -> Preferences (偏好设置) -> Animation (动画) 中,将 F-Curves (函数曲线) 下的 Default Interpolation (默认插值) 设置为 Linear。
  8. 现在选中 ROTATE 2 这个空物体。
  9. 按下 R 两次,自由旋转 ROTATE 2,直到你获得想要的倾斜视角。不要为 ROTATE 2 设置关键帧,我们希望这个倾斜角度在整个动画中保持不变。
  10. 按下 Space (空格键) 预览动画,你应该能看到圆环在倾斜的同时,绕着自身的中心轴旋转。

后期处理(Compositing)

  1. 切换到顶部菜单栏的 Compositing (合成) 工作区。
  2. 勾选 Use Nodes (使用节点)。你会看到一个 Render Layers (渲染层) 节点和一个 Composite (合成) 节点。
  3. 按下 Shift + A,搜索 Viewer (查看器) 节点并添加。将 Render Layers 节点的 Image 输出连接到 Viewer 节点的 Image 输入。这样你就能在背景看到渲染结果了。
  4. 为了方便连接,可以按住 Shift 键并用鼠标右键在 Render Layers 的 Image 输出和 Composite 节点之间拖拽,创建一个 Reroute (重路由) 节点。
  5. 启用降噪数据: 回到渲染属性(相机图标),展开 Sampling -> Render,勾选 Denoise。然后去视图层属性 (View Layer Properties,两个叠加方块图标),展开 Passes -> Data,勾选 Denoising Data。
  6. 回到 Compositing 工作区。按下 Shift + A,搜索 Denoise (降噪) 节点并添加,放在 Render Layers 和 Composite/Viewer 之间。
  7. 将 Render Layers 的 Image、Denoising Normal 和 Denoising Albedo 输出分别连接到 Denoise 节点的对应输入。
  8. 将 Denoise 节点的 Image 输出连接到 Composite 和 Viewer 节点的 Image 输入。
  9. 按下 Shift + A,搜索 Glare (辉光) 节点并添加,放在 Denoise 和 Composite/Viewer 之间。
  10. 将 Glare 节点的模式从 Streaks 改为 Fog Glow (雾辉光)。调整 Threshold (阈值)、Size (大小) 等参数可以控制辉光效果。
  11. 按下 Shift + A,搜索 Lens Distortion (镜头畸变) 节点并添加,放在 Glare 和 Composite/Viewer 之间。
  12. 勾选 Fit (适配)。
  13. 稍微增加 Dispersion (色散) 的值,比如 0.05 到 0.1,可以在物体边缘产生轻微的色差效果(模拟镜头色散)。

最终渲染

  1. 检查所有设置:分辨率、帧率、采样数、输出路径、文件格式(建议 PNG 序列)。
  2. 确保你保存了项目 (Ctrl + S)。
  3. 点击顶部菜单栏的 Render (渲染) -> Render Animation (渲染动画)。
  4. 等待渲染完成。渲染时间取决于你的电脑性能和设置的采样数。
  5. 渲染完成后,你会在指定的输出文件夹中找到一系列 PNG 图片。你可以使用 Blender 的视频编辑器 (Video Editing workspace) 或其他视频编辑软件将这些图片序列合成为最终的视频文件。

恭喜你完成了这个旋转文字圆环动画!

相关推荐

如何设计一个优秀的电子商务产品详情页

加入人人都是产品经理【起点学院】产品经理实战训练营,BAT产品总监手把手带你学产品电子商务网站的产品详情页面无疑是设计师和开发人员关注的最重要的网页之一。产品详情页面是客户作出“加入购物车”决定的页面...

怎么在JS中使用Ajax进行异步请求?

大家好,今天我来分享一项JavaScript的实战技巧,即如何在JS中使用Ajax进行异步请求,让你的网页速度瞬间提升。Ajax是一种在不刷新整个网页的情况下与服务器进行数据交互的技术,可以实现异步加...

中小企业如何组建,管理团队_中小企业应当如何开展组织结构设计变革

前言写了太多关于产品的东西觉得应该换换口味.从码农到架构师,从前端到平面再到UI、UE,最后走向了产品这条不归路,其实以前一直再给你们讲.产品经理跟项目经理区别没有特别大,两个岗位之间有很...

前端监控 SDK 开发分享_前端监控系统 开源

一、前言随着前端的发展和被重视,慢慢的行业内对于前端监控系统的重视程度也在增加。这里不对为什么需要监控再做解释。那我们先直接说说需求。对于中小型公司来说,可以直接使用三方的监控,比如自己搭建一套免费的...

Ajax 会被 fetch 取代吗?Axios 怎么办?

大家好,很高兴又见面了,我是"高级前端进阶",由我带着大家一起关注前端前沿、深入前端底层技术,大家一起进步,也欢迎大家关注、点赞、收藏、转发!今天给大家带来的主题是ajax、fetch...

前端面试题《AJAX》_前端面试ajax考点汇总

1.什么是ajax?ajax作用是什么?AJAX=异步JavaScript和XML。AJAX是一种用于创建快速动态网页的技术。通过在后台与服务器进行少量数据交换,AJAX可以使网页实...

Ajax 详细介绍_ajax

1、ajax是什么?asynchronousjavascriptandxml:异步的javascript和xml。ajax是用来改善用户体验的一种技术,其本质是利用浏览器内置的一个特殊的...

6款可替代dreamweaver的工具_替代powerdesigner的工具

dreamweaver对一个web前端工作者来说,再熟悉不过了,像我07年接触web前端开发就是用的dreamweaver,一直用到现在,身边的朋友有跟我推荐过各种更好用的可替代dreamweaver...

我敢保证,全网没有再比这更详细的Java知识点总结了,送你啊

接下来你看到的将是全网最详细的Java知识点总结,全文分为三大部分:Java基础、Java框架、Java+云数据小编将为大家仔细讲解每大部分里面的详细知识点,别眨眼,从小白到大佬、零基础到精通,你绝...

福斯《死侍》发布新剧照 "小贱贱"韦德被改造前造型曝光

时光网讯福斯出品的科幻片《死侍》今天发布新剧照,其中一张是较为罕见的死侍在被改造之前的剧照,其余两张剧照都是死侍在执行任务中的状态。据外媒推测,片方此时发布剧照,预计是为了给不久之后影片发布首款正式预...

2021年超详细的java学习路线总结—纯干货分享

本文整理了java开发的学习路线和相关的学习资源,非常适合零基础入门java的同学,希望大家在学习的时候,能够节省时间。纯干货,良心推荐!第一阶段:Java基础重点知识点:数据类型、核心语法、面向对象...

不用海淘,真黑五来到你身边:亚马逊15件热卖爆款推荐!

Fujifilm富士instaxMini8小黄人拍立得相机(黄色/蓝色)扫二维码进入购物页面黑五是入手一个轻巧可爱的拍立得相机的好时机,此款是mini8的小黄人特别版,除了颜色涂装成小黄人...

2025 年 Python 爬虫四大前沿技术:从异步到 AI

作为互联网大厂的后端Python爬虫开发,你是否也曾遇到过这些痛点:面对海量目标URL,单线程爬虫爬取一周还没完成任务;动态渲染的SPA页面,requests库返回的全是空白代码;好不容易...

最贱超级英雄《死侍》来了!_死侍超燃

死侍Deadpool(2016)导演:蒂姆·米勒编剧:略特·里斯/保罗·沃尼克主演:瑞恩·雷诺兹/莫蕾娜·巴卡林/吉娜·卡拉诺/艾德·斯克林/T·J·米勒类型:动作/...

停止javascript的ajax请求,取消axios请求,取消reactfetch请求

一、Ajax原生里可以通过XMLHttpRequest对象上的abort方法来中断ajax。注意abort方法不能阻止向服务器发送请求,只能停止当前ajax请求。停止javascript的ajax请求...