2018.10.13

小结
咋瓦鲁多!! 先自嗨一下吧。今天匆忙的进入中级部分了。关于渲染路径,前向渲染延迟渲染之类的,感觉可能要多花点时间去理解。平常看书,写代码的时候要细心。今天敲的时候,标签多打了一个字母,结果排错找了半个小时,实在是低效。进入关于阴影部分和渲染队列之后,感觉这个难度上来了。之前都只是依葫芦画瓢,感觉好像懂很多,但是一往底层走就,头疼了。得专心点。(可以没事给自己多提问)
感觉不能老盯着前面那些新手代码看了,得多读点。其实挺纠结的,一方面想彻底吃透,可是这又特别浪费时间,不吃透的话,自己独立敲也敲不出来。是自己学习能力不行吗??

为什么新添加的Pass能够把模型的深度信息写入缓存?
混合等式: RGB + A
渲染路径:决定光照是如何应用到Unity shader中 .。例:分别为每个摄像机使用不同的渲染路径 。
通过对Pass中的标签“LightMode”指定渲染路径。指定渲染路径,系统才能对需要使用的光照变量正确赋值
【前向渲染路径】:渲染该对象渲染图,计算两个缓存区信息。深度缓存区判断是否可见,并决定颜色缓存区的更新。
处理光源的方式:1逐顶点 2 逐像素3 球谐函数 (决定处理方式:光源类型,渲染模式(是否重要))
标签: ForwardBase ForwardAdd 设置标签后添加 #pragma multi_compile_fwdbase 类似编译指令 【顶点照明渲染路径】
【延迟渲染路径】
代码
Shader “Unity Shaders Book/Chapter 8/Alpha Blending With ZWrite” {
Properties {
_Color (“Color Tint”, Color) = (1, 1, 1, 1)
_MainTex (“Main Tex”, 2D) = “white” {}
_AlphaScale (“Alpha Scale”, Range(0, 1)) = 1
}
SubShader {
Tags {“Queue”=“Transparent” “IgnoreProjector”=“True” “RenderType”=“Transparent”}

	// Extra pass that renders to depth buffer only
	Pass {
		ZWrite On
		ColorMask 0
	}
	
	Pass {
		Tags { "LightMode"="ForwardBase" }    //多敲一个e,花了半小时,服了我自己
		
		ZWrite Off
		Blend SrcAlpha OneMinusSrcAlpha
		
		CGPROGRAM
	
		#pragma vertex vert
		#pragma fragment frag
		
		#include "Lighting.cginc"
		
		fixed4 _Color;
		sampler2D _MainTex;
		float4 _MainTex_ST;
		fixed _AlphaScale;
		
		struct a2v {
			float4 vertex : POSITION;
			float3 normal : NORMAL;
			float4 texcoord : TEXCOORD0;
		};
		
		struct v2f {
			float4 pos : SV_POSITION;
			float3 worldNormal : TEXCOORD0;
			float3 worldPos : TEXCOORD1;
			float2 uv : TEXCOORD2;
		};
		
		v2f vert(a2v v) {
			v2f o;
			o.pos = UnityObjectToClipPos(v.vertex);
			
			o.worldNormal = UnityObjectToWorldNormal(v.normal);
			
			o.worldPos = mul(unity_ObjectToWorld, v.vertex).xyz;
			
			o.uv = TRANSFORM_TEX(v.texcoord, _MainTex);
			
			return o;
		}
		
		fixed4 frag(v2f i) : SV_Target {
			fixed3 worldNormal = normalize(i.worldNormal);
			fixed3 worldLightDir = normalize(UnityWorldSpaceLightDir(i.worldPos));
			
			fixed4 texColor = tex2D(_MainTex, i.uv);
			
			fixed3 albedo = texColor.rgb * _Color.rgb;
			
			fixed3 ambient = UNITY_LIGHTMODEL_AMBIENT.xyz * albedo;
			
			fixed3 diffuse = _LightColor0.rgb * albedo * max(0, dot(worldNormal, worldLightDir));
			
			return fixed4(ambient + diffuse, texColor.a * _AlphaScale);
		}
		
		ENDCG
	}
} 
FallBack "Transparent/VertexLit"

}

