Unity遮罩实现汽车后视镜(附效果图)

时间:2024-04-05 13:29:59

话不多说,先上效果图:

Unity遮罩实现汽车后视镜(附效果图)

Unity遮罩实现汽车后视镜(附效果图)

Unity遮罩实现汽车后视镜(附效果图)

 

Unity遮罩实现汽车后视镜(附效果图)

 

最近项目有用到Unity实现汽车后视镜功能,网上找了很多例子(比如这篇文章),原理确实如此,但只是在平面上实现,我想改变平面改成汽车后视镜形状,这就出现了问题,镜子效果变扭曲(我想是因为相机投射是矩形,如果你改变平面形状,那么投射的点位置也为会改变从而扭曲)如图所示。

Unity遮罩实现汽车后视镜(附效果图)

所以考虑另外方法,用遮罩来实现。通过相机投射到一平面上,再该平面前面加上汽车后视镜形状的png,再通过shader设置就能达到指定形状的投影。如图所示。

Unity遮罩实现汽车后视镜(附效果图)

如果你有和我一样的需求,可以去这里链接 (提取码:ie0i )下载所需材料,只需把png换成自己的后视镜形状就行。最后附上左后视镜的工程截图(其他后视镜换成相应的材料即可)。如果对你有帮助,帮我赞一个,谢谢。

Unity遮罩实现汽车后视镜(附效果图)

Unity遮罩实现汽车后视镜(附效果图)

Unity遮罩实现汽车后视镜(附效果图)

核心就是这个和CarMirror Shader脚本:

Unity遮罩实现汽车后视镜(附效果图)