ue4 材质表达式分类
绿色节点
颜色 Color Desaturation
数学 Math GO
字体 Font FontSample,FontSampleParameter
实用程序 Utility
- 常用: Desaturation(去饱和度),Distance(距离),Fresnel(菲涅尔,边框),GIReplace(GI 替换,反射数据替换),LinearInterpolate(线性插值 Lerp)
- 优化用:FeatureLevelSwitch(功能级别开关),QualitySwitch(质量开关)
- 蒙版:SphereMask(球体蒙版),AntialiasedTextureMask(抗锯齿纹理蒙版)
- BumpOffset(视差贴图):法线UV偏移,产生阴影,材质深度效果
- Noise(噪声): 生成噪点。 注意:Position要的3维向量 是一个渐变的值。TexCoord的值是渐变的,Vector3不是。
- RotateAboutAxis(绕轴旋转): 1、设定好旋转轴(0,0,1) 2、如果想移动这个旋转轴(100,100,0) 3、LocalPosition=WorldPosition TransformPosition Locatoin Space
- 网格距离场:DistanceToNearestSurface(与最近表面的距离),DistanceFieldGradient(距离场梯度)...生成了网格距离场后这两个函数就可使用了,有点像A*寻路里的格子,算距离很方便。
- 不常用:BlackBody(黑体),ConstantBiasScale(常量偏差比例),hlsl函数 ddx ddy(往屏幕右边走,是离光源更远还是更近,变化幅度由多大)。DepthOfFieldFunction(视野深度函数)
- ??:LightmassReplace(光照系统替换 两种输入,在两种使用阶段)
DepthFade
红色节点
常量 Const
- ??? 按实例消退、随机
- 时间(period?周期?),双面法线,VertexColor,ViewProperty(视野大小)
- 粒子的:颜色,方向,全局空间位置,动运,半径,大小,生存时间,速度
坐标 Coordinates
- 对象:ActorPositionWS,ObjectPositionWS,ObjectOrientatoin,ObjectRadius
- 像素:PixelNormalWS,WorldPosition
- 场景:ViewSize,SceneTexelSize,SceneColor,SceneDepth,ScenePosition //Texel:纹理元素 texture element
- 其他:ParticlePositionWS,VertexNormalWS,CameraPositionWS
WS是全局的意思。LightmapUVs:???。
绿节点:Panner,Rotator
粒子 Particle
ParticleMotionBlurFade(粒子运动模糊的值) ParticleMacroUV(使用粒子拼好贴图) SphericalParticleOpacity(利用透明度达到圆形) ParticleSubUV(粒子动画贴图用)
- 粒子的:颜色,方向,全局空间位置,动运,半径,大小,生存时间,速度
其他
大气 Atmosphere AtmosphericFogColor
深度 Depth DepthFade(深度消退) PixelDepth(像素深度) SceneDepth(场景深度)
其他
定制 Custom
自t定义HLSL代码,CalcPixelMaterialInputs 最后一步计算函数
函数 Function
多数与材质函数配合使用,除TextureObject与TextureSample配合使用
材质属性 Material Attribute
BreakMaterialAttributes中断材质属性 MakeMaterialAttributes建立材质属性
参数 Paramaters
- CollectionParameter(参数文件) DynamicParameter(粒子系统用) FontSampleParameter TextureObjectParameter(纹理取样用)
- StaticBoolParameter(编译时用的) StaticComponentMaskParameter(编译时用 蒙版)
材质实例,代码用
:ScalarParameter VectorParameter材质实例,代码用
:TSP2D(功能与TextureSample相同),TSPSubUV(功能与ParticleSubUV相同) TSPCube(只接立方体贴图) TSPMovie(只接电影贴图) //TSP=TextureSampleParameter
景观 Landscape
LandscapeLayerBlend:景观模式专用的材质表达式,可将多个材质混合,按需涂到景观上。
1、给景观选择材质 2、在景观模式的颜料下选择层,涂到景观上。要为每个层创建一个文件(Landscape Layer))。
三种混合模式:LB_ALphaBlend、LB_HeightBlend、LB_WeightBlend。
- LB_WeightBlend:按重量混合,使用一个层涂的次数越多混合权重越高。
- LB_HeightBlend:这个会在混合层上加一个H层。H层在与别的层混合时会显示出来,H层的值:白色混合权重0,黑色权重1。
节点:LandscapeLayerCoords,LandscapeLayerSwitch,LandscapeLayerWeight,LandscapeVisibilityMask
纹理 Texture
蓝的节点
- FontSample,FontSampleParameter,TextureObject,TextureSample
- ParticleSubUV,TextureObjectParameter,TextureSampleParameter2D,TextureSampleParameterCube
红的节点
- SpriteTextureSample??定制精灵纹理取样
- SceneColor,TextureProperty
失量操作
ObjectOrientation(对象方向),ReflectionVectorWS(反射全局空间矢量:表面法线上的摄像机方向)
其他的与参考坐标目录
失量
AppendVector(追加矢量),ComponentMask(分量蒙版),CrossProduct(矢量积),Normalize(规范化),Transform(转换 本地<->全局)
DeriveNormalZ(派生法线 Z。。根据X,Y值生成Z),DotProduct(标量积。。参考向量投影,全局向量法线Dot相机相对表面向量 可做出类似菲涅尔效果)
材质相关源代码
Runtime/Engine/Classes/Material MaterialExpressionSceneTexture
ue4 材质表达式分类的更多相关文章
- 如何突破Ue4材质编辑器没有Pass的概念
Content-Driven Multipass Rendering in UE4 GDC 2017 Blueprint Drawing to Render Targets Overview Live ...
- UE4 材质切换(带动画效果)
先看效果图:小木块掉到地板上(小木块本身会消失掉),地板就开始了动效材质切换.引擎版本用的是4.11.2 方法步骤: 首先在UE4内容浏览器中新建一个材质. 第一步要实现一个扫光的效果,如下图. 实现 ...
- UE4材质初探
转自:http://www.unrealchina.net/portal.php?mod=view&aid=233 UE4的材质表面上看起来很简单,可是到了用的时候却总是没有办法实现好的效果. ...
- UE4材质特别属生记录
tangent space normal 切线空间法线 材质默认使用的切线空间法线,可切换为对象空间法线(彩色贴图) Separate Translucency 单独半透明 允许半透明被渲染到一个单独 ...
- 【UE4 材质】一些小功能
利用材质实现物体自转 物体外轮廓高亮 使用postprocess+custom depth(防遮挡) https://www.tomlooman.com/soft-outlines-in-ue4/ h ...
- UE4 材质编辑
1.颜色反转(纹理颜色白变黑,黑变白)
- UE4 材质Lerp节点解疑
转自:http://www.manew.com/thread-46268-1-1.html 1.A是一个灰色,B是一个红色,Alpha是一个颜色图 A到B是0到1,也就是黑到白,所以,alpha图,黑 ...
- lambda表达式分类
public class StreamTest { public static void main(String[] args) { createStream(); getForEach(); get ...
- UE制作PBR材质攻略Part 1 - 色彩知识
目录 一.前言 二.色彩知识 2.1 色彩理论 2.1.1 成像原理 2.1.2 色彩模型和色彩空间 2.1.3 色彩属性 2.1.4 直方图 2.1.5 色调曲线 2.1.6 线性空间与Gamma空 ...
随机推荐
- springMVC使用HandlerMethodArgumentResolver 自定义解析器实现请求参数绑定方法参数
http://blog.csdn.net/truong/article/details/30971317 http://blog.csdn.net/fytain/article/details/439 ...
- (五)Cluster Health
Let’s start with a basic health check, which we can use to see how our cluster is doing. We’ll be us ...
- C# 使用DES对字符串进行加密
1.DES加密是属于对称加密,加密和解密使用的密钥必须要保持一致,且必须为8位,使用前首先添加引用: 2.逻辑实现代码如下:
- PyInstaller安装使用方法
PyInstaller可以把Python应用程序及其所有依赖项捆绑到一个包中.用户可以在不安装Python解释器或任何模块的情况下运行打包的应用程序.PyInstaller支持Python 2.7和P ...
- CF618F Double Knapsack 构造、抽屉原理
传送门 首先,选取子集的限制太宽了,子集似乎只能枚举,不是很好做.考虑加强限制条件:将"选取子集"的限制变为"选取子序列"的限制.在接下来的讨论中我们将会知道: ...
- 使用 xUnit 编写 ASP.NET Core 单元测试
还记得 .NET Framework 的 ASP.NET WebForm 吗?那个年代如果要在 Web 层做单元测试简直就是灾难啊..NET Core 吸取教训,在设计上考虑到了可测试性,就连 ASP ...
- ABP大型项目实战(2) - 调试与排错 - 日志 - 查看审计日志
这是<ABP大型项目实战>系列文章的一篇. 项目发布到生产环境后难免会有错误. 那么如何进行调试和排错呢? 我看到俱乐部里有人是直接登陆生产服务器把数据库下载到开发机器进行调试排错 ...
- Linux下redis的安装及配置
1.去官网下载redis(redis.io) 2.将其解压到根目录下 3.进入解压的目录,然后编译源程序, 如果不是root账户登录的,命令前面需要加sudo make make install PR ...
- MariaDB第四章:视图,事务,索引,外键--小白博客
视图 对于复杂的查询,在多个地方被使用,如果需求发生了改变,需要更改sql语句,则需要在多个地方进行修改,维护起来非常麻烦 假如因为某种需求,需要将user拆房表usera和表userb,该两张表的结 ...
- Promise学习笔记
Promise对象 Promise 表示一个异步操作的最终结果,与之进行交互的方式主要是 then 方法,该方法注册了两个回调函数,用于接收 promise 的终值或本 promise 不能执行的原因 ...