当前位置: 首页 > article >正文

UE5 蓝图学习计划 - Day 11:材质与特效

在游戏开发中,材质(Material)与特效(VFX) 是提升视觉体验的关键元素。Unreal Engine 5 提供了强大的 材质系统 和 粒子系统(Niagara),让开发者可以通过蓝图控制 动态材质、光效变化、物体交互特效 等视觉效果。本篇文章将学习如何使用 动态材质(Dynamic Material) 和 粒子特效(Niagara),并结合蓝图实现交互式的视觉效果。

理论学习

  1. 材质系统(Material System)
    材质(Material) 定义了物体的外观,包括颜色、纹理、光照反射等。在 UE5 中,材质可以结合蓝图 动态修改,实现诸如:
    • 颜色变化(如角色受伤时变红)
    • 透明度渐变(如物体逐渐消失)
    • 自发光特效(如科幻门禁系统)
  2. 动态材质(Dynamic Material)
    动态材质实例(Dynamic Material Instance) 允许在游戏运行时修改材质参数,而不影响原始材质:
    • 使用 Create Dynamic Material Instance 创建动态材质实例。
    • 通过 Set Scalar Parameter Value 或 Set Vector Parameter Value 修改材质参数。
  3. 粒子系统(Niagara)
    Niagara 是 UE5 新一代粒子特效系统,能够创建 火焰、烟雾、能量爆炸 等高级特效,并可通过蓝图触发或控制:
    • 在场景中特定位置播放特效。
    • 角色受击时触发火花特效。
    • 武器攻击时生成能量波动。

实践任务:动态材质 + 交互特效

目标

  1. 创建一个动态材质
    • 让物体靠近时变亮(自发光效果)。
  2. 使用蓝图控制材质
    • 通过 Trigger Box 触发材质颜色变化。
  3. 添加粒子特效
    • 在角色触碰物体时触发 闪电粒子效果。

步骤 1:创建动态材质

  1. 创建基本材质

    1. 在 Content Browser 中,右键 Material > Material,命名为 M_GlowingObject。
    2. 双击打开材质编辑器,进行以下操作:
      • 添加一个颜色参数:
        • Vector Parameter(命名为 Color)。
        • 连接到 Base Color 输入。
      • 添加一个自发光参数:
        • Scalar Parameter(命名为 GlowIntensity)。
        • 连接到 Emissive Color 输入。
    3. 保存材质,返回主界面。
      在这里插入图片描述
  2. 在蓝图中创建动态材质

    1. 在 Content Browser 创建一个 Actor 蓝图,命名为 BP_GlowObject。
    2. 添加以下组件:
      • Static Mesh(设置为立方体或球体)。
      • Box Collision(作为触发区域)。
        在这里插入图片描述
  3. 初始化动态材质

    1. 在 Event Begin Play 事件中:
      • 创建动态材质实例:
      • 存储材质变量,以便在后续修改颜色。
        在这里插入图片描述

步骤 2:使用蓝图触发材质变化

  1. 进入触发区域变亮

    1. 在 BP_GlowObject 中,添加 OnActorBeginOverlap(触发事件)。
    2. 修改材质颜色:
      在这里插入图片描述
  2. 离开触发区域恢复

    1. 在 BP_GlowObject 中,添加 OnActorEndOverlap(触发事件)。
    2. 修改材质颜色:
      在这里插入图片描述
  3. 测试效果

    1. 在场景中放置 BP_GlowObject。
    2. 运行游戏,控制角色进入和离开触发区域,观察物体是否变亮和恢复。
      在这里插入图片描述

步骤 3:添加 Niagara 粒子特效

  1. 创建 Niagara 系统

    1. 在 Content Browser,右键 Niagara System,创建 NS_ElectricSpark。
      在这里插入图片描述

    2. 选择 New system from selected emitter(s),点击下一步,选择Fountain,点击加号,点击Finish。
      在这里插入图片描述
      在这里插入图片描述

  2. 在蓝图中播放特效

    1. 在 BP_GlowObject 的 OnActorBeginOverlap 事件中:
      • 添加 Spawn System at Location:
      • 这样,当角色靠近时,物体会变亮并触发特效。
        在这里插入图片描述
  3. 测试效果

    1. 运行游戏,角色进入触发区域,观察 动态材质 + 粒子特效 的组合效果。
      在这里插入图片描述

学习收获

通过今天的学习,你掌握了:

  1. 如何创建动态材质 并使用蓝图控制它的颜色和光效。
  2. 如何结合 Trigger Box 触发材质变化,让物体在角色靠近时发光。
  3. 如何使用 Niagara 粒子系统,在交互事件中播放特效。

下一步学习计划

接下来,我们将学习 存储与加载系统,探索如何使用 SaveGame 让玩家数据(如血量、进度、道具)在游戏重启后保持不变!🚀


http://www.kler.cn/a/529539.html

相关文章:

  • Unity游戏(Assault空对地打击)开发(3) 摄像机的控制
  • 吴恩达深度学习——超参数调试
  • C# 环境:深入探讨与优化
  • 基于微信小程序的医院预约挂号系统设计与实现(LW+源码+讲解)
  • 【开源免费】基于SpringBoot+Vue.JS体育馆管理系统(JAVA毕业设计)
  • 4-图像梯度计算
  • 大模型训练(5):Zero Redundancy Optimizer(ZeRO零冗余优化器)
  • 操作系统和中间件的信息收集
  • 踏入编程世界的第一个博客
  • 在 Ubuntu 中使用 Conda 创建和管理虚拟环境
  • 使用朴素贝叶斯对散点数据进行分类
  • 5分钟在本地PC上使用VLLM快速启动DeepSeek-R1-Distill-Qwen-32B
  • Github 2025-02-02 php开源项目日报 Top10
  • Windows程序设计11:文件的查找与遍历
  • PyTorch数据建模
  • 【Leetcode 热题 100】5. 最长回文子串
  • 91,【7】 攻防世界 web fileclude
  • 【深度解析】DeepSeek-R1的五大隐藏提示词
  • LeetCode 15.三数之和
  • 保姆级教程:利用Ollama与Open-WebUI本地部署 DeedSeek-R1大模型
  • C++11—右值引用
  • AI技术在SEO关键词优化中的应用策略与前景展望
  • 深度解析:网站快速收录与网站安全性的关系
  • 物业管理收费系统如何提升收费效率与业主满意度的全新实践
  • Vue 入门到实战 七
  • upload labs靶场