自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 收藏
  • 关注

原创 学习100个Unity Shader (18) --- 几何着色器(Geometry Shader)

]: 可选阶段。输入图元 —> geometry shader —> 其他图元。

2024-05-27 21:15:06 698

原创 学习100个Unity Shader (17) --- 深度纹理

通过深度纹理 i 给出高精度值时,返回相应的线性深度,范围在 0 到 1 之间。C#脚本需要挂在相机上。在Unity中,通过摄像机生成一个深度纹理,属于后处理,获取深度纹理通过在C#中。用当前像素的纹理坐标对深度纹理进行采样。《Unity Shader入门精要》在Shader中,通过。访问深度纹理,然后再使用。

2024-05-09 17:32:44 383

原创 学习100个Unity Shader (16) --- 程序纹理简述

假设,给一个模型添加了材质,并赋予了一个shader。shader中有一个纹理属性叫。程序纹理顾名思义,就是通过代码生成的纹理,然后传入材质,生成图像。冯乐乐 《Unity Shader入门精要》程序纹理简单来说就是,通过C#给。这个属性传用程序生成的纹理。

2024-04-29 17:02:25 248 1

原创 学习100个Unity Shader (15) ---透明+双面渲染

使用透明度混合关闭了深度写入,所以需要两个Pass,一个只渲染背面先执行,另一个后渲染之渲染前面。设置 GPU 应该基于多边形相对于摄像机的方向剔除哪些多边形。《Unity Shader 入门精要》冯乐乐。

2024-04-26 09:40:29 476

原创 ShaderLab的混合命令

混合因子的命令:Blend SrcFactor DstFactor, (SrcFactorA) (DstFactorA),当只有前两项命令时,认为SrcFactorA = SrcFactor 和 DstFactorA = DstFactor。混合需要使用两个等式,通过Blend命令开启混合,并设置混合等式中的【操作】和【因子】。表格引用自——冯乐乐《Unity Shader入门精要》表格引用自——冯乐乐《Unity Shader入门精要》冯乐乐《Unity Shader入门精要》

2024-04-25 20:24:37 433 1

原创 学习100个Unity Shader (14) ---透明效果

设置颜色通道的写掩码,ColorMask RGB | A | 0 | 其他任何RGBA的组合,当设置为0时,Pass不写入任何的颜色通道,不会输出颜色。可以得到真正的半透明效果,使用当前片元的透明度作为混合因子,与已经存储在颜色缓冲中的颜色值进行混合,得到新的颜色。使用两个Pass来渲染模型:第一个Pass开启深度写入,但不输出颜色,第二个Pass进行正常的透明度混合。某一片元的透明度小于某个阈值,即被舍弃,反之,按非透明物体处理,进行正常的深度测试和深度写入【不需要关闭深度写入】。

2024-04-25 14:44:43 1018 1

原创 学习100个Unity Shader (13) ---遮罩纹理(mask texture)

通常用于法线映射,存储模型顶点的法线,模型的每个顶点,它都有一个属于自己的切线空间 这个切线空间的原点就是该顶点本身,而轴是顶点的法线方向 (n) 轴是顶点的切线方向 (t),可由法线和切线叉积而得,也被称为是副切线 bitangent, b) 或副法线对应的纹理的叫切线空间的法线纹理。在不同变换中使用的顶点变换矩阵Ma,不能直接用于顶点的法线,两个变换矩阵的关系为,新的矩阵为Ma的转置逆矩阵。让一些地方免于修改,比如不是所有地方都用同样的高光反射。《Unity Shader入门精要》冯乐乐。

2024-04-22 20:27:04 416

原创 学习100个Unity Shader (12) --- 高光反射光照模型

文章目录效果高光反射光照模型漫反射模型Shader逐顶点光照逐像素光照参考效果高光反射光照模型 :反光度: 越大亮点越小。 :视角方向。r: 反射方向。漫反射模型n: 顶点法线方向。I: 入射光方向。Shader逐顶点光照// Upgrade NOTE: replaced '_Object2World' with 'unity_ObjectToWorld'// Upgrade NOTE: replaced '_World2Object' with 'unity_WorldToO

2024-04-17 19:39:05 194 2

原创 Unity Shader的类型

光线追踪着色器是一种实验性的程序,其扩展名为“.raytrace”。我们可以使用这种类型的程序来替代处理光线投射算法的“.compute”类型着色器,例如全局光照、反射、折射或焦散。“Lit”一词指的是受到照明影响的材料,“Unlit”则相反。Unlit shader指的是基本的颜色模型,通常是我们创建效果的基础结构。这种类型的程序的特点是在图形卡上运行,不在正常的渲染管线中,其结构与先前提到的着色器非常不同。与普通着色器不同,它的扩展名是“.compute”,其编程语言是HLSL。

2024-04-15 17:14:46 559

原创 学习100个Unity Shader (11) --- 滚动纹理(通过修改UV值)

是一个常用的函数,用于在着色器中对纹理进行采样。它接受一个纹理(texture)和一个二维坐标作为参数,并返回该纹理在给定坐标处的颜色值。: 在编辑器中按下Play按钮时,使用内置的_Time变量来改变UV。

2024-04-11 20:21:07 446 1

原创 学习100个Unity Shader (10) --- 全息效果(透明)

IgnoreProjector 标签:向 Unity 告知几何体是否受投影器影响,这里在渲染此几何体时忽略投影器。Queue 标签: 向 Unity 告知要用于它渲染的几何体的渲染队列,这里指定透明渲染队列。越小,abs(dot(IN.viewDir, IN.worldNormal))在边缘处接近1。RenderType 标签:在使用替换着色器进行渲染时使用,这里设置为大部分半透明着色器。

