游戏物体拖曳实现笔记
最近在实现国外 Brackey 大佬的 Crafty by Brackeys 合成小游戏,核心操作就是鼠标拖曳。所以写个笔记来记录一下实现过程。
前期准备
实现项目,我们需要:
- 至少一个可拖曳物品
- 要有 Image 组件(Source Image 可以为 None)
- 一个自定义类,继承
IBeginDragHandler, IDragHandler, IEndDragHandler
接口
- 至少两个物品放置点
- 要有 Image 组件(Source Image 可以为 None)
- 一个自定义类,继承
IDropHandler
接口
图示,上面靠左侧的两个小方框和下边的大方框是物品放置点,纯白色的图块是自定义类。
对于要拖动的物品
设置一个拖曳类,继承 IBeginDragHandler, IDragHandler, IEndDragHandler
三个接口。然后实现三个接口的函数
可拖动物品的属性
public static GameObject ObjBeingDragged;
public Transform draggableArea;
Vector3 _startPosition;
Tra