公告板(Billboard)通常指永远面向摄像机的面片,游戏中许多技术都基于公告板,例如提示拾取图标、敌人血槽信息等,本文将使用UE5和材质节点制作一个公告板。
Gif效果:
网格效果:
1.思路
通过UE中的节点TransformVector可以将相机空间内容转换到世界空间,从而在相机空间绘制一个面片转换到世界空间输出即可。
2.实现
第一步
第一步,将UV转换为-1 - 1区间的归一化值。
第二步
第二步,因转换为-1 - 1数值的区间过小,UE又是以厘米为单位的引擎,因此需要乘以系数100将数值放大,然后将二维向量转化为三维向量(X,Y,0)丢给TransformVector节点从相机空间转换至世界空间。
第三步
最后因为UE顶点输出只能传入偏移信息,我们需要将新顶点减去旧的顶点变为偏移值进行输出。
3.测试
使用UE自带面片进行测试会发现结果不对,这是因为UE自带的面片是多四边面的面片,需要外部传入一个常规单个四边面面片进行测试。
最后传入外部面片网格以测试,结果正常了: