UE4衣服材质换色
来源:互联网 发布:信用卡网络怎么套现 编辑:程序博客网 时间:2024/05/16 00:25
游戏中衣服换色是个很普遍的需求, 除直接替换贴图外, 还有使用程序参数来控制颜色的做法.
原理就是使用一张灰白Mask图, 乘一个颜色, 替换原Diffuse贴图上的颜色
效果如下:
这种制作方式有两个缺点: 一是换色区域只能换一个固定颜色, 只有明亮不一样; 二是如果让玩家来自定义颜色, 总会出现一些亮瞎眼的配色, 影响整个游戏的画面美感.
那有没有一种方法可以同时更换多种颜色, 并且保证颜色搭配不要反差太大呢? 之前在天涯明月刀中看到过类似的实现, 后来一想就明白了, 把颜色转换到HSV空间就可以:
看上面这个色环, 每个颜色的色调其实可以定义成一个角度, 如果把想换色调的话, 其实只需要旋转这个色环, 相当于我们对整张图定义了一个调节板(或者叫颜色查找表), 每个颜色加个角度偏移就实现色调的调整, 同时又能保证颜色的亮度不会发生变化, 与之搭配的颜色也能同步调节到一个合适的色调上.
参考RGB to HSV to RGB – for Shaders, 可以实现RGB与HSV分量的互换转换, 那思路就是在转换到HSV空间后, 针对H加一个偏移值, 然后再转换回RGB空间, 在UE4中可以使用Custom Shader Node来实现:
定义成一个Material Function后就可以在每个材质中进行复用了:
最终效果如下:
实际使用时仍然可以搭配mask贴图来控制换色的区域, 但是免去了灰度图的制作和调色板的控制, 开放给玩家随意调节也没有大的风险, 颜色的搭配总是能控制在一个比较和谐的范围内.
阅读全文
0 0
- UE4衣服材质换色
- UE4材质
- UE4材质初探
- UE4材质初探
- UE4材质节点概述
- UE4材质笔记
- UE4成批处理透明材质
- UE4材质引脚说明
- UE4材质节点
- UE4--材质知识1
- UE4材质-流动变色
- UE4材质初探
- UE4材质渲染模式
- UE4材质编辑器
- UE4材质球
- ue4材质常用节点
- 【UE4 shader】结冰材质
- UE4材质初探(转载)
- 数据库小记
- linux关于端口的查询命令。
- 类的大小
- 高通和商汤科技宣布合作,骁龙芯片将全面AI化
- 嵌入式linux面试题解析(二)——C语言部分一
- UE4衣服材质换色
- 决策树之ID3算法
- create-react-app + antd-mobile配置
- 给定一组不同的整数,S返回所有可能的子集。
- numpy_zeros()
- Tokenizer和Split
- 高性能负载均衡设计与实现
- JMeter学习—006—JMeter 命令行(非GUI模式)详解(一)-分布式(远程)执行脚本及查看指定结果、日志
- oracle中存储函数与存储过程的区别