1.在Canvas下面创建一个Image作为画布
2.给画布添加Collider2D,使用碰撞器检测画笔的进出
3.创建一个空物体,挂上LineRenderer组件作为画笔
画笔脚本
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
[RequireComponent(typeof(LineRenderer))]
public class DrawPen : MonoBehaviour
{
public Camera uiCamera;
private LineRenderer lineRenderer;
private DrawCanvas drawCanvas;
private bool m_IsDrawing = false;
private int m_index = 0;
private float minX = 0;
private float maxX = 0;
private float minY = 0;
private float maxY = 0;
public bool IsDrawing {
get => m_IsDrawing; }
private Vector3 MousePosition
{
get
{
var pos = Input.mousePosition;
pos.x = Mathf.Clamp(pos.x, minX, maxX);
pos.y = Mathf.Clamp(pos.y, minY, maxY);
return pos;
}
}
private bool MouseIsInCanvasNow