【案例】距离限制模型透明

news2024/10/5 13:17:06

开发平台:Unity 2023
开发工具:Unity ShaderGraph

一、效果展示


在这里插入图片描述

二、路线图


在这里插入图片描述

三、案例分析


核心思路:计算算式:透明值 = 实际距离 / 最大距离 (实际距离 ≤ 最大距离)

3.1 说明 | 改变 Alpha 值

在 Shader 中,RGB颜色范围表现有 (0-1)/(0-255)两种值形式。在 ShaderGraph 中为(0-1)。

3.2 说明 | 获取模型与相机距离

在这里插入图片描述
ShaderGraph 提供

  • Postion(位置节点)标记材质应用的模型对象。
  • Camera(相机节点)映射所有相机类信息(包含 CameraURP CameraCinemachine.Camera


目标是计算相机与模型的世界距离。因此 Position.Space 项限定 World (世界空间)。
Distance (距离计算节点)计算 Vector 类型值。如图传入相机 Postion 与 模型 Positon。与程序中 Vector3.Distance() 一致。

效果表现中,实际不需要一直要求模型保持一定程度的透明化表现。增加了 MaxDistance / MinDistance 变量限制效果表现的距离。因此引入 Clamp(值域节点),表现与程序 Math.Clamp() 一致。

3.3 说明 | 计算 alpha 值

在这里插入图片描述
参考 核心思路 计算算式。ShaderGraph 提供常规计算节点,如

  • Subtract(减法计算节点)
  • Divide(除法计算节点)

同理,为控制透明度表现力,增加 MaxAlpha / MinAlpha 变量管理。当然增加 Color 变量管理材质颜色也是可以。

关于限制上使用 Lerp(插值节点)
  Lerp 本质上具有 Clamp 的性质,仅在结果上做出线性插值的补充,但最大范围值不会超越其透明表现。仍可以使用 Clamp(值域节点)作为最终输出。

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

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

相关文章

简易投影仪的制作

今天不做开发类的文章,来给大家整个活哈哈哈哈哈。由于前几天室友说看小屏幕的抖音太不舒服,比较累眼睛,所以我萌生出来一个制作投影仪的想法。于是查阅了资料最终完成以下的设计。 以下设计价格最高的是一部旧的可拆卸的智能手机 简易投影仪…

C++11新特性(基础)【2】

目录 1.范围for循环 2.智能指针 3.STL中一些变化 4.右值引用和移动语义 4.1 左值引用和右值引用 4.2 左值引用与右值引用比较 4.3 右值引用使用场景和意义 4.4 右值引用引用左值及其一些更深入的使用场景分析 4.5 完美转发 1.范围for循环 int main() {int array[10] { 1,2,3,4…

CSS | CSS中强大的margin负边距

css中的负边距(negative margin)是布局中的一个常用技巧,只要运用得合理常常会有意想不到的效果。很多特殊的css布局方法都依赖于负边距,所以掌握它的用法对于前端的同学来说,那是必须的。本文非常基础,老鸟可以略过。 一、负边距…

【宽搜】3. leetcode 515 在每个树行中找最大值

1 题目描述 题目链接:在每个树行中找最大值 2 题目解析 根据题目描述,是找出每一行中的最大值,这毋庸置疑是使用宽度优先遍历了。我在这篇文章中讲解了宽度优先遍历的模板,如果没有看的同学可以先去看一下。 这道题和模板的不…

基于微信小程序的调查问卷管理系统

作者:计算机学姐 开发技术:SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等,“文末源码”。 专栏推荐:前后端分离项目源码、SpringBoot项目源码、Vue项目源码、SSM项目源码、微信小程序源码 精品专栏:…

数据结构与算法(七)静态链表

目录 前言 一、静态链表的引入 二、线性表的静态链表存储结构 三、静态链表的插入操作 四、静态链表的删除操作 五、静态链表的优缺点总结 1、优点 2、缺点 3、小结 六、单链表小结——Tecent面试题 1、普通解法: 2、高级解法: 前言 静态链表…

基于CAN总线的TMS320F28335 Bootloader设计说明

1 设计目的 根据客户要求,开发一款基于CAN总线的TI公司TMS320F28335 DSP(数字信号处理器)bootloader,以方便应用程序的刷写。CAN设备采用周立功CAN卡(USBCAN-I、USBCAN-II、USBCAN-E-mini)。 2 专有信息 …

一篇文章吃透OA系统

一、OA系统是什么,都有什么功能? OA系统(Office Automation System)是办公自动化系统的简称,是一种利用计算机技术和网络通信技术,为企业和组织提供办公管理和协作支持的信息化系统。OA系统旨在提高办公效…

讯飞星火编排创建智能体学习(五):变量和文本拼接

引言 在讯飞星火编排创建智能体学习(四):网页读取-CSDN博客中,我介绍了如何用网页读取功能从网上搜索车次信息。其中,我使用用大模型节点从文本中提取车次并合成了所需要的URL,今天介绍一下如何用变量和文…

win7怎么禁用驱动强制数字签名?win7驱动程序强制数字签名禁用方法

在Windows 7 64位操作系统中,安装驱动程序时可能会遇到“数字签名”的问题,这是微软为了确保驱动程序的安全性和可靠性而引入的一项安全机制。本文将深入探讨这个问题,并提供有效的解决方案。 理解数字签名的概念是至关重要的。数字签名是一…

LabVIEW机床加工监控系统

随着制造业的快速发展,机床加工的效率与稳定性成为企业核心竞争力的关键。传统的机床监控方式存在效率低、无法远程监控的问题。为了解决这些问题,开发了一种基于LabVIEW的机床加工监控系统,通过实时监控机床状态,改进生产流程&am…

新闻推荐系统:Spring Boot的架构优势

4系统概要设计 4.1概述 本系统采用B/S结构(Browser/Server,浏览器/服务器结构)和基于Web服务两种模式,是一个适用于Internet环境下的模型结构。只要用户能连上Internet,便可以在任何时间、任何地点使用。系统工作原理图如图4-1所示: 图4-1系统工作原理…

详解JavaScript函数属性、方法和构造函数

函数属性、方法和构造函数 JS中,函数是值,对函数执行typeof运算会返回function,但是函数是JS中特殊的对象,也可以拥有属性和方法。 length属性 函数体里面,arguments.length表示传入函数的实参个数,而函…

(笔记)第三期书生·浦语大模型实战营(十一卷王场)–书生基础岛第2关---8G 显存玩转书生大模型 Demo

学员闯关手册:https://aicarrier.feishu.cn/wiki/ZcgkwqteZi9s4ZkYr0Gcayg1n1g?open_in_browsertrue 课程视频:https://www.bilibili.com/video/BV18x4y147SU/ 课程文档: https://github.com/InternLM/Tutorial/blob/camp3/docs/L1/Demo/rea…

数据结构与算法——Java实现 29.优先级队列

事缓则圆,人缓则安 —— 24.10.5 一、优先级队列 优先级队列 一端进,另一端出 按优先级出队 普通队列 一端进,另一端出 先进先出FIFO 二、无序数组实现 Type parameters…

IIOT工业物联网的标准与互操作性—SunIOT

【大家好,我是唐Sun,唐Sun的唐,唐Sun的Sun。一站式数智工厂解决方案服务商】 工业物联网(IIoT)正以惊人的速度重塑着工业领域的生产方式、运营模式和价值创造。然而,要实现工业物联网的广泛应用和充分发挥…

qt cmake自定义资源目录,手动加载资源(图片, qss文件)

1. 目录创建 因为使用非qtcreator或者自定义工程结构就没法自动加载图标,所以需要手动加载,这里使用vscode和自定义工程结构 vscode qt 环境搭建: https://blog.csdn.net/qq_51355375/article/details/140733495 qt 自定义工程结构参考(因使…

js chrome devtools 调试技巧

笔记 这一篇, 需要慢慢补充。 1. console 控制台 $0, 查看当前选中的元素getEventListener($0) 当前元素,包含的监听事件 老哥留步,支持一下。

高级I/O

目录 一、I/O概念 1.1、OS 如何得知外设中有数据可读取? 1.2、OS 如何处理从网卡中读取到的数据包? 二、五种I/O模型 2.1、阻塞I/O 2.2、非阻塞I/O 2.3、信号驱动 IO 2.4、IO 多路转接 2.5、异步 IO 三、高级I/O 3.1、同步通信 VS 异步通信 …

YOLO11改进|卷积篇|引入全维动态卷积ODConv

目录 一、【ODConv】全维动态卷积1.1【ODConv】卷积介绍1.2【ODConv】核心代码 二、添加【ODConv】卷积2.1STEP12.2STEP22.3STEP32.4STEP4 三、yaml文件与运行3.1yaml文件3.2运行成功截图 一、【ODConv】全维动态卷积 1.1【ODConv】卷积介绍 ODConv利用一种全新的多维注意力机…