位置: 编程技术 - 正文

unity3d游戏开发之简单的透明shader技能培训(Unity3D游戏开发培训课程大纲)

编辑:rootadmin

推荐整理分享unity3d游戏开发之简单的透明shader技能培训(Unity3D游戏开发培训课程大纲),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:Unity3D游戏开发培训课程大纲,Unity3D游戏开发毕业论文,unity3D游戏开发,Unity3D游戏开发(第2版)pdf,unity3D游戏开发,Unity3D游戏开发毕业论文,Unity3D游戏开发标准教程,Unity3D游戏开发标准教程,内容如对您有帮助,希望把文章链接给更多的朋友!

下面我们开始今天的Unity3D游戏开发技能透明shader技能培训。 我们学习Unity3D培训目标:让U3D初学者可以更快速的掌握U3D技术,自行制作修改素材,可以独立完成2D、3D小规模游戏及网页游戏开发。

unity3d游戏开发之简单的透明shader技能培训(Unity3D游戏开发培训课程大纲)

[plain] view plaincopy

// Shader created with Shader Forge Beta 0. // Shader Forge (c) Joachim Holmer - // Note: Manually altering this data may prevent you from opening it in Shader Forge /*SF_DATA;ver:0.;sub:START;pass:START;ps:flbk:,lico:1,lgpr:1,nrmq:1,limd:1,uamb:True,mssp:True,lmpd:False,lprd:False,enco:False,frtr:True,vitr:True,dbil:False,rmgx:True,rpth:0,hqsc:True,hqlp:False,blpr:1,bsrc:3,bdst:7,culm:0,dpts:2,wrdp:False,ufog:True,aust:True,igpj:True,qofs:0,qpre:3,rntp:2,fgom:False,fgoc:False,fgod:False,fgor:False,fgmd:0,fgcr:0.5,fgcg:0.5,fgcb:0.5,fgca:1,fgde:0.,fgrn:0,fgrf:,ofsf:0,ofsu:0,f2p0:False;n:type:ShaderForge.SFN_Final,id:3,x:,y:|diff--RGB,alpha--OUT;n:type:ShaderForge.SFN_Fresnel,id:,x:,y:;n:type:ShaderForge.SFN_Color,id:,x:,y:,ptlb:Color,ptin:_Color,glob:False,c1:1,c2:1,c3:1,c4:1;proporder:;pass:END;sub:END;*/ Shader "Custom/Shader1" { Properties { _Color ("Color", Color) = (1,1,1,1) [HideInInspector]_Cutoff ("Alpha cutoff", Range(0,1)) = 0.5 } SubShader { Tags { "IgnoreProjector"="True" "Queue"="Transparent" "RenderType"="Transparent" } LOD Pass { Name "ForwardBase" Tags { "LightMode"="ForwardBase" } Blend SrcAlpha OneMinusSrcAlpha ZWrite Off CGPROGRAM #pragma vertex vert #pragma fragment frag #define UNITY_PASS_FORWARDBASE #include "UnityCG.cginc" #pragma multi_compile_fwdbase #pragma exclude_renderers xbox ps3 flash d3d_9x #pragma target 3.0 uniform float4 _LightColor0; uniform float4 _Color; struct VertexInput { float4 vertex : POSITION; float3 normal : NORMAL; }; struct VertexOutput { float4 pos : SV_POSITION; float4 posWorld : TEXCOORD0; float3 normalDir : TEXCOORD1; }; VertexOutput vert (VertexInput v) { VertexOutput o; o.normalDir = mul(float4(v.normal,0), _World2Object).xyz; o.posWorld = mul(_Object2World, v.vertex); o.pos = mul(UNITY_MATRIX_MVP, v.vertex); return o; } fixed4 frag(VertexOutput i) : COLOR { i.normalDir = normalize(i.normalDir); float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); /////// Normals: float3 normalDirection = i.normalDir; float3 lightDirection = normalize(_WorldSpaceLightPos0.xyz); ////// Lighting: float attenuation = 1; float3 attenColor = attenuation * _LightColor0.xyz; /////// Diffuse: float NdotL = dot( normalDirection, lightDirection ); float3 diffuse = max( 0.0, NdotL) * attenColor &#; UNITY_LIGHTMODEL_AMBIENT.rgb; float3 finalColor = 0; float3 diffuseLight = diffuse; finalColor &#;= diffuseLight * _Color.rgb; /// Final Color: return fixed4(finalColor,(1.0-max(0,dot(normalDirection, viewDirection)))); } ENDCG } Pass { Name "ForwardAdd" Tags { "LightMode"="ForwardAdd" } Blend One One ZWrite Off Fog { Color (0,0,0,0) } CGPROGRAM #pragma vertex vert #pragma fragment frag #define UNITY_PASS_FORWARDADD #include "UnityCG.cginc" #include "AutoLight.cginc" #pragma multi_compile_fwdadd #pragma exclude_renderers xbox ps3 flash d3d_9x #pragma target 3.0 uniform float4 _LightColor0; uniform float4 _Color; struct VertexInput { float4 vertex : POSITION; float3 normal : NORMAL; }; struct VertexOutput { float4 pos : SV_POSITION; float4 posWorld : TEXCOORD0; float3 normalDir : TEXCOORD1; LIGHTING_COORDS(2,3) }; VertexOutput vert (VertexInput v) { VertexOutput o; o.normalDir = mul(float4(v.normal,0), _World2Object).xyz; o.posWorld = mul(_Object2World, v.vertex); o.pos = mul(UNITY_MATRIX_MVP, v.vertex); TRANSFER_VERTEX_TO_FRAGMENT(o) return o; } fixed4 frag(VertexOutput i) : COLOR { i.normalDir = normalize(i.normalDir); float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz); /////// Normals: float3 normalDirection = i.normalDir; float3 lightDirection = normalize(lerp(_WorldSpaceLightPos0.xyz, _WorldSpaceLightPos0.xyz - i.posWorld.xyz,_WorldSpaceLightPos0.w)); ////// Lighting: float attenuation = LIGHT_ATTENUATION(i); float3 attenColor = attenuation * _LightColor0.xyz; /////// Diffuse: float NdotL = dot( normalDirection, lightDirection ); float3 diffuse = max( 0.0, NdotL) * attenColor; float3 finalColor = 0; float3 diffuseLight = diffuse; finalColor &#;= diffuseLight * _Color.rgb; /// Final Color: return fixed4(finalColor * (1.0-max(0,dot(normalDirection, viewDirection))),0); } ENDCG } } FallBack "Diffuse" CustomEditor "ShaderForgeMaterialInspector" }

