unity图片指定任意不规则区域显示
生活随笔
收集整理的這篇文章主要介紹了
unity图片指定任意不规则区域显示
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;//實(shí)現(xiàn)效果:圖片指定任意不規(guī)則區(qū)域顯示
//如何實(shí)現(xiàn)芒星圖或者戰(zhàn)力圖
//先畫出顯示范圍,然后以此為遮罩顯示需要顯示的部分//延申:圖片指定不規(guī)則區(qū)域透明
//逆向思維 不規(guī)則區(qū)域透明其實(shí)就是不規(guī)則區(qū)域顯示
//先畫出顯示范圍,然后以此為遮罩顯示需要顯示的部分
public class Ads1 : Graphic
{public RectTransform r0;//中心點(diǎn)public RectTransform r1;//可調(diào)節(jié)點(diǎn)public RectTransform r2;//可調(diào)節(jié)點(diǎn)public RectTransform r3;//可調(diào)節(jié)點(diǎn)public RectTransform r4;//可調(diào)節(jié)點(diǎn)public RectTransform r5;//可調(diào)節(jié)點(diǎn)protected override void OnPopulateMesh(VertexHelper vh){if (r1){vh.Clear();//可任意添加頂點(diǎn)vh.AddVert(r0.anchoredPosition, new Color(1,1,1,1/255f), Vector2.zero);vh.AddVert(r1.anchoredPosition, new Color(1, 0, 1, 1 / 255f), Vector2.zero);vh.AddVert(r2.anchoredPosition, new Color(0, 1, 1, 1 / 255f), Vector2.zero);vh.AddVert(r3.anchoredPosition, new Color(1, 1, 1, 1 / 255f), Vector2.zero);vh.AddVert(r4.anchoredPosition, new Color(1, 1, 0, 1 / 255f), Vector2.zero);vh.AddVert(r5.anchoredPosition, new Color(0, 0, 1, 1 / 255f), Vector2.zero);//可任意繪制不規(guī)則區(qū)域vh.AddTriangle(0, 1, 2);vh.AddTriangle(0, 2, 3);vh.AddTriangle(0, 3, 4);vh.AddTriangle(0, 4, 5);vh.AddTriangle(0, 5, 1);}}private void Update(){SetAllDirty();}
}
總結(jié)
以上是生活随笔為你收集整理的unity图片指定任意不规则区域显示的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: (附源码)计算机毕业设计SSM加油站管理
- 下一篇: 投资黄金,当然选贸易场行员平台真宝金业,