public class ScratchImage : MonoBehaviour
{
/// <summary>
/// 蒙版贴图
/// </summary>
public Image maskImage;
public Material maskMaterial;
private Camera uiCamera;
private Vector2 _maskSize;
private Texture2D _rt;
private Color[] spritePixels;
public int brushRadius = 50;
private float percent = 0;
public float finishPercent = 0.95f;
private int clearNum = 0;
private int[] dirtyPoints;
private Vector2 SCALE_FACTOR;
private Vector2Int RTSize;
bool bClear = false;
private void Reset()
{
maskImage = GetComponent<Image>();
maskMaterial = maskImage.material;
}
public void SetParams(int brushRadius,float fpercent)
{
this.brushRadius = brushRadius;
this.finishPercent = fpercent;
}
private void Init()
{
if (uiCamera == null)
{
uiCamera = UIHelper.Instance.UICamera;
}
SCALE_FACTOR = maskImage.sprite.textureRect.size / maskImage.rectTransform.rect.size;
_maskSize = maskImage.rectTransform.rect.size;
//Debug.LogFormat("mask image size:{0}*{1}", maskSize.x, maskSize.y);
RTSize = new Vector2Int((int)maskImage.sprite.textureRect.size.x, (int)maskImage.sprite.textureRect.size.y
Unity UI擦除效果
于 2024-04-23 15:57:19 首次发布

最低0.47元/天 解锁文章
4800

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



