脚本需要挂载在相机上,材质球选择默认Sprites-Default.
/// <summary>
/// 鼠标框选屏幕选中物体
/// </summary>
public class RectRender : MonoBehaviour
{
private bool onDrawingRect;//是否正在画框(即鼠标左键处于按住的状态)
private Vector3 startPoint;//框的起始点,即按下鼠标左键时指针的位置
private Vector3 currentPoint;//在拖移过程中,玩家鼠标指针所在的实时位置
private Vector3 endPoint;//框的终止点,即放开鼠标左键时指针的位置
private Selector selector;
void Update()
{
//玩家按下鼠标左键,此时进入画框状态,并确定框的起始点
if (Input.GetKeyDown(KeyCode.Mouse0))
{
onDrawingRect = true;
startPoint = Input.mousePosition;
Debug.Log("开始画框,起点:"+ startPoint);
}
//在鼠标左键未放开时,实时记录鼠标指针的位置
if (onDrawingRect)
{
currentPoint = Input.mousePosition;
}
//玩家放开鼠标左键,说明框画完,确定框的终止点,退出画框状态
if (Input.GetKeyUp(KeyCode.Mouse0))
{

这篇博客介绍了如何使用Unity中的RectRender脚本,通过鼠标操作在相机视图中绘制矩形,选定范围后选择并打印指定标签的游戏物体。它涉及了键盘监听、屏幕坐标转换和GL渲染技术。
最低0.47元/天 解锁文章
668

被折叠的 条评论
为什么被折叠?



