UE特效案例 —— 魔法翅膀

2024-01-20 01:40
文章标签 特效 案例 ue 魔法 翅膀

本文主要是介绍UE特效案例 —— 魔法翅膀,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

一,环境配置

二,场景及相机设置

三,效果制作

模型材质效果制作

1,翅膀02发光基础颜色效果

2,翅膀02发光边缘透贴效果

3,大翅膀发光边缘透贴效果

4,流动翅膀效果

特效元素制作

1,地面流动扩散

2,地面光晕

3,闪烁光晕

4,向上粒子

四,效果修改


一,环境配置

  • 创建默认地形Landscape,如给地形上材质需确定比例;
  • 添加环境主光源DirectionalLight,设置相应的强度和颜色;
  • 添加天光反射SkyLight,用于天空反射;
  • 添加指数级高度雾ExponentialHeightFog,设置雾密度Fog Density及散射颜色Fog Inscattering Color;
    • 设置Directional Inscattering Color为零;
    • 设置雾的起始距离Start Distance;
  • 设置曝光PostProcessVolume,设置Min/Max Brightness为1;
    • 与关闭Game Setting类似,但还需设置Exposure Compensation;
    • Image Effects/Vignette Intensity,暗角;

二,场景及相机设置

        在环境配置好,即可导入所需的模型Mesh,纹理贴图Textures等;

  • 将主模型放置到关卡适当位置,并添加基本的材质球;
  • 根据模型设置相机,以获得相应的画面;
    • 可在相机视口的Cinematic Vieport的模式下方便调整;
    • 可配合关卡序列LevelSequence,调节相机参数;
  • 添加主光,设置好武器大体的光照效果;

三,效果制作

         环境及相机都设置后,接下来就是真正的效果制作;效果包括模型本身材质效果、及主体的Cascade或Niagara效果;

模型材质效果制作

        一般通过材质纹理颜色及变化来模拟想要效果,此模型效果分为:

1,翅膀02发光基础颜色效果
  • 提取模型本身UV图,通过PS绘制此图来控制自发光效果;
    • 可通过Maya、Max等渲染UV图;
    • 绘制UV图时,可添加若干大小不一的圆点以增加细节;

2,翅膀02发光边缘透贴效果
  • 类似上一效果方法,提取边缘;

3,大翅膀发光边缘透贴效果
  • 类似上一效果方法,提取边缘;

 

4,流动翅膀效果

翅膀模型制作,可由多个面片组合成一个大翅膀;

  • 可使用maya/max/houdini等3D软件制作;
  • 面片可旋转、弯曲,缩放等,保持面片的差异性;
  • 面片的uv应相应错开,避免流动时过于统一;可制作两套uv,分开处理;

注,输出时N、uv(如多个uv还有uv1、uv2)属性需保留;

流动材质制作,使用透明无光照模式;

  • 使用多套纹理叠加给自发光,在通过uv流体,实现流体效果;
    • 可对流动uv,添加扰乱效果,以丰富细节;
    • 使用DeriveHDRfromLDR,提高动态范围(应saturate限制在0-1);

  • 在透明度上在添加纹理,以增加透明度细节;
    • 在使用U/V sin函数,来添加边缘过渡渐变;

  • 使用World Position Offset,来模拟翅膀挥动效果;
    • 同样使用流动UV,来驱动纹理流动;
    • 借助VertexNormalWS,来提供偏移方向;
    • 相机超出边界框时,模型会消失;

  • 还可添加流动的折射效果;

特效元素制作

        地面流动扩散,地面光晕,闪烁光晕,向上粒子;

1,地面流动扩散

材质制作

  • 透明无光照模式;
  • 使用极坐标 VectorToRadialValue ,将纹理变形为圆形;
    • 可使用两层,错开流动,增加细节;
  • 同样使用极坐标纹理设置Alpha,通过RadialGradientExponential控制中心和边缘的透明度;
  • 给所有贴图使用纹理流动,形成扩散效果;
  • 可给所有UV添加扰乱,丰富细节;

注:使用极坐标后,可能出现切边的问题,可使用纹理的MipLevel模式或使用无缝贴图;

Cascade制作

  • 发射Sprite精灵粒子;
  • 附材质,附上设置好的材质;
  • 调发射位置,原点发射爆发一个永远存在(生命为零、循环一次),锁定向上方向Lock Axis;
  • 设值初始状态
    • 初始尺寸,使用默认PSA Square对齐,调节Initial Size;
    • 初始生命,生命为零,永远存在;

注,可创建两层cascade效果,中间一层较亮,外层较暗;

2,地面光晕

材质制作

  • 透明无光照模式;
  • 使用RadialGradientExponential,创建圆环;
  • 添加DepthFade,控制切边;
  • 使用ParticleColor,由Cascade控制颜色和透明度;

Cascade制作

  • 发射Sprite精灵粒子;
  • 附材质,附上设置好的材质;
  • 调发射位置,原点发射爆发一个永远存在(生命为零、循环一次),锁定向上方向Lock Axis;
  • 设值初始状态
    • 初始尺寸,使用默认PSA Square对齐,调节Initial Size;
    • 初始生命,生命为零,永远存在;
3,闪烁光晕

材质制作

  • 使用地面光晕材质;

