首页/新闻资讯/正文详情

【Unity UGUI源码深度解析】 10|Mask与MaskableGraphic源码解析:Stencil如何实现嵌套UI遮罩

发布时间:2026/9/26 7:37:03 来源:云帆数科 栏目:资讯中心
【Unity UGUI源码深度解析】 10|Mask与MaskableGraphic源码解析:Stencil如何实现嵌套UI遮罩
《UGUI源码深度解析》第 10 篇 · 界面小组工作日志基准:Unity 2022.3.62f2c1 / 本地 UGUI 1.0.0。人物与项目情节为虚构;源码机制以本地实现为准。一、圆形头像,真的是把图片剪圆了吗?背包右上角需要一个圆形头像。阿澈找来圆形遮罩图,让头像成为它的子对象:“裁完以后,头像网格也变圆了吧?”通常没有。Mask 的主要工作不是重写子图形顶点,而是参与材质修改,通过 Stencil 控制像素能否通过测试。我们用一张纸打了个孔作比喻,然后立刻收回一点:GPU 并不真的拿纸覆盖画面。遮罩先向模板缓冲写入标记,后续图形按规则检查标记,只有符合条件的片段才能显示。二、两类组件,一写一读Mask 实现 IMaterialModifier,给自身 Graphic 提供写模板所需的材质。MaskableGraphic 也参与材质修改,让受遮罩影响的图形使用相应模板比较条件。Graphic.materialForRendering 会遍历材料修改器,所以调用 UpdateMaterial 时拿到的不一定是 Inspector 中原始 material。自定义 UI 若直接绕过这条链提交自己的材料,就可能失去遮罩支持。MaskUtilities 负责寻找排序边界和

相关推荐

CiLocks PHP内置服务器指南:php -S命令30秒搭建临时HTTP服务
CiLocks PHP内置服务器指南:php -S命令30秒搭建临时HTTP服务

CiLocks PHP内置服务器指南:php -S命令30秒搭建临时HTTP服务 【免费下载链接】CiLocks Crack Interface lockscreen, Metasploit and More Android/IOS Hacking 项目地址: https://gitcode.com/GitHub_Trending/ci/CiLocks CiLocks 是一款 Android/IOS 安全研… · 2026/9/26 7:37:03

408代码题模板模块化设计:把高频考点拆成固定积木,考场直接组装
408代码题模板模块化设计:把高频考点拆成固定积木,考场直接组装

考过408的人都知道,代码题这块最折磨人的不是"不会写",而是"明明会,考场上却写不完"。我当年二战的时候,最直观的差距感来自一道普普通通的链表题:第一年我在考场上从定义结构体开始现场推&#x… · 2026/9/26 7:37:03

NSGA-III在微电网多目标优化调度中的Matlab实现与调试经验
NSGA-III在微电网多目标优化调度中的Matlab实现与调试经验

做微电网多目标优化调度这块,最头疼的往往不是建模,而是怎么把一个带约束的多目标问题解得又快又稳。光伏、风电出力随机波动,负荷一天内来回跳,储能充放电要考虑寿命和收益,微燃机启停又受爬坡限制——目标之间相互打… · 2026/9/26 7:36:57

nRF54LC10A休眠电流实测:从50nA到整板低功耗设计
nRF54LC10A休眠电流实测:从50nA到整板低功耗设计

1. 这颗芯片到底在卷什么:从休眠电流到电池寿命的账 第一次看到“休眠电流不到 50 nA”这个数字,我的反应是——这基本等于把“待机耗电”这件事按在地上摩擦了。做过低功耗产品的人都知道,nA 级别的休眠电流不是随便标标的,它背后… · 2026/9/26 8:16:36

OpenWAM世界动作模型:七校联合开源,破解机器人sim-to-real难题
OpenWAM世界动作模型:七校联合开源,破解机器人sim-to-real难题

1. 这个「世界模拟器」到底在解决什么问题机器人圈子里有个老生常谈的尴尬:真机上跑一个抓取策略,调参调到怀疑人生,一天下来机械臂没动几次,日志倒是刷了几百兆。强化学习在仿真里能飞檐走壁,一上真机就变成「人工智障… · 2026/9/26 8:16:36

基于WiFi与RS485的园区有氧健身设备物联网监测系统设计与落地
基于WiFi与RS485的园区有氧健身设备物联网监测系统设计与落地

1. 项目缘起与整体设计思路1.1 这个项目到底在做什么科技园区里配几台有氧健身设备,跑步机、椭圆机、动感单车,这事儿不新鲜。但设备装完之后,使用率怎么样、有没有人用、设备是不是坏了、耗材什么时候该换,这些数据如果全靠人工去… · 2026/9/26 8:16:30

金融数据服务架构设计与工程实践:模块化分层、数据模型与实时推送
金融数据服务架构设计与工程实践:模块化分层、数据模型与实时推送

1. 金融数据服务项目的整体架构设计思路1.1 为什么选择模块化分层架构做金融数据服务这些年,我最大的体会就是:千万别把数据采集、清洗、存储、接口这四件事揉在一起写。早期我接手过一个项目,所有逻辑塞在一个脚本里,行情数据拉取… · 2026/9/26 8:16:30

AI Agent开发利器:BrowserSkill本地桥如何接管真实浏览器
AI Agent开发利器:BrowserSkill本地桥如何接管真实浏览器

刚接触 AI Agent 开发那阵子,最容易困惑的一件事就是:Agent 到底长什么样?很多人的第一反应是“Agent 就是调用大模型 API,让它说一段话”,后来发现还要接工具(Tool Use)、接记忆、接流程编排。… · 2026/9/26 8:16:30

Atlas 300V 24G推理加速卡部署YOLO全流程解析与踩坑指南
Atlas 300V 24G推理加速卡部署YOLO全流程解析与踩坑指南

手头正好在研究 Atlas 相关的东西,最近搜“atlas 部署 YOLO”的朋友明显变多了。我在实际项目里踩过不少 Atlas 系列的坑,尤其是 Atlas 300V 24G 这块卡,很多人一上来就问同一个问题:这玩意儿到底是不是运算加速卡?它能… · 2026/9/26 8:16:24

数据库课后习题答案别硬背:当测试用例集刷,效率翻倍
数据库课后习题答案别硬背:当测试用例集刷,效率翻倍

简介:万常选版《数据库原理与设计》课后习题答案资源,覆盖第2至6章及第9章,适合正在学习关系模型、数据库建模、关系数据理论与模式求精的本科生、自学者作为复习与自测材料。压缩包共7个文件,含3个doc参考答案、2个sql示例脚本、… · 2026/9/26 0:00:21

OpenClaw 替代品?Hermes Agent 踩坑实录:macOS 飞书接入 TaoToken 配置
OpenClaw 替代品?Hermes Agent 踩坑实录:macOS 飞书接入 TaoToken 配置

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/26 0:00:40

向下兼容与向上兼容:接口设计中的兼容性策略与工程实践
向下兼容与向上兼容:接口设计中的兼容性策略与工程实践

一次版本升级事故,是很多团队绕不过去的坎。线上环境里,服务端明明已经上线了新版接口,老的移动端还在照着旧文档传参数。请求一到网关,校验直接拒绝,用户操作失败,客服群炸了锅,开发群里开始互… · 2026/9/26 0:00:46

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码