当前位置: 首页 > news >正文

Unity Shader当用户靠近的时候会出现吃鸡一样的光墙

效果图片
在这里插入图片描述
靠近墙壁

在这里插入图片描述
远离墙壁
材质球的设置

在这里插入图片描述

两张图片
在这里插入图片描述

在这里插入图片描述

使用方式
把这个脚本放到墙上,将player赋值给"_player",然后运行,用户靠近就会根据距离显示光墙。

using UnityEngine;public class NewBehaviourScript : MonoBehaviour
{private Material _mat;public GameObject _player;private void Start(){_mat = gameObject.GetComponent<MeshRenderer>().materials[0];Debug.Log(_player.transform.position);}private void Update(){_mat.SetVector("_PlayerPos", _player.transform.position);}
}

shader代码

Shader "Unlit/NewUnlitShader"
{Properties{_MainTex ("Texture", 2D) = "white" {}
_MulTex ("MulTex",2D)="White" {}_Color ("Color",Vector)=(1,1,1,0)_PlayerPos("PlayerPos",Vector)=(1,1,1,0)_EdgeRange("EdgeRange",Vector)=(2,6,0,0)
_uvSpeed("uvSpeed",vector)=(1,0,0,0)}SubShader{Tags { "RenderType"="Transparent" "Queue"="Transparent" }Blend  SrcAlpha OneMinusSrcAlphaPass{CGPROGRAM#pragma vertex vert#pragma fragment frag#include "UnityCG.cginc"struct appdata{float4 vertex : POSITION;float2 uv : TEXCOORD0;float2 uv2:TEXCOORD2;};struct v2f{float2 uv : TEXCOORD0;
float2 uv2:TEXCOORD2;float4 vertex : SV_POSITION;float4 vertexWorldPos : TEXCOORD1;};sampler2D _MainTex;sampler2D _MulTex;float4 _MainTex_ST;float4 _MulTex_ST;float4 _PlayerPos;float4 _EdgeRange;
float4 _uvSpeed;
float4 _Color;v2f vert (appdata v){v2f o;o.vertex = UnityObjectToClipPos(v.vertex);o.uv = TRANSFORM_TEX(v.uv, _MainTex);o.uv2 = TRANSFORM_TEX(v.uv2, _MulTex);
o.uv2+=_Time.x*_uvSpeed;o.vertexWorldPos= mul(unity_ObjectToWorld,v.vertex);return o;}fixed4 frag (v2f i) : SV_Target{
float dis=abs(distance(i.vertexWorldPos,_PlayerPos));
float4 tex=tex2D(_MainTex,i.uv);
float4 tex2=tex2D(_MulTex,i.uv2);
float4 color1=_Color;tex.a*= 1 - smoothstep(_EdgeRange.x,_EdgeRange.y,dis);fixed4 col = tex2D(_MainTex, i.uv);return tex*color1*tex2;}ENDCG}}
}

教程URL


相关文章:

Unity Shader当用户靠近的时候会出现吃鸡一样的光墙

效果图片 靠近墙壁 远离墙壁 材质球的设置 两张图片 使用方式 把这个脚本放到墙上&#xff0c;将player赋值给"_player"&#xff0c;然后运行&#xff0c;用户靠近就会根据距离显示光墙。 using UnityEngine;public class NewBehaviourScript : MonoBehaviour {pr…...

Xcode iOS app启用文件共享

在info.plist中添加如下两个配置 Supports opening documents in place Application supports iTunes file sharing 结果都为YES&#xff0c;如下图所示&#xff1a; 然后&#xff0c;iOS设备查看&#xff0c;文件->我的iPhone列表中有一个和你工程名相同的文件夹出现&…...

STM32H750之FreeRTOS学习--------(二)任务的创建和删除