Cascade制作

  • 发射Sprite精灵粒子;
  • 附材质,附上设置好的材质;
  • 调发射位置,原点发射爆发一个并循环,放置于地面流动扩散中间;
  • 设值初始状态
    • 初始尺寸,使用默认PSA Square对齐,调节Initial Size;
    • 初始生命,生命为1;
  • 调节生命周期内属性
    • Color over Life,配合效果调节颜色、并通过透明度控制闪烁(配合Emitter Duration);
4,向上粒子

材质制作

  • 使用地面光晕材质;

Cascade制作

  • 发射Sprite精灵粒子;
  • 附材质,附上设置好的材质;
  • 调发射位置,圆柱范围循环发射;
  • 设值初始状态
    • 初始尺寸,使用默认PSA Square或PSA Velocity对齐,调节Initial Size;
    • 初始生命,调节生命长短并随机;
    • 初始速度,调节初始速度并随机;
  • 调节生命周期内属性
    • Acceleration,设置向上的加速度并随机;
    • Color over Life,通过生命配合效果调节颜色、及透明度;
    • Size By Life,通过K帧来控制闪烁;
    • Orbit,调节环绕,给速度一些扰乱;
    • Drag,调节阻力来控制速度;

四,效果修改

注,参考学习来自点线CG

这篇关于UE特效案例 —— 魔法翅膀的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:https://blog.csdn.net/NapoleonCoder/article/details/131615650
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/624395

相关文章

MySQL 临时表与复制表操作全流程案例

《MySQL临时表与复制表操作全流程案例》本文介绍MySQL临时表与复制表的区别与使用,涵盖生命周期、存储机制、操作限制、创建方法及常见问题,本文结合实例代码给大家介绍的非常详细,感兴趣的朋友跟随小... 目录一、mysql 临时表(一)核心特性拓展(二)操作全流程案例1. 复杂查询中的临时表应用2. 临时

MySQL 数据库表与查询操作实战案例

《MySQL数据库表与查询操作实战案例》本文将通过实际案例,详细介绍MySQL中数据库表的设计、数据插入以及常用的查询操作,帮助初学者快速上手,感兴趣的朋友跟随小编一起看看吧... 目录mysql 数据库表操作与查询实战案例项目一:产品相关数据库设计与创建一、数据库及表结构设计二、数据库与表的创建项目二:员

C#中的Drawing 类案例详解

《C#中的Drawing类案例详解》文章解析WPF与WinForms的Drawing类差异,涵盖命名空间、继承链、常用类及应用场景,通过案例展示如何创建带阴影圆角矩形按钮,强调WPF的轻量、可动画特... 目录一、Drawing 是什么?二、典型用法三、案例:画一个“带阴影的圆角矩形按钮”四、WinForm

setsid 命令工作原理和使用案例介绍

《setsid命令工作原理和使用案例介绍》setsid命令在Linux中创建独立会话,使进程脱离终端运行,适用于守护进程和后台任务,通过重定向输出和确保权限,可有效管理长时间运行的进程,本文给大家介... 目录setsid 命令介绍和使用案例基本介绍基本语法主要特点命令参数使用案例1. 在后台运行命令2.

RabbitMQ消费端单线程与多线程案例讲解

《RabbitMQ消费端单线程与多线程案例讲解》文章解析RabbitMQ消费端单线程与多线程处理机制,说明concurrency控制消费者数量,max-concurrency控制最大线程数,prefe... 目录 一、基础概念详细解释:举个例子:✅ 单消费者 + 单线程消费❌ 单消费者 + 多线程消费❌ 多

MySql基本查询之表的增删查改+聚合函数案例详解

《MySql基本查询之表的增删查改+聚合函数案例详解》本文详解SQL的CURD操作INSERT用于数据插入(单行/多行及冲突处理),SELECT实现数据检索(列选择、条件过滤、排序分页),UPDATE... 目录一、Create1.1 单行数据 + 全列插入1.2 多行数据 + 指定列插入1.3 插入否则更

Python通用唯一标识符模块uuid使用案例详解

《Python通用唯一标识符模块uuid使用案例详解》Pythonuuid模块用于生成128位全局唯一标识符,支持UUID1-5版本,适用于分布式系统、数据库主键等场景,需注意隐私、碰撞概率及存储优... 目录简介核心功能1. UUID版本2. UUID属性3. 命名空间使用场景1. 生成唯一标识符2. 数

PostgreSQL的扩展dict_int应用案例解析

《PostgreSQL的扩展dict_int应用案例解析》dict_int扩展为PostgreSQL提供了专业的整数文本处理能力,特别适合需要精确处理数字内容的搜索场景,本文给大家介绍PostgreS... 目录PostgreSQL的扩展dict_int一、扩展概述二、核心功能三、安装与启用四、字典配置方法

Python中re模块结合正则表达式的实际应用案例

《Python中re模块结合正则表达式的实际应用案例》Python中的re模块是用于处理正则表达式的强大工具,正则表达式是一种用来匹配字符串的模式,它可以在文本中搜索和匹配特定的字符串模式,这篇文章主... 目录前言re模块常用函数一、查看文本中是否包含 A 或 B 字符串二、替换多个关键词为统一格式三、提

Python get()函数用法案例详解

《Pythonget()函数用法案例详解》在Python中,get()是字典(dict)类型的内置方法,用于安全地获取字典中指定键对应的值,它的核心作用是避免因访问不存在的键而引发KeyError错... 目录简介基本语法一、用法二、案例:安全访问未知键三、案例:配置参数默认值简介python是一种高级编