更多精彩unity3d技术文章请点击

Unity3D游戏开发之实现血条技能培训 喜欢我的博客请记住我的名字:秦元培,我的博客地址是

Unity3D游戏开发之伤害数值显示 喜欢我的博客请记住我的名字:秦元培,我的博客地址是

unity常见问题之题 欢迎来到unity学习、unity培训、unity企业培训教育专区,这里有很多U3D资源、U3D培训视频、U3D教程、U3D常见问题、U3D项目源码,我们致力于打造业内unity3d

标签: Unity3D游戏开发培训课程大纲

本文链接地址:https://www.jiuchutong.com/biancheng/372915.html 转载请保留说明!

上一篇:Unity3D游戏开发之网络游戏服务器架构设计培训(如何做一名主程)(Unity3D游戏开发引擎)

下一篇:Unity3D游戏开发之实现血条技能培训(Unity3D游戏开发pdf)

  • 预收账款什么时候确认收入
  • 个人所得税手续费返还要交企业所得税吗
  • 金税四期如何应对
  • 支付宝理财提现到银行卡有费用吗
  • 食堂临聘人员的管理、考核
  • 会议服务费怎么开
  • 小额贷款公司的钱从哪里来
  • 同一控制下企业合并和非同一控制下企业合并的区别
  • 企业开办时间是什么意思
  • 公司购买软件著作权
  • 未开票收入结转成本年利润怎么算
  • 季度交的企业所得税怎么做账
  • 一次性工伤医疗补助金和一次性伤残补助金
  • 企业支付的工伤赔偿需要什么材料
  • 按税收规定计算的扣除额公益性捐赠
  • 车间固定资产折旧属于什么科目
  • 递延所得税费用影响净利润吗
  • 专票住宿费认证怎么操作
  • 如何开具红字专用发票信息表
  • 清包工程增值税税率
  • 药用植物所
  • 个税申报中工资薪金是不是全年实际工资
  • 记账凭证的科目不会填
  • 应收款计提
  • 技术服务费增值税可以抵扣吗
  • win11和win10哪个玩游戏好
  • windows10如何关闭病毒和威胁防护设置
  • 员工意外伤害保险怎么买
  • 企业收入确认的依据是什么
  • 增值税当月申报次月缴纳吗
  • u盘装系统?
  • windows8.1下Apache+Php+MySQL配置步骤
  • 现金发放的餐补算工资么
  • 个人所得税手续费比例
  • 售后回购怎么做账务处理
  • vue click触发两次
  • 口腔门诊提供免费服务有哪些?
  • 酒吧会计要做些什么
  • 预算会计与财务会计适度分离
  • 合伙企业利润分配原则
  • 专利代理服务费计入什么科目
  • 工费经费的计税依据要扣除含税部分吗
  • 谷歌浏览器调试窗口怎么放下面
  • mla指令
  • fstrim命令
  • 工业总产值和营业收入区别
  • 工程结算期末有余额吗?
  • 织梦面包屑导航最后的分隔符大于号去掉方法
  • 跨年度错账调整分录
  • 增值税申报表第18栏怎么来的
  • 固定资产核算应包括什么
  • 金融放贷工作具体做什么
  • 水电费发票没有可以用其他发票抵吗
  • 定额备用金怎么做分录
  • 预算单位授权支付专户的特征
  • 怎么算股本溢价
  • 未分配利润是负数怎么消化掉
  • 固定资产报废的变卖收入计入哪个科目
  • 售后租回会计处理分录
  • 存货期末计量按什么分类
  • 新买的车没有牌能上路吗
  • 息税前利润是什么税之前
  • WINDOWS系统无法正常启动
  • iis503如何解决
  • incorrect email format, please re-enter.
  • xp系统怎么隐藏文件
  • NkbMonitor.exe - NkbMonitor是什么进程文件 有什么作用
  • cocos2d安装
  • msvc命令行
  • django环境配置
  • javascript如何学
  • 对activity的四种启动模式的理解
  • easyui怎么用
  • Zero Clipboard实现浏览器复制到剪贴板的方法(多个复制按钮)
  • Javascript字符串奇数位替换
  • javascript文档对象
  • android的中文
  • 非税收入发票盖什么章
  • 发票扫码抽奖用什么软件
  • 陕西省医保缴费截止日期2024
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设