当前位置: 首页 > news >正文

新华社两学一做网站怎么在百度上做公司网页

新华社两学一做网站,怎么在百度上做公司网页,陈铭生个人资料简介,公司网站网站不备案0 、分析 在前向渲染中,对于逐像素光源来说,①ForwardBase中只计算一个平行光,其他的光都是在FowardAdd中计算的,所以为了能够渲染出其他的光照,需要在第二个Pass中再来一遍光照计算。 而有所区别的操作是&#xff0…

 0 、分析

在前向渲染中,对于逐像素光源来说,①ForwardBase中只计算一个平行光,其他的光都是在FowardAdd中计算的,所以为了能够渲染出其他的光照,需要在第二个Pass中再来一遍光照计算。

而有所区别的操作是,②FowardAdd的Pass要能够针对 不同类型的光源 做出不同的计算方法,因为在这个pass中要处理的就不仅仅是一个平行光了,各种灯光都有可能。
虽然所有光在本质上照亮的原理都是一样的,但由于他们的 形式 有点不同,从宏观来看 参数会有所不同,例如平行光是没有衰减的,放置在不同位置也是没有区别的,而点光源恰恰相反,光亮与光源的位置关系是紧密挂钩的。

所以内容分为两个部分,1.  两种光在计算上有何不同,2. 如何利用 变体 来实现不同分支的计算。


一、平行光与点光源的不同

1. 光的方向

形式的区别不再赘述,而在shader中的区别在于:虽然他们的光源数据都是存储在 _WorldSpaceLightPos0 中的,但是一个表示光的方向 而另一个表示光的位置。

对于平行光来说,_WorldSpaceLightPos0.xyz就能表示光的方向(w为0);

对点光源来说,_WorldSpaceLightPos0.xyz表示的是光的位置(w为1),而光的方向需要 再减去物体顶点位置 得到。

2. 光的衰减

对于平行光来说,是没有光的衰减的;

对于点光源来说,光会随着距离衰减,其衰减与 距离平方的倒数 成正相关  [球的表面积公式为4ΠR² ] 

二、着色器变体

着色器变体的分支 结合了静态(#if 宏定义)和动态(if 语句判断)的特点:编译时会先生成多个版本的静态分支,运行时再动态地选择要执行的版本。


三、 核心操作

1. 第一个ForwardBase的pass,获取光照实现PBS

//PBS
UnityLight directLight = (UnityLight)0;
directLight.color = _LightColor0.xyz;
directLight.dir = l;UnityIndirect indirectLight = (UnityIndirect)0;
indirectLight.diffuse = 0;
indirectLight.specular = 0;return UNITY_BRDF_PBS(albedo, _SpecColor, OneMinusReflectivity, _SpecPower, n, e, CreateLight(i), indirectLight );

2. 复制出第二个ForwardAdd的pass

        这里代码的复用我使用了 Unity Shader代码复用的2个方法-CSDN博客 中抽离为cginc的方法。

3. ForwardAdd中创建出两个变体分支    

4. 实现点光源不同的地方

        将获取直接光照的代码封装成一个单独的函数,实现其两个分支的不同算法。

UnityLight CreateLight(v2f i){UnityLight directLight = (UnityLight)0;#if defined(POINT)float3 lightVec = _WorldSpaceLightPos0.xyz - i.posWorld;//光方向#elsefloat3 lightVec = _WorldSpaceLightPos0.xyz ;#endif//float3 att = 1 / (1 + dot(lightVec, lightVec));//光的衰减,和距离平方的倒数成正相关,+1是为了防曝光UNITY_LIGHT_ATTENUATION(att, 0, i.posWorld);directLight.color = _LightColor0.rgb * att;directLight.dir = normalize(lightVec);return directLight;
}

http://www.yayakq.cn/news/513022/

相关文章:

  • 黄山做网站公司ps个人网站首页怎么制作
  • 常州建设网站公司注册公司的好处和坏处
  • 北京网站运营优化公司云空间可以做网站
  • 国家icp备案查询系统优化推广方案
  • 怎么给网站做域名重定向外链工具下载
  • 合肥公司网站搭建服务商可以做产品推广的网站
  • 网站空间如何申请h5网站建设需要哪些资料
  • 毕业设计题网站开发营销型网站5要素
  • 用jsp做的网站框架如何在微信上建立公众号
  • 用手机做网站服务器网站验收时项目建设总结报告
  • 惠州有做网站的吗扫码推广平台
  • 关键词工具网站北京网站软件制作
  • 盘锦威旺做网站市场监督管理局电话号码
  • 山东省专业群建设网站青海城乡建设部网站
  • 网站自己做服务器综合性门户网站有哪些
  • 站长工具官方网上海 餐饮网站建设 会员系统
  • 自适应型网站建设哪家便宜新东方一对一辅导价格
  • 开发网站步骤WordPress集成tipask
  • 云南建设厅网站删除百度人工投诉电话是多少
  • 长宁网站建设制作南宁网站建设长春
  • 网站备案怎样提交管局邯郸市博物馆
  • 网站上线 串词山东建设监理协会官方网站
  • 合肥品牌网站建设wordpress如何做付费页面
  • 自助建站系统免授权版在网上注册公司的流程
  • 丽江手机网站建设黑龙江建设培训网站
  • 自己做导航网站建简单网站
  • 做特产的网站的分析西部数码网站管理助手v4.0
  • sns社交网站有哪些wordpress自动分享
  • 当前网站建设的主要方法教育网站开发价钱
  • 给素材网站做签约设计不想做了网站建设需要具备哪些知识