肥仔快乐套餐,舒服!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
资源包主要包含以下内容: ASP项目源码:每个资源包中都包含完整的ASP项目源码,这些源码采用了经典的ASP技术开发,结构清晰、注释详细,帮助用户轻松理解整个项目的逻辑和实现方式。通过这些源码,用户可以学习到ASP的基本语法、服务器端脚本编写方法、数据库操作、用户权限管理等关键技术。 数据库设计文件:为了方便用户更好地理解系统的后台逻辑,每个项目中都附带了完整的数据库设计文件。这些文件通常包括数据库结构图、数据表设计文档,以及示例数据SQL脚本。用户可以通过这些文件快速搭建项目所需的数据库环境,并了解各个数据表之间的关系和作用。 详细的开发文档:每个资源包都附有详细的开发文档,文档内容包括项目背景介绍、功能模块说明、系统流程图、用户界面设计以及关键代码解析等。这些文档为用户提供了深入的学习材料,使得即便是从零开始的开发者也能逐步掌握项目开发的全过程。 项目演示与使用指南:为帮助用户更好地理解和使用这些ASP项目,每个资源包中都包含项目的演示文件和使用指南。演示文件通常以视频或图文形式展示项目的主要功能和操作流程,使用指南则详细说明了如何配置开发环境、部署项目以及常见问题的解决方法。 毕业设计参考:对于正在准备毕业设计的学生来说,这些资源包是绝佳的参考材料。每个项目不仅功能完善、结构清晰,还符合常见的毕业设计要求和标准。通过这些项目,学生可以学习到如何从零开始构建一个完整的Web系统,并积累丰富的项目经验。
安装Vivado 2018.3的步骤如下所示: 1. 首先,下载安装包,并在没有中文的路径下解压缩。注意,在解压之前最好关闭电脑的杀毒软件,以防止某些文件被拦截或删除。 2. 解压缩完成后,打开文件夹,并双击最底部的安装应用程序。 3. 在欢迎界面点击"Next",然后勾选三个"I Agree",再次点击"Next"。 4. 在版本选择这里,勾选第三项"Vivado HL System Edition",然后点击"Next"。 5. 根据需求,取消勾选几项暂时用不到的选项,以减少磁盘空间占用。 6. 选择软件安装路径,建议选择除C盘以外的其他盘符,并确保路径不含有中文和特殊符号。 7. 点击"Install"开始安装,然后等待安装完成。安装时间的长短取决于电脑性能。 8. 在安装过程中,断开USB下载器的连接(如果有的话)。 9. 在安装过程中,可能会弹出一些对话框,如与Matlab相关的对话框。根据情况点击取消或确定。 10. 安装完成后,打开Vivado软件。但是请注意,如果没有license,只能免费使用30天。 11. 获取license的步骤可以参考文章"vivado2018.3安装注册指南",下载并解压保存license文件到某个文件夹下。 12. 在Vivado软件中,点击"Load License",选择"Copy License",然后选择刚才下载license的路径,安装license。 13. 点击"View License Status"查看license的状态,如果显示为"Bought",表示license已生效。 14. 至此,Vivado 2018.3的安装就完全结束了,现在可以打开软件并开始使用了。 请注意,以上是Vivado 2018.3的安装步骤。具体安装过程中可能会有一些细节和不同的操作,您可以参考文章中的视频教程或其他教程进行安装。 参考文章: vivado2018.3安装注册指南 正点原子提供的安装教程 编译库的存放位置设置在Vivado2018的安装目录下的Modelsim_Vivado_Lib文件夹中。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Vivado 2018.3 安装步骤及 license 获取](https://blog.csdn.net/weixin_42570192/article/details/127471922)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [Vivado:【1】Vivado 2018.3 配置ModelSim仿真](https://blog.csdn.net/Alex497259/article/details/130019331)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值