Unity3d Shader
文章平均质量分 74
Unity3d Shader从入门到放弃
四夕立羽
这个作者很懒,什么都没留下…
展开
-
unity3d:Shader知识点,矩阵,函数,坐标转换,Tags,半透明,阴影,深度,亮度,优化
当在V2F结构体中定义大量变量时,会占用更多的寄存器空间。每个变量都需要占用一个或多个寄存器来存储其数据。因此,如果V2F结构体中的变量过多,可能会导致寄存器数量不足的问题。以下是一些优化建议:1. 只定义需要的变量:避免定义不必要的变量,只保留需要在顶点和片段着色器之间传递的数据。2. 使用紧凑的数据类型:选择适当的数据类型来存储数据,避免使用过大的数据类型。例如,使用float代替float4来存储一个3D向量。3. 考虑使用顶点着色器中的纹理坐标:如果某些数据只在顶点着色器中使用,并且可以原创 2024-07-07 10:45:29 · 1350 阅读 · 0 评论 -
unity3d:YooAsset shader变体收集代码解析
反射调用ShaderUtil.ClearCurrentShaderVariantCollection清空当前项目搜集到的变体,我们需要重新搜集一次;每次处理一批时,总材质球列表_allMaterials去掉0-count,然后处理当前的range。在场景中创建一堆sphere几何体,并排列整齐,然后把渲染相机对齐它们,并保证它们都可以看见;变体收集,每次只处理最大1000个材质球,超过的,等下一批再处理。分批次把这些材质资源赋予这些sphere几何体,渲染100ms;收集所有依赖asset的材质球。原创 2023-07-17 01:15:19 · 1755 阅读 · 0 评论 -
unity3d:小地图UV,UGUIshader毒圈挖孔,吃鸡跑毒缩圈
1.小圆一定是全部包含在大圆内部。运动的是大圆,直到大圆与小圆圆心,半径重合2.缩圈运动分两个阶段,第一阶段为向内切运动:大圆圆心不变,按照速度缩小大圆半径,直到大圆半径 = 圆心距离+小圆半径3.第二阶段为先小圆运动:大圆圆心向着小圆圆心移动,同时大圆半径缩小,直到大圆半径= 小圆半径原创 2023-06-18 17:36:05 · 2489 阅读 · 1 评论 -
Unity3d+Newbie guide引导:读CSV表驱动,屏蔽不可点击区域,UI镂空矩形区域Shader
主要功能表驱动,引导到哪步查找ui面板下路径屏蔽不可点击区域,点击屏蔽,UImask镂空具有点击该按钮驱动下一步,或者点击新手引导的下一步驱动数据结构//新手引导UI箭头出现的方向public enum EnGuideDir{ up = 0, down = 1, left = 2, right = 3 }//出现引导如何跳转下一步public enum EnGuideClick{ NoClickCloseSelf = 0, //点击空白处原创 2021-11-29 01:01:22 · 1527 阅读 · 0 评论 -
unity3d:运动残影
Shader "Custom/GhostOnly_Transparent" { Properties { _MainTex ("Base (RGB)", 2D) = "white" {} _GhostColor ("Ghost Color", Color) = (0, 1, 0, 1) _Pow ("Pow Factor", int) = 2 } SubShader ...原创 2019-03-15 17:31:01 · 784 阅读 · 0 评论 -
unity3d:shader: Clip裁剪显示
Shader "Custom/Clip" { Properties{ _MainTex("Texture", 2D) = "white" {} _BumpMap("Bumpmap", 2D) = "bump" {} [Space(10)]_ClipObjPos("遮罩位置", Vector) = (0, 0, 0, 1) _ClipObjNormal("遮罩法线向量", Vector...原创 2019-10-12 01:00:03 · 3750 阅读 · 1 评论 -
unity3d:shader自发光透明
Shader "Custom/AlphaSelfIllum" {Properties { _Color ("Main Color", Color) = (1,1,1,0) _SpecColor ("Spec Color", Color) = (1,1,1,1) _Emission ("Emmisive Color", Color) = (0,0,0...转载 2019-04-10 13:35:04 · 2025 阅读 · 0 评论 -
unity3d:shader贴图局部改色相HSV+mask
美术mask图规则建筑的部件id为1,2,3,依次类推原图mask图,例如,mask为纯黑色背景,色块为要遮罩的区域。最多支持1个建筑7个部件调整颜色合并后效果这几个区域会根据色相改变部件ID对应maskrgb的色块表建筑部件ID去策划表中拿,找到对应的是门部件之类的,再出mask图中有门的抠图,抠图的颜色从上表中ID对应rgb取。调整完后编辑器的色相参数最好归0shader流程1.把原rgb色彩空间转hsv色彩空间2.取不同rgbmask确定部位编号,然后不同部位取不同色相值原创 2021-09-24 11:38:06 · 1756 阅读 · 1 评论 -
unity3d:UI shader区域mask透明
1.原始图2.mask图可分为24个区域,非编号区域为黑色3.设置区域值 1<<区域1| 1 <<区域2 这种形式点亮需要的区域,这样就点亮区域1,区域2Shader "UI/MaskAreaAlpha" { Properties { _MainTex("Texture", 2D) = "white" {} _Mask("遮罩", 2D) = "white" {} _Area("区域",Int) = 0 _Color("Tint", Color) =原创 2021-10-12 02:18:00 · 1861 阅读 · 0 评论 -
unity3d shader 双面材质
// Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt)Shader "Standard(Two Side)"{ Properties { _Color("Color", Color) = (1,1,1,1) ...原创 2018-04-18 15:24:27 · 3785 阅读 · 4 评论 -
unity3d Shader:Ugui Text 穿透模型与背景显示
Shader代码Shader &quot;CustomUI/FirstText&quot;{ Properties { _MainTex (&quot;Font Texture&quot;, 2D) = &quot;white&quot; {} } SubShader { Tags { &quot;Queue&a原创 2018-04-13 10:59:52 · 1336 阅读 · 1 评论 -
unity3d shader ar任意门(传送门)
通道遮罩 ColorMaskColorMask可以让我们制定渲染结果的输出通道,而不是通常情况下的RGBA这4个通道全部写入。可选参数是 RGBA 的任意组合以及 0, 这将意味着不会写入到任何通道,可以用来单独做一次Z测试,而不将结果写入颜色通道Shader "DepthMask" { SubShader { // Render the mask after r...原创 2018-03-14 21:58:23 · 8492 阅读 · 1 评论 -
unity3d shader控制渲染顺序,Queue,ZWrite,ZTest
Queue渲染队列:按照渲染顺序,从先到后进行排序,队列数越小的,越先渲染,队列数越大的,越后渲染。Background(1000) 最早被渲染的物体的队列。 Geometry (2000) 不透明物体的渲染队列。大多数物体都应该使用该队列进行渲染,也是Unity Shader中默认的渲染队列。 AlphaTest (2450) 有透明通道,需要进行Alpha Test的物体的...原创 2018-02-22 14:31:19 · 4140 阅读 · 2 评论