案例1
导入资源和基本配置
MonsterWorldAssets.zip
- 创建全黑场景就行
- 导入的资源 Texture很糊,右键 Sprite Action -> Apply Paper 2D Actions

打开后点击小齿轮,仅显示修改的属性,可以查看哪些设置被修改了
- 创建Sprite

右键Sprite Action -> Create Sprite
- 对于GroundTiles 右键创建 Tile Set (这里省略右键 Sprite Action里面找二级选项,后面都省略)
创建后设置一下合适的tile size

- 碰撞

- 创建Tile Map

对于刚刚的tile set 创建 tile map

填充,擦除,绘制。注意底图的大小和单个块大小的设置

然后就可以拖进场景,点击运行
也可以X旋转 270 这样就是一个不错的俯视角


避免地图块之间的裂缝,选择tile set 右键 condition tile sheet texture
花和角色相关的配置

下面我们来处理这朵花,我们前面为他创建了一个 sprite,但是可能是没用的


这次我们使用图中的设置选择网格还要切割的宽度,这样我们获得到了两个失败,前面我们直接右键创建,可能是用的默认设置。
选中这两个创建出来的sprite。右键创建 flip book。然后打开

打开后根据个人喜好调制每帧播放的次数,这样你就可以看到一个动画

我们直接把它拖到场景中,它起作用了,并且在播放动画

对于角色我们按照上面的流程自己计算,填写一下框高。

我们可以基于图片四个一组创建对应的动画序列。
分别做良好的命名,这样我们就获得了四个方向的动画,每个动画包含多个图片

项目相关的设置
另一份文档
创建角色类
创建 Paper Character

我们让他角度朝上,选中flipbook。这时候发现有点小。调整scale会导致像素变糊,所以
修改缩放因子为0.2,大概是5倍


pixels per unit
UE 的定位是里面,16像素,16厘米在游戏里面是很小的。所以需要缩放。
同样所有的sprite都需要设置一下。
然后地图块太小了。



角色类,摄像机,flip book
然后创建game mode 和 default pawn 很熟练了不用记了吧


另外,player star 并不能和这些东西产生碰撞,不然就会掉出屏幕
但是角色这样子是掉下去的,所以我们设置一下正交相机

宽度自己看着办,我这里设置了一下1000

另外弹簧臂的这个功能关掉。

输入

做一些输入设置,ok了。就是运动有点滑滑的

更新运动方向

核心就是设置filpbook,其他逻辑都是正常写
重新处理碰撞

删除碰撞,点击上方 Refresh Maps

然后我们加一个plane就会获得这种碰撞

多高的东西?角色能直接走

因为这种树实际上是一个长成这样的碰撞盒
同样的,你也可以在sprite中设置这个碰撞


明显变高了
Layer


修改坐标轴的位置,我们要做的是角色能走到树的背面的一种效果

把角色和树的判断和都改成只有底下一点点。

/Script/Engine.MaterialInstanceConstant'/Paper2D/TranslucentUnlitSpriteMaterial.TranslucentUnlitSpriteMaterial'
我们对所有sprite使用这个半透材质,别忘了角色蓝图的

半透排序,根据Y的负方向。

捡起宝箱
常规的box collision 略