(教程笔记)用2D素材实现3D效果!(扒)

(教程笔记)用2D素材实现3D效果!(扒)

前言

好久没写教程笔记了。 不知道大家有没有错过教程呢?

温馨提示:所有内容纯属个人研究。 如果你要上线项目2d游戏ui教程,请自行评估~哦

最近逛论坛音乐,看到一个朋友想要实现如下的透视效果。

2d游戏ui教程_最简单易学的2d游戏引擎_2d游戏玩法

预期结果

然后我就搜(捡)到了这个游戏的资料,都是2D的图片。

最简单易学的2d游戏引擎_2d游戏ui教程_2d游戏玩法

图片素材

我可以想到两种方法来实现这一点:

纯2D实现:对图片的每个顶点进行投影变换,计算每个顶点在2D屏幕中的坐标。

在3D中实现:调整相机参数,将图片放置在Quad(正方形)上,并布置3D场景

综合考虑,用3D来实现还是比较方便的,所以我们就行动起来吧!

完成

这次我们主要实现两点:

透视场景效果

金币动画

设置场景

创建新场景后游戏动态,在场景中添加4个四边形(Quad),并通过旋转、平移和缩放围绕长方体的四个边。

2d游戏ui教程_2d游戏玩法_最简单易学的2d游戏引擎

四个边围成四个正方形

然后创建材质(墙/地板/天花板),使用builtin-unlit.effect(无光),选择对应的纹理,然后将材质添加到对应的方块中。

最简单易学的2d游戏引擎_2d游戏玩法_2d游戏ui教程

创建素材

一切创建完成后,看起来像这样。

最简单易学的2d游戏引擎_2d游戏玩法_2d游戏ui教程

洞穴效应

洞深处应该有一个渐变的黑色阴影。 将资源类型更改为 sprite-frame 并将其添加到场景的 UI 层。

2d游戏ui教程_最简单易学的2d游戏引擎_2d游戏玩法

修改资源类型

然后调整相机的参数,使渐变黑色阴影位于中间,并运行预览。 结果如下。

最简单易学的2d游戏引擎_2d游戏玩法_2d游戏ui教程

洞穴效果+阴影蒙版帧动画

金币素材是2D帧动画。 为了实现3D透视效果,这里也使用了正方形。

原始素材有点拥挤,所以我们稍微处理一下,让每一帧的图像位置均匀。

这里我使用shoebox将图像分割,然后放入PS中调整位置。 导出图片的长和宽需要为2的n次方。

对于程序员来说更好的方法是编写一个脚本来分割图像,然后重新生成图像(或者请美术爸爸来生成图像)

2d游戏ui教程_2d游戏玩法_最简单易学的2d游戏引擎

金币图像处理

同样,创建金币材质,选择builtin-unlit.effect,选择透明通道(因为这个图像需要透明度),修改tillingOffset(纹理缩放偏移)参数。

2d游戏ui教程_最简单易学的2d游戏引擎_2d游戏玩法

创建金币材质

创建一个正方形,选择金币材质,添加动画,修改tillingOffset中的偏移参数。

2d游戏ui教程_2d游戏玩法_最简单易学的2d游戏引擎

创建金币动画1

然后将动画流程调整为Const,就可以看到初步的效果了。

2d游戏玩法_最简单易学的2d游戏引擎_2d游戏ui教程

创造金币动画2

最后在场景中多放几个金币2d游戏ui教程,在墙上加一些壁纸~

2d游戏玩法_2d游戏ui教程_最简单易学的2d游戏引擎

文章来源:http://mp.weixin.qq.com/s?src=11×tamp=1705363392&ver=5021&signature=Lz6dTHIaT3AX2Z8W5iwOewAp0nCP89vmkfA6R-vRr458XD-CPW4JfTYIWUxL2rcSOvPVavMB1Tz*2Ll9QHoCRVTMCXvpLY80Mhg0CqIWUYKnCtkOIG*mGpf-FTGgLOsC&new=1