自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 Android Studio自带Bottom Navigation Activity模板顶栏空白

版权声明:本文为CSDN博主「菜鸡渣渣一个」的原创文章。原文链接:https://blog.csdn.net/weixin_44115643/article/details/104242610在使用Android Studio自带Bottom Navigation Activity模板时,会出现顶栏空白的现象在activity_main.xml文件中将下面代码删掉即可,原因详见原文android:paddingTop="?attr/actionBarSize"...

2021-12-12 19:09:06 489

转载 在Android Studio中用echart画图

转自:https://www.cnblogs.com/ashenweb/p/13415900.html第一步:下载必要组件进入官网下载所需JS文件,不知道怎么下载请选择方法三定制,在线生成一份定制JS下载https://echarts.apache.org/zh/download.html在Android中的Gradle添加依赖(需要gson依赖)implementation 'com.github.abel533:ECharts:3.0.0.2'implementation fi.

2021-12-12 18:47:57 1685

原创 安卓(java) 姓名打码

如果姓名是两个字的,把前面那个字打码如果姓名是三个字的,就把中间的那个字打码如果姓名是四个字的,就把中间两个字打码效果如下:代码如下: private String setName(String gName){ String reName; char[] c = gName.toCharArray(); if(gName.length()==2){ reName ="*"+c[1]; retur

2021-12-04 22:35:45 2350

原创 安卓子线程操作UI

报错:Only the original thread that created a view hierarchy can touch its views.-只有创建这个View的原线程才能操作这个ViewHandler是Android消息机制的上层接口,通过handler,可以将一个任务切换到handler所在的线程中执行,通常将子线程获取的数据通过handler传递到主线程后,再对UI进行操作代码如下:private Handler handler=new Handler(new Handler

2021-12-04 10:23:51 2370

原创 shaderGraph练习(四)------ 积雪效果

本系列是shaderGraph的练习渐变效果1. 效果展示2. 变量与节点解析3. 连连看4. 保存和设置1. 效果展示2. 变量与节点解析变量:Albedo(texture):反射贴图,表现模型纹理和颜色Spread(float):渐变强度,越大表示渐变(过渡生硬),越接近0表示过渡自然,正负表示方向position(float):偏移量Color1(Color):渐变颜色1Color2(Color):渐变颜色2节点:Lerp:插值节点,Out = A*(1-T)+B*

2021-11-06 08:48:19 353

原创 shaderGraph练习(三)------ 渐变效果

本系列是shaderGraph的练习透明效果1. 效果展示2. 变量与节点解析3. 连连看1. 效果展示2. 变量与节点解析变量:Albedo(texture):反射贴图,表现模型纹理和颜色Spread(float):渐变强度,越大表示渐变(过渡生硬),越接近0表示过渡自然,正负表示方向position(float):偏移量Color1(Color):渐变颜色1Color2(Color):渐变颜色2节点:Lerp:插值节点,Out = A*(1-T)+B*T3. 连连看

2021-11-02 20:39:01 2901

原创 shaderGraph练习(二)------ 流光效果 Lerp

本系列是shaderGraph的练习透明效果1. 效果展示2. 变量与节点解析3. 连连看4. 保存和设置5. 意外之喜1. 效果展示2. 变量与节点解析变量:Albedo(texture):反射贴图,表现模型纹理和颜色Normal(texture):法线贴图,改变模型表面光照结果,增加真实感Emission(texture):自发光贴图,让模型自发光Metallic(texture):金属贴图,表现金属高光反射结果,本身是一张灰白图,越白,金属度越强,反之越弱。lerpProp(fl

2021-10-17 12:56:02 976

原创 shaderGraph练习(一)------ Fresnel Effect边缘光

本系列是shaderGraph的练习透明效果1. 效果展示2. 变量与节点解析3. 连连看4. 保存和设置1. 效果展示2. 变量与节点解析变量:Albedo(texture):反射贴图,表现模型纹理和颜色Normal(texture):法线贴图,改变模型表面光照结果,增加真实感Emission(texture):自发光贴图,让模型自发光Metallic(texture):金属贴图,表现金属高光反射结果,本身是一张灰白图,越白,金属度越强,反之越弱。RimPower(Vector1):边

2021-10-14 09:30:36 812

原创 表面着色器基本概念

【本系列文章系学习 唐福幸《Unity ShaderLab 新手宝典》的笔记,包含个人理解,如有错误欢迎批评指出透明效果7.5 模板测试最终效果:7.5 模板测试

2021-08-01 10:22:41 387

原创 透明效果(八)--模板测试实现透明效果

【本系列文章系学习 唐福幸《Unity ShaderLab 新手宝典》的笔记,包含个人理解,如有错误欢迎批评指出透明效果7.5 模板测试一句话总结:7.5 模板测试

2021-07-28 15:52:21 251 1

原创 透明效果(七)--模板测试的计算流程和使用语法

【本系列文章系学习 唐福幸《Unity ShaderLab 新手宝典》的笔记,包含个人理解,如有错误欢迎批评指出透明效果7.4 透明测试一句话总结:之前的混合透明是渲染顺序加上贴图透明度实现透明效果,这次透明测试是通过图片的透明通道来剔除透明部分。前者要考虑物体前后的渲染,后者要考虑图片的锯齿以及无法半透明7.4 透明测试...

2021-07-11 19:13:32 144 1

原创 透明效果(六)--透明测试

【本系列文章系学习 唐福幸《Unity ShaderLab 新手宝典》的笔记,包含个人理解,如有错误欢迎批评指出透明效果7.4 透明测试一句话总结:7.4 透明测试

2021-07-04 18:03:20 223 3

原创 透明效果(五)--半透明物体双面渲染

【本系列文章系学习 唐福幸《Unity ShaderLab 新手宝典》的笔记,包含个人理解,如有错误欢迎批评指出透明效果7.3.6 半透明物体的双面渲染7.3.6 半透明物体的双面渲染上一节

2021-07-03 19:43:41 899 6

原创 透明效果(四)--混合透明效果实现

【本系列文章系学习 唐福幸《Unity ShaderLab 新手宝典》的笔记,包含个人理解,如有错误欢迎批评指出透明效果7.3.5 混合透明效果一句话总结:7.3.5 混合透明效果

2021-07-02 11:03:35 166 3

原创 透明效果(三)--混合透明效果使用方法

【本系列文章系学习 唐福幸《Unity ShaderLab 新手宝典》的笔记,包含个人理解,如有错误欢迎批评指出透明效果7.3 混合透明效果7.3.1 混合指令7.3.2 混合系数7.3.3 混合操作7.3.4 混合透明的使用方法7.3.5 混合透明效果一句话总结:7.3 混合透明效果7.3.1 混合指令7.3.2 混合系数7.3.3 混合操作7.3.4 混合透明的使用方法7.3.5 混合透明效果...

2021-06-29 11:34:15 393 1

原创 透明效果(二)-- (半)透明物体的渲染顺序

【本系列文章系学习 唐福幸《Unity ShaderLab 新手宝典》的笔记,包含个人理解,如有错误欢迎批评指出透明效果7.2 透明物体的渲染顺序7.2 透明物体的渲染顺序

2021-06-22 21:29:14 1462 1

原创 透明效果(一)-- 不透明物体的渲染顺序

【本系列文章系学习 唐福幸《Unity ShaderLab 新手宝典》的笔记,包含个人理解,如有错误欢迎批评指出透明效果7.1 不透明物体的渲染顺序7.1 不透明物体的渲染顺序

2021-06-22 20:23:54 1103 2

原创 Shader中的光照模型(九)-- 通过Frame Debug分析渲染流程

【本系列文章系学习 唐福幸《Unity ShaderLab 新手宝典》的笔记,包含个人理解,如有错误欢迎批评指出Shader中的光照模型6.7.4 实现阴影效果6.7.4.1 一个投射阴影6.7.4.2 多个投射阴影6.7.5 分析6.7.4 实现阴影效果为了便于实现,方便理解实现逻辑,本案例在Lambert光照模型(逐像素光照渲染)基础上进行改进。原代码Shader "Chapter6/LambertFrag"{ Properties { _MainCol ("

2021-06-21 21:42:08 309 1

原创 Shader中的光照模型(八)-- 实现阴影效果

【本系列文章系学习 唐福幸《Unity ShaderLab 新手宝典》的笔记,包含个人理解,如有错误欢迎批评指出Shader中的光照模型6.7.4 实现阴影效果6.7.5 分析6.7.4 实现阴影效果打开阴影6.7.5 分析

2021-06-21 18:34:25 717 3

原创 Shader中的光照模型(七)

【本系列文章系学习 唐福幸《Unity ShaderLab 新手宝典》的笔记,包含个人理解,如有错误欢迎批评指出Shader中的光照模型6.7.2 Pass标签6.7.3 内置multi_compile6.7.4 实现阴影效果6.7.5 分析6.7.2 Pass标签6.7.3 内置multi_compile6.7.4 实现阴影效果6.7.5 分析...

2021-06-19 20:13:41 106

原创 Shader中的光照模型(六)

【本系列文章系学习 唐福幸《Unity ShaderLab 新手宝典》的笔记,包含个人理解,如有错误欢迎批评指出Shader中的光照模型6.7 灯光阴影6.7.1 渲染路径1. 延迟着色渲染路径2. 前向渲染路径一句话总结延迟渲染路径:先判断,把要渲染的片元存储在一个地方,再利用存储的各个片元信息进行光照计算(渲染)。前向渲染路径:把物体接受不同光的强度(位置、设置),进行区别对待(渲染)。6.7 灯光阴影前面实现的光照模型还存在以下问题:开启灯光投射阴影选项,物体上没有投射任何阴影,也不会

2021-06-16 21:32:37 173

原创 Shader中的光照模型(五)

【本系列文章系学习 唐福幸《Unity ShaderLab 新手宝典》的笔记,包含个人理解,如有错误欢迎批评指出Shader中的光照模型6.6.1 Blinn-Phong光照模型6.6.1 Blinn-Phong光照模型由Jim Blinn对Phong光照模型算法的镜面反射进行改进,Blinn-Phong不再使用反射向量r计算镜面反射,而是使用半角向量h代替r,h表示视角方向v和灯光方向l的角平分线(改进后的模型也符合反射原理:当视角方向和反射方向一致时,h与法线向量重合点积最大;视角方向偏离反射方

2021-06-15 17:47:30 221

原创 Shader中的光照模型(四)

本系列文章系学习 唐福幸《Unity ShaderLab 新手宝典》的笔记,包含个人理解,如有错误欢迎批评指出Shader中的光照模型6.5 逐像素光照与逐顶点光照6.5 逐像素光照与逐顶点光照

2021-06-14 18:51:59 101 1

原创 Shader中的光照模型(三)

本系列文章系学习 唐福幸《Unity ShaderLab 新手宝典》的笔记,包含个人理解,如有错误欢迎批评指出Shader中的光照模型6.2 CG标准库函数6.3 Half-Lambert光照模型6.2 CG标准库函数在shader中常常会使用到一些数学函数,而官方有提供了一个标准库,里面声明了很多数学函数,直接调用也更加节省性能,下面是一些常用的函数:6.3 Half-Lambert光照模型在6.1中学习了Lambert模型,但是它有个致命缺点:物体背光部分全黑(细节缺失,如果再加一盏灯,性能

2021-06-13 21:33:01 162

原创 Shader中的光照模型(二)

本系列文章系学习 唐福幸《Unity ShaderLab 新手宝典》的笔记,包含个人理解,如有错误欢迎批评指出Shader中的光照模型6.2 CG标准库函数6.3 Half-Lambert光照模型6.2 CG标准库函数在shader中常常会使用到一些数学函数,而官方有提供了一个标准库,里面声明了很多数学函数,直接调用也更加节省性能,下面是一些常用的函数:6.3 Half-Lambert光照模型在6.1中学习了Lambert模型,但是它有个致命缺点:物体背光部分全黑(细节缺失,如果再加一盏灯,性能

2021-06-10 21:00:48 129 2

原创 Shader中的光照模型(一)

本系列文章系学习 唐福幸《Unity ShaderLab 新手宝典》的笔记,包含个人理解,如有错误欢迎批评指出Shader中的光照模型6.1 Lambert光照模型6.1.1 Lambert光照理论6.1.2 在shader中获取灯光变量6.1.3 基于Lambert光照模型的shader6.1 Lambert光照模型6.1.1 Lambert光照理论6.1.2 在shader中获取灯光变量6.1.3 基于Lambert光照模型的shader...

2021-06-08 22:06:29 368 2

原创 3d max材质添加透明贴图异常

从网上找的模型,在使用3dmax在给模型上眼睛贴图的时候,发现透明图片显示异常,如下:解决方法如下:在ps中打开透明贴图添加一个图层选中图层1,点击魔棒工具,选中透明区域选下背景色,再切到图层2,用ctrl+del把透明区域变成黑色在选中区域右击,选择反向把背景色改成白色,用ctrl+del把选中区域变成白色隐藏图层1,导出图片在3dmax的材质编辑器里面,漫反射添加原图片(位图),不透明度添加新的黑白图片(位图)将材质添加给对象,完成非专业人士,如有更好的

2021-06-07 22:27:19 1667

原创 Unity(shader)的包含文件

本系列文章系学习 唐福幸《Unity ShaderLab 新手宝典》的笔记,包含个人理解,如有错误欢迎批评指出Unity(shader)的包含文件5 Unity(shader)的包含文件5.1 包含文件的使用语法5.2 UnityCG.cginc5.2.1 顶点着色器输入结构体5.2.2 顶点变换函数5.2.3 向量变换函数5.2.4 灯光辅助函数5.2.5 视角向量函数5.2.6 其它辅助函数和宏5.3 UnityShaderVariables.cginc5.3.1 空间变换矩阵5.3.2 时间变量5.

2021-06-06 23:55:16 489 3

原创 顶点-片段着色器基础(五)

本系列文章系学习 唐福幸《Unity ShaderLab 新手宝典》的笔记,包含个人理解,如有错误欢迎批评指出顶点-片段着色器基础4.3.5 结构体4.3.5 结构体之前代码中函数输入输出参数过多,可以使用结构体去精简void vert(in float4 vertex : POSITION, in float2 uv : TEXCOORD0, out float4 position : SV_POSITION, out float2 texcoord : TEXCOORD0){ //函数

2021-06-05 13:58:36 107 2

原创 顶点-片段着色器基础(四)

本系列文章系学习 唐福幸《Unity ShaderLab 新手宝典》的笔记,包含个人理解,如有错误欢迎批评指出顶点-片段着色器基础4.3.3 语义4.3.3.1 顶点着色器输入语义4.3.3.2片段着色器输入语义(顶点着色器输出语义)4.3.3.3片段着色器输出语义4.3.4 在CG中调用属性变量4.3.5 结构体4.3.3 语义不管是顶点着色器还是片元(段)着色器,输入/输出(返回)参数后面都有一个冒号,后跟者全大写的字符串,这个字符串表达了这个参数的含义。通俗来讲,语义让Shader知道从哪里

2021-06-05 13:17:07 125

原创 顶点-片段着色器基础(三)

本系列文章系学习 唐福幸《Unity ShaderLab 新手宝典》的笔记,包含个人理解,如有错误欢迎批评指出顶点-片段着色器基础4.3.3 语义4.3.4 在CG中调用属性变量4.3.5 结构体4.3.3 语义4.3.4 在CG中调用属性变量4.3.5 结构体...

2021-06-03 16:41:03 234

原创 顶点-片段着色器基础(二)

本系列文章系学习 唐福幸《Unity ShaderLab 新手宝典》的笔记,包含个人理解,如有错误欢迎批评指出顶点-片段着色器基础4.3 CG语法基础4.3.1 编译指令4.3.2 着色器函数4.3.3 语义4.3.4 在CG中调用属性变量4.3.5 结构体4.3 CG语法基础4.3.1 编译指令4.3.2 着色器函数4.3.3 语义4.3.4 在CG中调用属性变量4.3.5 结构体...

2021-06-02 23:38:27 207 2

原创 顶点-片段着色器基础(一)

本系列文章系学习 唐福幸《Unity ShaderLab 新手宝典》的笔记,包含个人理解,如有错误欢迎批评指出ShaderLab语法基础3.1 Shader脚本的组织机构3.2 Shader名称3.3 Properties3.3.1 数值类属性3.3.2 颜色和向量类属性3.3.3 纹理贴图类属性3.4 SubShader3.4.1 SubShader的标签3.4.2 Pass的渲染状态3.5 Fallback3.1 Shader脚本的组织机构Shader "Name"{ Properties

2021-05-31 00:32:03 117 3

原创 ShaderLab语法基础

本系列文章系学习 唐福幸《Unity ShaderLab 新手宝典》的笔记,包含个人理解,如有错误欢迎批评指出ShaderLab语法基础3.1 Shader组织机构3.2 Shader名称3.3 Properties3.3.1 数值类属性3.3.2 颜色和向量类属性3.3.3 纹理贴图类属性3.3.4 所有类型属性汇总3.4 SubShader3.4.1 SubShader的标签3.4.2 Pass的渲染状态3.5 Fallback3.1 Shader组织机构3.2 Shader名称3.3 Prop

2021-05-30 20:41:53 429

原创 渲染流水线与Shader概念(三)

本系列文章系学习 唐福幸《Unity ShaderLab 新手宝典》的笔记,包含个人理解,如有错误欢迎批评指出渲染流水线与Shader概念2.4 现代GPU渲染流水线2.5 Shader概念2.4 现代GPU渲染流水线OpenGL渲染流水线如下图:顶点着色器:GPU从CPU处获取到顶点数据后,放入顶点着色器,顶点坐标会从模型空间转变成裁切空间。------顶点着色器许用户通过shader程序配置装配图元:将(顶点着色器输出的)顶点数据装配成图元(点、线、面)光栅化:将几何图元转变成片段的过程(

2021-05-27 20:22:24 83

原创 渲染流水线与Shader概念(二)

本系列文章系学习 唐福幸《Unity ShaderLab 新手宝典》的笔记,包含个人理解,如有错误欢迎批评指出3D数学基础2.3 空间变换模型空间世界空间摄像机空间裁切空间屏幕空间多个坐标空间存在的意义2.3 空间变换顶点在不同的进行变换是流水线上不可或缺的步骤,而且许多特殊效果是在不同空间中进行计算的模型空间又称物体空间,本地空间:每个物体都有自己顶点数据,模型空间用于存储自身的顶点数据。顶点数据包含顶点坐标,法线向量,UV(纹理坐标)的信息等世界空间如果要表示不同物体之间的相对位置,要以

2021-05-26 15:57:02 81

原创 渲染流水线与Shader概念(一)

本系列文章系学习 唐福幸《Unity ShaderLab 新手宝典》的笔记3D数学基础模型是怎么渲染到屏幕上的?2.1 渲染流水线概念2.2 3D图形渲染完整流水线模型是怎么渲染到屏幕上的?2.1 渲染流水线概念模型从3D渲染成2D(显示到屏幕上)中间需要经历一系列过程,这个过程就像是一个魔术盒一样,里面包含一系列步骤(既渲染流水线)为了实现灵活的效果,中间有些步骤允许自定义,有些不允许2.2 3D图形渲染完整流水线建立场景可见性检测设置渲染状态几何体生成与提交变换与光照背面剔除与

2021-05-25 09:16:29 124

原创 3D数学基础(六)

本系列文章系学习 唐福幸《Unity ShaderLab 新手宝典》的笔记3D数学基础1.5使用矩阵进行变换1.6.1 缩放矩阵1.6.2 旋转矩阵1.6.3 平移矩阵1.5使用矩阵进行变换1.6.1 缩放矩阵使向量v1沿着x,y,z轴分别缩放k1,k2,k3得到v2:(k1* x,k2* y,k3* z)试着用矩阵来解决:先把v1变成矩阵[x y z]把v1在x轴上进行缩放k1倍把v1在y轴上进行缩放k2倍把v1在z轴上进行缩放k3倍根据上一章的公式合并一下1.6.2

2021-05-24 20:19:04 106

原创 3D数学基础(五)

本系列文章系学习 唐福幸《Unity ShaderLab 新手宝典》的笔记3D数学基础1.5矩阵运算1.5.1 标量与矩阵相乘1.5.2 矩阵之间的乘法1.5.3 矩阵与向量相乘1.5.4 矩阵的运算法则1.5矩阵运算向量是一行多列, 而多行(raw)多列(col)就是矩阵1.5.1 标量与矩阵相乘1.5.2 矩阵之间的乘法1.5.3 矩阵与向量相乘1.5.4 矩阵的运算法则...

2021-05-20 14:53:52 992

原创 3D数学基础(四)

本系列文章系学习 唐福幸《Unity ShaderLab 新手宝典》的笔记3D数学基础1.4矩阵1.4.1 矩阵的表示方法1.4.2 方阵和单位矩阵1.4.3 转置矩阵1.4矩阵向量是一行多列, 而多行(raw)多列(col)就是矩阵1.4.1 矩阵的表示方法1.4.2 方阵和单位矩阵方阵: 顾名思义就是正方形的矩阵, 行列数相等单位矩阵: 对角线上全为11.4.3 转置矩阵任意矩阵沿着对角线翻转就是转置矩阵转置前: 23, 转置后: 32表示方法: 在原矩阵的右上角加大写T就是

2021-05-19 15:09:34 98

空空如也

空空如也

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

TA关注的人

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