UE材质节点arctangent2解析

节省时间,网上偷的一张图看懂,看不懂再往下看吧 节省时间,网上偷的一张图看懂,看不懂再往下看吧 节省时间,网上偷的一张图看懂,看不懂再往下看吧

Arctangent2Arctangent 仅一字之差,但其用法却截然不同,我们好像学了三角函数,知道arcarctan 但是却好像不太能理解arctangent2是干嘛的??

下面简单回顾一下

1. 正切(Tan)

在三角函数中中,正切 (Tangent, tan)函数是直角三角形中对边与邻边的比值。

tan(x) 输入和输出都是一维的,它的输出在数值上跟直角三角形中的对边与邻边的长度之比相等。

t a n ( θ ) = 对边 邻边 {tan}(\theta) = \frac{\text{对边}}{\text{邻边}} tan(θ)=邻边对边

2. 反正切(Arctangent)

反正切 (Arctangent, atan)是正切函数的逆运算,用于从一个正切值计算出相应的角度值。输入通常是一个已知的比值(对边/邻边),而输出的是相应的角度值。输出和输入都是一维的

3. 反正切2(Arctangent2)

反正切2 (Arctangent2, atan2)是一种更高级的反正切运算。与 Arctangent 不同,Arctangent2 接受两个参数,分别代表三角形的对边和邻边。通过这种方式,Arctangent2 可以区分出点相对于原点的位置,从而计算出准确的角度值(包括象限信息)。

在材质编辑器中,Arctangent2 节点需要两个输入值(通常是 X 和 Y 分量),它会输出一个范围在 π 之间的角度。这种实现方式有效解决了 Arctangent 节点无法判断象限的缺陷。例如,给出坐标 (1, 1) 和 (1, -1),Arctangent 会得出相同的结果,但 Arctangent2 能够识别出它们分别位于第一和第四象限,因此能输出45度和-45度。

在UE材质编辑器中试验一下:

提示:

  • 想要像上图中这样预览窗口不是显示mesh而是整块屏幕作为一个四边形给你预览,只需要在材质编辑器左下角细节面板中,把材质域修改为后期处理 即可。

  • UE中,屏幕空间的UV坐标的U坐标跟笛卡尔坐标系方向一致,也就是向右为正,但是V坐标是向下为正,上面的材质中,我对采样到的UV坐标进行了重新映射,坐标范围变成(-1,1),原点位于屏幕正中间,并对V额外的反向了一下,因此传入arctangent2节点的坐标值跟笛卡尔坐标一致

相关推荐
proibell2 天前
3dsmax中使用python创建PBR材质并挂接贴图
python·3dsmax·材质
庸俗今天不摸鱼2 天前
Three.js 入门(基础材质、贴图、纹理、环境、遮蔽光、透明度、高光贴图)
javascript·材质·贴图
Seven_Ting4 天前
七、Three.jsPBR材质与纹理贴图
材质·贴图
ue星空4 天前
UE身体发光设置覆层材质
材质
gis分享者6 天前
学习threejs,使用ShaderMaterial自定义着色器材质
材质·threejs·着色器·shadermaterial
小美元13 天前
UE地编材质世界对齐纹理旋转
材质
JZMSYYQ14 天前
电磁铁的磁芯材质
功能测试·制造·材质·材料工程
zbailing14 天前
three.js之特殊材质效果
开发语言·javascript·材质
Seven_Ting14 天前
三、Three.js模型对象、材质
材质
MediaTea19 天前
Ae:常见的光照控件和材质控件
材质