ue4材质节点怎么⽤_⾃学ue4材质,⼀⼤堆材质节点该如何
学?
⽬录
【1.基础案例】:
【2.材质基础】:
【3.数学⼯具】:
【1】Desmos
【2】GeoGebra
【4.常⽤节点解读】:
⼀、将UV坐标系变成笛卡尔直⾓坐标系(锚点由左上⾓变换到中⼼)
⼆、圆形遮罩
三、线性遮罩
四、旋转图⽚
五、植被地形
六、后处理
七、UI播放视频
⼋、常⽤函数算法
九、做多边形
⼗、做特效
⼗⼀、If提取图⽚颜⾊变⾊
⼗⼆、做矩形
⼗三、材质属性
⼗四、其他快捷⽅式
这种问题不想再回答了。实战过程吃⼤西⽠,切勿上⼿就捡⼩芝⿇。SD->UE4 ; UE4 ->SD。尝试⽤UE来做SD的贴图,这个过程中就相当于是拼材质函数了,像做多边形、做遮罩等。
知乎回答的这个⽬录终于有了,希望⽂章⽬录也能尽快开发实现。
【1.基础案例】:
【2.材质基础】:taecg:零基础⼊门Unity Shader(⼀) (Absolute World Position节点对应Pixel/Fragment Shader;Vertex Normal 节点对应Vertex Shader)
凡尘旧事:混合模式(Blend Mode)(数学函数可视化 PS那⼀堆图层混合⽅式)
这⾥先把 雪球⼤佬:UE4常⽤材质算法(美术向) 部分常⽤节点加上注释解读⼀下。(回答是可以追更的)
【3.数学⼯具】:
有些算法较复杂, 可以借⽤数学图像来表达。(Desmos只有⼆维的)
⿏标左键双击图形或点编辑命令(字母名称、位置、指令)
空⽩处右键设置、显⽰⽹格、坐标系(笛卡尔/极坐标)
Calculator Suite - GeoGebra——⼆维,跟Desmos差不多。 (这⾥就不展⽰了)
另外瞎研究了个可以快速调⽤Shader节点的办法,有兴趣的话可以学习使⽤。
【4.常⽤节点解读】:将UV坐标系变成笛卡尔直⾓坐标系
圆形遮罩
线性遮罩
旋转图⽚
植被地形
后处理
UI播放视频
常⽤算法公式
做多边形
做特效
If提取图⽚颜⾊变⾊
做矩形
材质属性
...待续
⼀、将UV坐标系变成笛卡尔直⾓坐标系(锚点由左上⾓变换到中⼼)
通常⽤⼀个ConstantBiasScale就能做到。上⾯的先减去0.5,再乘以2
跟下⾯的先乘以2,再减去1的结果是⼀模⼀样的。
类似的这种变负为正或变正为负还有很多,像三维法线贴图(0.5,0.5,1 淡蓝⾊)、⼆维位移贴图(0.5,0.5 屎黄⾊)。还有DebugTimeSine
等。
Time相当于X轴上的坐标⼀样,然后0~1不断地变化。
⼆、圆形遮罩
这⾥有个坑啊,上图中说的Power2是不准确的,只有在基数为正的情况下才可以进⾏幂运算,也就是⿊⾊负数部分是不参与运算的。所以这⾥圆形遮罩不能⽤Power2来搞,⽽应该使⽤Multiply来乘,负负得正嘛,左右图案是轴对称,是⼀模⼀样的。
SphereMask也可以快速制作圆形遮罩。
三、线性遮罩
四、旋转图⽚
⽤ Custom Rotator就好了,想旋转多少度就旋转多少度。ue4⾥uv节点还有这样的骚操作,控制贴图在中⼼缩放?w ww.zhihu
【1】旋转90度
两个作⽤是⼀样的。Append的对⽴⾯接着TexCoord,Mask节点输出的是 单个Float。随着节点,可以变 float 2、3、4,只不过(RGBA)四个通道的值都是⼀样的。
BreakOutFloat2 材质函数 ⽆⾮是把它们整合了起来,省得打或复制很多次的Component Mask。
【2】顺时针逆时针匀速旋转。框选集合节点,搜索Customized UVs,把0更改为1或2或...
五、植被地形Landscape Coords,做地形材质
LayerBlend,A⼝为地形基础⾊,法线向上。
如果想在Landscape Mode刷材质的时候植被同时也附着上,⽽不是在Foliage Mode单个种植被,就需要下⾯两个节点了。(灵活性,你可以在你已经指定的区域内随意更换植株,不像Foliage那么定死了,要删除还得全部勾选Foliage Type再Erase)
名画杂草⾊ 可⽤材质球Landscape种满草 (如上 LandscapeGrass、Sample),之后再⽤Decal贴花贴到地形上,以将图⽚的颜⾊给到草上。
特定形状的地形笔刷也可⽤PS抠出来⼀个⿊⽩图,⿊透⽩不透。
六、后处理X Tesla:【UE4】 huanlan.zhihu
七、UI播放视频【UE4】如何在UI(Widget)播放视频z huanlan.zhihu
⼋、常⽤函数算法Ceil、Floor、Frac、Truncate 四⼤天王
SphereMask
Lerp
Sin、Arctan
Dot点乘、Cross叉乘
Distance求距离
Normalize归⼀化
Saturate饱和卡钳
【1】Ceil、Floor、Frac、Truncate四⼤天王Ceil(1.4)=2,Ceil(-1.4)=-1.0,向上取整
Floor(1.4)=1,Floor(-1.4)=-2.0,向下取整,跟Ceil是双胞胎。
Frac(1.4)=0.4,Frac(-1.4)=0.6,取⼩数,正数抹掉整数,负数抹整、绝对值、⽤1减。
Truncate(1.4)=1,Truncate(-1.4)=1,取整数。
拿图⽚的像素化举例,其实TexCoord节点的UTiling VTiling就是跟不断繁⽣(Multiply运算)⼀样,只不过没有暴露出输⼊接⼝,所以我们⼀般外边乘。
这⾥值都是正的,所以Floor和Truncate的作⽤结果⼀样,跟Ceil差不多,只不过颜⾊稍微偏移⼀点⽽已(向左向上⼀个单位);Frac取⼩数,即每张图⽚0~1的值保持不变,每个像素就像⼀个细胞⼀样,往⾥塞⼀张图⽚。
【2】SphereMaskSphereMask ,球形Mask,跟那个Ambient Sound声⾳组件 圈内、圈外、过渡区三部分⼀样。做圆也⽅便。
【3】Lerp ,如下,
,就记住:Lerp值取决于Alpha,⽽Alpha在B,这是ABsolute的话。⽩⾊取B,⿊⾊取A。【 拜(⽩)拜(B)、⿊讨A】贴图⽩⾊区域表⽰
Alpha值为1,lerp出来取B通道。A*(1-1)
贴图⿊⾊区域表⽰Alpha值为0,lerp出来取A通道。B*0
【4】Sin、Arctan三⾓函数 sin,周期为1,sin(0.25)=1、sin(0.5)=0。arctan取值范围在 -pi ~ pi 之间。
【5】Dot点乘、Cross叉乘dot点乘,cross叉乘。(咦,刚好C=C ross,D=D ot,巧不巧)
【6】Distance 求距离
可⽤ DistanceToNearestSurface 节点来计算到表⾯的最近距离,如可以测物体到地⾯的⾼度。
【7】Normalize 归⼀化
【8】Saturate饱和卡钳saturate desaturate 饱和去饱和saturate饱和,0~1值不变,⼩于0的负数升为0,⼤于1的正数降为1.(跟Clamp(Min=0)(Max=1)节点的作⽤是⼀模⼀样的)
desaturattion 去饱和,常⽤于图⽚处理。
{另外,快速调计算器可以Windows+R->/calc。
九、做多边形X Tesla:【UE4】UI | 材质球制作各种多边形z huanlan.zhihu
⼗、做特效全息旋转
模型转换
.....X Tesla:【UE4】特效(⼀)——制作Spiral粒⼦特效z huanlan.zhihu
空间相关节点:官⽅⽂档
【1】Actor Position,相当于模型的World Transform.Location,蓝图获取是GetActorLocation,材质获取就是Actor Position。
Object Position(跟Actor Position⼀样)、Orientation、Bounds为模型在xyz各轴上的坐标旋转⼤⼩,单位cm。
⽽体积云⽤到的ObjectLocalBounds,常赋给⽴⽅体模型,就是为了限定空间,不让云的效果出界。拿虚幻的⽴⽅体模型举例,它长宽⾼都是100cm,枢轴点在模型体⼼嘛。Local Bounds Minimum——最⼩范围 -50cm
Local Bounds Max——最⼤范围 50cm
Local Bounds Size——模型尺⼨100cm
Camera Position,⼀样,当前窗⼝相机的位置信息,如果再拖拽⼀个相机CtrlShiftP Pilot的话,就是当前这个相机的位置坐标。
【2】Absolute World Position,好似RayMarching,如果当前屏幕为4K ,共有3840*2160的像素块,那么就从当前视⼝(相机位置)往这 8294400 个⼩⽅格打射线,来返回当前⼆维屏幕像素块对应的模型在三维世界当中的坐标。
Local Position,就是相对于模型⾃⾝的坐标了,如果球体模型的枢轴点在球⼼,那么获取球体⾃⾝表⾯的各个位置就需要⽤到它了。(好⽐ Local:⾃⾝部位相对于个⼈的位置->World:个⼈在世界中的位置。)
常⽤Transform Position节点来变换位置。
【3】Vertex Normal,模型每个顶点的法线坐标。常⽤来做Scale变换效果。模型消失、闪现效果。如球变⼤变⼩。
蓝图还得Construction Script写,这个就相当于材质版本的Construction Scirpt,让模型运动、旋转、缩放等。
【4】材质模型⾃旋转。(蓝图构造脚本没有Find Look At Rotation,Tick⼜必须开启游戏后才能预览)所
以我们就直接写在材质⾥⾯了。
AlignMeshToTheCamera:C2、C3(1,0,0) (0,-1,0)(像御剑⼀样,⽔平相机)
C1、C2、C3(1,0,0) (0,0,-1) (0,1,0)(⾯⽚草树,垂直相机)
⽤蓝图Billboard或者是Niagara Sprite⾯⽚来进⾏图⽚贴图的⾃旋转最为简便。
⼗⼀、If提取图⽚颜⾊变⾊
⽤If节点来检测图⽚颜⾊,来更换指定颜⾊。
如果要单独平分⿊⽩⼆⾊的话,可以⽤Round,在UV坐标系下(左上00,右下11)进⾏四舍五⼊,即⾃动把上⾯If节点的B值设成
0.5,A>0.5升为1⽩⾊,A<0.5降为0⿊⾊。
特效是怎么做出来的⼗⼆、做矩形
仿SD的Shape节点。Vector Length,新⼿⼊门第三⼈称动画蓝图中也有,不过这个是在笛卡尔⼆维坐标系上计算点到原点的⽮量长度,也就是根号下Vector2(x,y)的平⽅。如BreakFloat出来的是2,那么V
ectorLength出来的是
Opacity给上1-x,让中间区域透明。
打勾TwoSided双⾯材质。
这样的话,也可以⽤材质做⼀个中空的⽴⽅体了。
⼗三、材质属性
如果材质特别复杂,可以使⽤这种分节点的⽅式,免去没有⽤的通道,让代码看起来更加整齐,不那么冗乱。分解材质属性Break(Get所有的)
Get(Get⾃定义的)
制作材质属性Make(Make所有的)
Set(Set⾃定义的)
混合材质属性Blend(跟Lerp⼀样)
⼗四、其他快捷⽅式
【1】常⽤的对齐⽅式:Q——让连线平整
Shift+WASD ——上下左右对齐节点
Alt+Shift+W/S——Middle中⼼⽔平线对齐,Center中⼼节点对齐。
【2】常⽤的节点操作⽅式:节点出⼝处右键选择可直接连线到另⼀个节点。
节点出⼝处Ctrl改线、Alt断线。
【3】常⽤的节点快捷键:(更多⾃定义:【UE4】⾼度⾃定义材质快捷键)常⽤节点——T——Texture Sample
U——Texture Coordinate
P——Panner
常⽤算法L——Lerp
I——If
E——Power
N——Normalize
B——Bump Offset
加减乘除D——Divide
M——Multiply
A——Add
O——1-x
右键Numberpad符号。
常⽤变量S——Scalar
V——Parameter(Float 4)

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。