Unity制作出《超级马里奥》的2D和3D混合效果

现在来做点别的东西。Nintendo Switch上刚推出的《超级马里奥》中,有一些关卡混合了2D和3D的画面,这种效果十分让人印象深刻。如何在Unity中实现这个效果呢?
0.gif
正常情况下,摄像机会直接渲染到你的屏幕。我们如何能让摄像机看到内容并显示在另一个对象上呢?你可能注意到摄像机有一个属性,叫目标纹理(Target Texture)。
QQ图片20191127134601.png
我们要在Asset文件夹里新建一个渲染纹理(Render Texture),添加到摄像机上。你可以在项目窗口依次点击Create -> Render Texture来新建渲染纹理。创建好后,你可以将它拖到摄像机上的Target Texture属性中。摄像机这时会将所有对象都渲染到这个纹理上。如果现在进入运行模式,游戏画面将呈现为一片漆黑,因为目前没有激活的摄像机渲染到屏幕上。

现在,我们要加入一个新摄像机到场景中,摄像机的Projection属性为Perspective。在摄像机前添加一个新的3D对象,本例中,我们添加的是圆柱体。然后创建新材质,其Shader属性设为Unlit/Texture,再将刚刚创建的渲染纹理拖到这个材质上的Main Texture部分。

得到的效果如下图。
0 (1).gif
这样一来,我们就实现了类似《超级马里奥》中的2D和3D混合效果,是不是很简单!

资源下载

项目《超级马里奥》下载地址:

https://pan.baidu.com/s/1f3aoPLFr2vPk_ioaN1EyKQ

unity

已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页