Unity中UGUI在Mask剪裁粒子特效的实现

在Unity使用Mask是剪裁不了粒子特效的,之前有想过RenderTexture来实现,不过使用RenderTexture不适合用于很多个特效,因为RenderTexture依赖Camera的照射,如果在背包中每种道具都有不同的特效,那使用RenderTexture则需要不同特效都用一个Camera。明显是不合适的。

先看下剪裁不了的显示。

解决办法在粒子特效的shader中添加剪裁的代码。可以参考官网的说明:https://docs.unity3d.com/cn/2019.4/Manual/SL-Stencil.html

添加下列代码:

Shader "UI/Default"
{Properties{_StencilComp ("Stencil Comparison", Float) = 8_Stencil ("Stencil ID", Float) = 0_StencilOp ("Stencil Operation", Float) = 0_StencilWriteMask ("Stencil Write Mask", Float) = 255_StencilReadMask ("Stencil Read Mask", Float) = 255_ColorMask ("Color Mask", Float) = 15}SubShader{// ...Stencil{Ref [_Stencil]Comp [_StencilComp]Pass [_StencilOp]ReadMask [_StencilReadMask]WriteMask [_StencilWriteMask]}// ...}
}

展示一下剪裁后效果:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/643374.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Vue3+Vite+Cesium项目开发心得(实时更新)

之前就想写的,纯属个人习惯总结,欢迎订正! Cesium相关 1. Cesium包的引入,我还是建议直接放到public下面,html里直接加script标签的形式; 2. Vue的响应式不要挂接任何Cesium创建的任何对象,尤…

Armv8-M的TrustZone技术之SAU寄存器总结

每个SAU寄存器是32位宽。下表显示了SAU寄存器概要。 5.1 SAU_CTRL register SAU_CTRL寄存器的特征如下图和表所示: 5.2 SAU_TYPE register 5.3 SAU_RNR register 5.4 SAU_RBAR register 5.5 SAU_RLAR register 5.6 SAU区域配置 当SAU启用时,未由已启用…

【技术】SpringBoot 接口怎么加密解密

1. 介绍 在我们日常的Java开发中,免不了和其他系统的业务交互,或者微服务之间的接口调用 如果我们想保证数据传输的安全,对接口出参加密,入参解密。 但是不想写重复代码,我们可以提供一个通用starter,提…

服务器部署模型访问前端页面

如果你在学校服务器上部署了一个模型,此时他给了你一个url:0.0.0.0:2222,这个时候该如何访问呢? 其实很简单,但是自己弄错了,所以弄了很久。记录一下,自用。 以下ip地址是假的,仅供记录一下。…

go 依赖注入设计与实现

在现代的 web 框架里面,基本都有实现了依赖注入的功能,可以让我们很方便地对应用的依赖进行管理,同时免去在各个地方 new 对象的麻烦。比如 Laravel 里面的 Application,又或者 Java 的 Spring 框架也自带依赖注入功能。 今天我们…

C++高精度问题

高精度前言 C中int不能超过2^31-1,最长的long long也不能超过2^63-1,所以我们在题目中如果碰到了很长很长的数,并且需要进行大数运算时,就需要高精度存储。 高精度总体思路 由于int和long long的限制,我们要想存放很长的数就需…

Power Apps 向Power Automate传一个数组参数

Power Apps传Power Automate数组参数 背景Power Apps传参方法画布开发我们现在power apps中设置一个集合**ArrCollect**准备一个按钮 Power Automate接收总结画布流 背景 我们通常会从Power Apps界面传递参数给Flow中,但是很多时候仅仅是一个字符串类型的已经不适用…

二进制计算

二进制的引入 十进制规则:满10进1,由数字0到9组成。 而所谓十六进制,八进制,二进制的规则也是类似。 这里为了区分十六进制和八进制,十六进制前面会加上0x,八进制前面会加个0作为区分 而二进制的规则类似于十进制&…

openssl3.2/test/certs - 025 - client intermediate ca: cca-cert

文章目录 openssl3.2/test/certs - 025 - client intermediate ca: cca-cert概述笔记END openssl3.2/test/certs - 025 - client intermediate ca: cca-cert 概述 openssl3.2 - 官方demo学习 - test - certs 笔记 // \file my_openssl_linux_log_doc_025.txt // \note open…

PLC协议转BACnet网关BA107

随着通讯技术和控制技术的发展,为了实现楼宇的高效、智能化管理,集中监控管理已成为楼宇智能管理发展的必然趋势。在此背景下,高性能的楼宇暖通数据传输解决方案——协议转换网关应运而生,广泛应用于楼宇自控和暖通空调系统应用中…

精品基于Uniapp+springboot智能家居环境检测App

《[含文档PPT源码等]精品基于Uniappspringboot智能家居环境检测App》该项目含有源码、文档、PPT、配套开发软件、软件安装教程、项目发布教程、包运行成功! 软件开发环境及开发工具: 开发语言:Java 后台框架:springboot、ssm …

HTTP3/QUIC 性能测试与配套组件

背景 最近一年很多关于QUIC的文章层出,但是发现一个问题,这些文章都是在介绍QUIC或HTTP3是怎样的一个东西,以及它的优点和机制,将它夸的近乎上天了。然而有心的人估计会亲手做一些测试,就会发现这个被捧上天的东西性能…

宝塔+nextcloud+docker+Onlyoffice 全开启https

折腾了我三天的经验分享 1.宝塔创建网站 nextcloud版本为28.0.1 php8.2 ,导入nextcloud绑定域名对应的证书 ,不用创建mysql 因为nextcloud 要求是mariadb:10.7 宝塔里没有,就用docker安装一个 端口设置为3307 将数据库文件映射出来/ww…

Leetcode刷题(二十八)

找出字符串中第一个匹配项的下标(Easy) 给你两个字符串 haystack 和 needle ,请你在 haystack 字符串中找出 needle 字符串的第一个匹配项的下标(下标从 0 开始)。如果 needle 不是 haystack 的一部分,则返…

基于springboot+vue的“衣依”服装销售平台系统(前后端分离)

博主主页:猫头鹰源码 博主简介:Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战 主要内容:毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询 文末联系获取 研究背景…

maven详细介绍

1.简介 Maven是一个基于项目对象模型(POM)的软件项目管理工具,主要用于Java项目的构建、依赖管理和项目信息管理。通过一小段描述信息,Maven能够管理项目的构建、报告和文档等各个环节。它提供了一种标准化的构建方式&#xff0c…

VSCode Debug 参数设置说明

如果想在vscode中debug一个项目,比如python3 run.py --args 这个时候你需要着重关注几个参数,参数用两个双引号分开,不能有空格。 cwd :运行代码的基础目录env: 设置环境变量 PYTHONPATH: 设置项目用到的模块搜索路径&#xff…

361. 观光奶牛(小数二分,spfa判断正环,01分数规划)

361. 观光奶牛 - AcWing题库 给定一张 L 个点、P 条边的有向图,每个点都有一个权值 f[i],每条边都有一个权值 t[i]。 求图中的一个环,使“环上各点的权值之和”除以“环上各边的权值之和”最大。 输出这个最大值。 注意:数据保…

SpringBoot 整合RabbitMQ 之延迟队列实验

在Spring Boot中整合RabbitMQ并实现延迟队列的功能&#xff0c;可以按照以下步骤进行&#xff1a; 添加依赖&#xff1a;在pom.xml文件中添加RabbitMQ和Spring AMQP相关的依赖。 <dependency><groupId>org.springframework.boot</groupId><artifactId&g…

在PyCharm中安装GitHub Copilot插件,login之后报出如下错误:

Sign in failed. Reason: Request signInInitiate failed with message: connect ECONNABORTED 20.205.243.166:443, request id: 7, error code: -32603 前提&#xff1a; 设置网址&#xff1a;https://github.com/settings/copilot&#xff0c;已设置为允许 或者&#xff1…