2024-04-11 19:16:04 330

原创 学习100个Unity Shader (9) --- 自定义雾效(finalcolor)

一个介于0到1之间的数值,代表了雾的强度。如果顶点在屏幕空间中的位置越远(或深度值越大),则计算出来的雾强度越大。vertex:myvert 定义finalcolor使用的函数。使用finalcolor实现雾的效果。

2024-04-10 19:00:33 1191

原创 学习100个Unity Shader (8) ---法线挤出

v) 提供顶点的位置、切线、法线、四个纹理坐标和颜色数据。所有顶点朝法线方向移动_Amount。

2024-04-10 14:49:02 175

原创 学习100个Unity Shader (7) ---切片Shader

如果这个参数小于等于0,则对应的片段或者顶点会被丢弃。函数返回一个数值的小数部分,去除整数部分。将返回的值变成-0.5-0.5。

2024-04-10 13:45:41 198

原创 学习100个Unity Shader (6) --- 立方体纹理Cubemap

在图形学中,立方体纹理(Cubemap)是环境映射(Environment Mapping)的一种实现方法。环境映射可以模拟物体周围的环境,而使用了环境映射的物体可以看起来像锁了层金属一样反射出周围的环境。

2024-04-09 15:53:28 228

原创 学习100个Unity Shader (5) --- 细节纹理Detail Texture

细节纹理 (Detail texture) 是一种细小精致的纹理图案,主纹理上覆盖第二组纹理,这样做的原因是允许材质在近距离观察时具有清晰的细节,同时在从更远处观察时具有正常的细节级别,而不必使用单个极高的纹理贴图来实现两个目标。细节纹理的典型用途为:为角色的皮肤添加皮肤细节,如毛孔和毛发在砖墙上添加微小的裂缝和地衣生长效果为大型金属容器添加小划痕和磨损。

2024-04-09 13:58:03 368

原创 学习100个Unity Shader (4) ---边缘光照Rim Lighting

的区别,Albedo 是指表面的基础颜色,也称为漫反射颜色,Emission 是指表面的自发光属性。其原理是,点积等于视角和法线夹角的cos值,cos的值域是1-0,1-cos就成了0-1,在夹角90度时达到最大值,其实就是,当视线看向物体边缘的时候,视线与边缘的顶点法线是垂直的,这个值越大,边缘光越明显。这一过程的目的是得到视线和表面法线之间的夹角,然后将其映射到 0 到 1 的范围内,再取反,得到的值表示了视线与表面法线之间的夹角的补角,即边缘光的强度。属性,从而让该表面产生边缘光的效果。

2024-04-08 19:16:21 443

原创 学习100个Unity Shader (3) ---法线纹理实现凹凸效果

为UnityCG.cginc内置的函数,用于将压缩的法线向量解压缩为一个三维向量。法线向量通常用来描述表面的法线方向,即表面垂直于其上的方向。在3D图形学中,法线向量通常是单位长度的向量,用于计算光照和阴影等效果。其他部分解释参考:[学习100个Unity Shader (2) —实现最简单贴图纹理],(https://blog.csdn.net/weixin_43975743/article/details/137469104)。Unity中,法线向量可以使用特殊的纹理格式进行压缩存储,以减少内存消耗。

2024-04-08 16:44:14 309

原创 学习100个Unity Shader (2) ---实现最简单贴图纹理

记录自己学习unity shader的记录,学习shader道阻且长,贵在坚持。

2024-04-07 19:05:18 379

原创 学习100个Unity Shader (1) ---实现最简单漫反射

实现最简单漫反射

2024-04-07 15:57:35 416

原创 Unity3D项目集成Android原生工程进行App开发(二)

文章目录前言一、Unity项目与Android工程的集成二、Android与Unity工程通讯1.编写Unity端通信接口总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。一、Unity项目与Android工程的集成  将Unity3D项目集成Android原生工程进行App开发(一)中生成的两个(Unity2019)或一个(Unity2018)Unity工程.aar文件拷贝

2021-08-17 09:08:30 626

原创 Unity3D项目集成Android原生工程进行App开发(一)

文章目录前言一、Unity项目导出为安卓工程二、Unity工程导出为aar总结参考前言  Unity3D在三维显示,AR开发上都有很多工具而且很方便,有一个App开发项目需要用Unity3D负责三维显示部分功能。本方法使用将Unity项目以.arr文件集成安卓原生工程。本文涉及的软件版本为:Android Studio 4.1.1 和Unity2018.3.14f1 / Unity2019.4.16f1c1一、Unity项目导出为安卓工程  假设Unity已经配置好了Andro

2021-03-16 08:08:52 2307

原创 使用Matlab根据灰度图阈值生成三维图

使用Matlab根据灰度图阈值生成三维图代码结果参考代码function grayto3d() figure(1) imshow('1.jpg') %900 X 600 X 3 hold on img=imread('1.jpg'); img=rgb2gray(img); img=double(img(1:900,1:600)); x=1:1:600; y=900:-1:1; %一开始使用1:1:900,后发现图上下颠倒了,因为Matlab

2020-06-18 10:49:39 1576 1

原创 在Linux服务器安装Unity3D

在Linux服务器安装Unity3D说明Unity Hub功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入说明我想通...

2020-05-28 22:09:40 1493

原创 学习笔记C#实现UDP通讯

学习笔记C#实现UDP通讯准备Server端代码Client端代码注意最后效果准备使用VS2019新建两个工程,名为“Server”和“Client”。Server端代码namespace Server{ class Program { static void Main(string[] args) { string recevieString = null; byte[] recevieData =

2020-05-28 21:56:01 244

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除