UE5 HLSL 详细学习笔记

这里的POSITION是变量Position的语义,告诉寄存器,此变量的保存位置,通常语义用于着色器的输入和输出,以冒号":"的方式进一步说明此变量,COLOR也类似

还有什么语义呢?

HLSL核心函数:

复制代码
float3 Pixels = Texture2DSample(Tex, TexSampler, myUV);
for(int i = 0; i < n; i++) {
    Pixels += Texture2DSample(Tex, TexSampler, myUV + float2(offset, 0));
    Pixels += Texture2DSample(Tex, TexSampler, myUV + float2(-offset, 0));
    Pixels += Texture2DSample(Tex, TexSampler, myUV + float2(0, offset));
    Pixels += Texture2DSample(Tex, TexSampler, myUV + float2(0, -offset));
    Pixels += Texture2DSample(Tex, TexSampler, myUV + float2(offset, -offset));
    Pixels += Texture2DSample(Tex, TexSampler, myUV + float2(-offset, offset));
    Pixels += Texture2DSample(Tex, TexSampler, myUV + float2(offset, offset));
    Pixels += Texture2DSample(Tex, TexSampler, myUV + float2(-offset, -offset));
}
Pixels /= 8 + 1;

return Pixels;

模糊

复制代码
float2 myUV = floor(uv * 20) / 20;
float3 Pixels = Texture2DSample(Tex, TexSampler, myUV);

return Pixels;

像素化

相关推荐
八年。。11 分钟前
WSL学习(三)——搭建Linux + C++ + SOME/IP 基础开发环境
开发语言·笔记·ubuntu
传奇开心果编程1 小时前
【Rust入门知识点学与练】第36课:所有权——移动、借用、Copy、切片
开发语言·学习·rust
传奇开心果编程1 小时前
【Rust入门知识点学与练】第35课:工具链与反馈环——先学会读编译器在说什么
开发语言·学习·rust
优化Henry2 小时前
学习笔记之关于MME不通问题归纳
运维·网络·学习·5g·信息与通信
M78佐菲10 小时前
51单片机学习笔记:ds18b20要点整理
linux·笔记·嵌入式硬件·学习·51单片机
高亦真10 小时前
今天是学习嵌入式的第37天
linux·学习·算法
蒸蒸yyyyzwd12 小时前
从面经中学到的三件事
c++·笔记
泡泡鱼(敲代码中)13 小时前
Python 字符串 str 完整学习笔记
python·学习
IT小白杨14 小时前
社媒多账号运营的环境隔离:一张图谱模型,解释清“为什么换IP还是被连坐“
经验分享·笔记·矩阵·指纹浏览器
kyrie_sakura14 小时前
python学习笔记15 -- Anaconda,Jupyter,numpy
python·学习·jupyter·numpy