FreeRTOS 二、任务的创建和删除 任务创建 动态方式创建任务 BaseType_t xTaskCreate ( TaskFunction_t pxTaskCode, /* 指向任务函数的指针 */ const char * const pcName, /* 任务名字&#xff0c;最大长度configMAX_TASK_NAME_LEN */const configSTACK_…...

Kafka - 3.x Producer 生产者最佳实践

文章目录 生产经验_生产者提高吞吐量核心参数Code 生产经验_数据可靠性消息的发送流程ACK应答机制ack应答级别应答机制 小结Code 生产经验_数据去重数据传递语义幂等性幂等性原理开启幂等性配置&#xff08;默认开启&#xff09; 生产者事务kafka事务原理事务代码流程 生产经验…...

对于多分类问题,使用深度学习(Keras)进行迁移学习提升性能

本文是仿照前面的文章,使用Keras迁移学习提升性能,原文是针对二分类问题,使用迁移学习的方式来提升准确率,本文用迁移学习的方式来提升多分类问题的准确率。 同时,在前面的文章中,使用普通的小型3层卷积网络+2层全连接层实现了多分类的85%左右的准确率, 此处将用迁移学…...

Python----break关键字对while...else结构的影响

案例&#xff1a; 女朋友生气&#xff0c;要求道歉5遍&#xff1a;老婆大人&#xff0c;我错了。道歉到第三遍的时候&#xff0c;媳妇埋怨这一遍说的不真诚&#xff0c;是不是就是要退出循环了&#xff1f;这个退出有两种可能性&#xff1a; ① 更生气&#xff0c;不打算原谅…...

js实现将文本生成二维码(腾讯云cos)

示例 页面代码 import { getQCodeUrl } from /utils/cosInstance; import { PageContainer } from ant-design/pro-components; import { Access, useAccess } from umijs/max; import { Button, Image } from antd; import { useState } from react;const AccessPage: Reac…...

机架式服务器介绍

大家都知道服务器分为机架式服务器、刀片式服务器、塔式服务器三类&#xff0c;今天小编就分别讲一讲这三种服务器&#xff0c;第一篇先来讲一讲机架式服务器的介绍。 机架式服务器定义&#xff1a;机架式服务器是安装在标准机柜中的服务器&#xff0c;一般采用19英寸的标准尺寸…...

解决github有时能访问有时不能访问的问题2

下载地址 https://steampp.net/...

Go实现网络通信

Go 语言提供了强大的网络编程能力&#xff0c;包括 TCP、UDP、HTTP、WebSocket 等协议的支持。下面是 Go 语言中常用的网络操作&#xff1a; TCP 通信 使用 net 包进行 TCP 通信&#xff0c;可以创建 TCP 客户端和服务器。 客户端使用 net.Dial 方法连接到指定的 TCP 地址&am…...

在antd里面渲染MarkDown并且自定义一个锚点目录TOC(重点解决导航目录不跟随文档滚动的问题)

一、整体思路 由于有很多很长的文档需要渲染&#xff0c;我觉得用MarkDown的方式会比较适合管理&#xff0c;所以这两天测试了一下在antd里面集成MarkDown的渲染模块。 总体思路参考&#xff1a; https://blog.csdn.net/Sakuraaaa_/article/details/128400497 感恩大佬的倾情付…...

Linux MMC子系统 - 2.eMMC 5.1总线协议浅析

By: Ailson Jack Date: 2023.10.27 个人博客&#xff1a;http://www.only2fire.com/ 本文在我博客的地址是&#xff1a;http://www.only2fire.com/archives/161.html&#xff0c;排版更好&#xff0c;便于学习&#xff0c;也可以去我博客逛逛&#xff0c;兴许有你想要的内容呢。…...

时序预测 | Python实现ARIMA-LSTM自回归移动差分模型结合长短期记忆神经网络时间序列预测

时序预测 | Python实现ARIMA-LSTM自回归移动差分模型结合长短期记忆神经网络时间序列预测 目录 时序预测 | Python实现ARIMA-LSTM自回归移动差分模型结合长短期记忆神经网络时间序列预测预测效果基本介绍程序设计参考资料 预测效果 基本介绍 时序预测 | Python实现ARIMA-LSTM自…...

【Linux】部署单机OA项目及搭建spa前后端分离项目

目录 部署OA项目 ​编辑 搭建spa前后端分离项目 后端 前端 配置坏境变量 部署OA项目 在虚拟机中&#xff0c;将项目打包成war文件放置到tomcat根目录下的webapps文件目录下 再在主机数据库中连接数据库&#xff0c;并定义数据库名导入相关的表 继续进入tomcat目录下双击点…...

2023中国计算机大会:蚂蚁集团连发两支百万级科研基金

10月26日&#xff0c;中国计算机学会&#xff08;CCF&#xff09;主办的第二十届中国计算机大会(CNCC2023)在沈阳举行。在“CCF-蚂蚁科研基金及产学研合作交流活动”上&#xff0c;蚂蚁集团发布了2023年度“CCF-蚂蚁科研基金”绿色计算及隐私计算两支百万级专项基金&#xff0c…...

Knife4j使用教程(三) -- 实体类的配置注解(@ApiModel与@ApiModelProperty 的 认识与使用)

目录 1. @ApiModel与@ApiModelProperty的区分 2. @ApiModel注解 3. @ApiModelProperty注解 3.1 value属性 3.2 name属性...

计算机网络【CN】IPV4报文格式

版本&#xff08;4bit&#xff09;&#xff1a;IPV4/IPV6首部长度&#xff08;4bit&#xff09;&#xff1a;标识首部的长度 单位是4B最小为&#xff1a;20B最大为&#xff1a;60&#xff08;15*4&#xff09;B总长度&#xff08;16bit&#xff09;&#xff1a;整个数据报&…...

SQL server数据库单用户模式如何退出

根据网上的说法&#xff0c;用下面的方式尝试即可退出 进入ssms数据库管理软件执行下面的sql语句 -- 第一步执行USE [master] GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO--建一个存储过程&#xff0c;断开所有用户连接。 create proc [dbo].[killspid] (dbn…...

QT mqtt 在子线程中使用

qtmqtt 在子线程中使用_qt在子线程里mqtt无法new-CSDN博客文章浏览阅读524次。解决问题&#xff1a;QMqttClient - connection not made from another thread在qt中使用多线的qtmqtt客户端发送接收数据_qt在子线程里mqtt无法newhttps://blog.csdn.net/qq_35708970/article/deta…...

Tomcat运维以及优化

Tomcat常用运维命令 # 查看版本/opt/data/app/tomcat-9.0.82/bin/catalina.sh version## 启动 /opt/data/app/tomcat-9.0.82/bin/startup.sh # 停止 /opt/data/app/tomcat-9.0.82/bin/shutdown.sh调整JVM 参数 方式1 vim /opt/data/app/tomcat-9.0.82/bin/catalina.sh # OS…...

运算放大器增益带宽积(GBW)计算指南:从原理到选型实战

1. 项目概述&#xff1a;为什么我们需要关心运放的GBW&#xff1f;在模拟电路设计&#xff0c;尤其是信号调理、滤波、放大等前端电路的设计中&#xff0c;运算放大器&#xff08;运放&#xff09;的选择是决定电路性能上限的关键一步。很多工程师在选型时&#xff0c;会重点关…...

实验室里的“学霸”与街头上的“全才”:深度解析 PaLM 与 ChatGPT

在 AI 的史诗级进程中&#xff0c;2022 年是一个被历史铭记的分水岭。那一年&#xff0c;Google 推出了参数量惊人的 PaLM&#xff0c;展示了“暴力美学”的巅峰&#xff1b;而几个月后&#xff0c;OpenAI 的 ChatGPT 横空出世&#xff0c;彻底改变了人类与机器交互的方式。 很…...

企业AI Agent安全防护体系

企业AI Agent安全防护体系:构建智能时代的安全长城 前言:智能革命与安全挑战 当我们站在21世纪第三个十年的门槛上回望,人工智能(AI)的发展速度可谓惊人。从早期的专家系统到今天的大语言模型(LLM),AI已经从实验室走向了企业生产的核心。而在这一波浪潮中,AI Agent(…...

从动态规划到最优策略:基于模型的强化学习核心算法剖析

1. 从动态规划到强化学习的桥梁 动态规划&#xff08;Dynamic Programming&#xff0c;DP&#xff09;是解决序列决策问题的经典方法&#xff0c;而强化学习&#xff08;Reinforcement Learning&#xff0c;RL&#xff09;则可以看作是在未知环境下的动态规划。我第一次接触这个…...

【ElevenLabs语音伦理合规白皮书】:面向银发群体的AI语音生成必须绕开的4类GDPR/《互联网信息服务深度合成管理规定》雷区

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;银发群体AI语音服务的伦理合规必要性 随着智能语音助手在居家养老、远程问诊、紧急呼叫等场景中的深度部署&#xff0c;面向60岁以上用户的AI语音服务已从“可选功能”演变为“关键基础设施”。然而&am…...

【模拟 IC】运放失调电压的成因剖析与版图优化策略

1. 运放失调电压的本质与影响 第一次接触运放失调电压这个概念时&#xff0c;我也被它搞得一头雾水。简单来说&#xff0c;失调电压就是理想运放和实际运放之间的"性格差异"。理想情况下&#xff0c;当两个输入端电压相等时&#xff0c;输出应该是零。但现实中&#…...

2026年网络安全行业发展全景解析(技术从业者必看)_最新网络行业发展锐评

2026年网络安全行业发展全景解析&#xff08;技术从业者必看&#xff09; 摘要&#xff1a;随着数字化转型进入深水区&#xff0c;AI、云原生、物联网等技术的普及&#xff0c;网络安全已从“辅助保障”升级为“核心刚需”。 一、行业发展现状&#xff1a;政策与市场双轮驱动&…...

MicroG终极指南:3步解决华为设备Google服务依赖难题

MicroG终极指南&#xff1a;3步解决华为设备Google服务依赖难题 【免费下载链接】GmsCore Free implementation of Play Services 项目地址: https://gitcode.com/GitHub_Trending/gm/GmsCore 你是否曾为华为设备上无法正常使用Google服务而烦恼&#xff1f;想要享受完整…...

从账单明细看Taotoken按Token计费模式的实际支出情况

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 从账单明细看Taotoken按Token计费模式的实际支出情况 在模型应用开发与测试阶段&#xff0c;成本控制是团队普遍关心的问题。固定套…...

[GESP202512 C++ 三级] 判断题第 3 题 ← strcmp

【题目描述】 strcmp(str1, str2) 返回 0 表示 str1 大于 str2 &#xff0c;返回正数表示两者相等。&#xff08;❌️&#xff09;【题目解析】 返回 0 → 两个字符串完全相等。 返回正数 → str1 > str2。 返回负数 → str1 < str2。...