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

阿里巴巴国际站入驻费用及条件ui设计师培训班

阿里巴巴国际站入驻费用及条件,ui设计师培训班,安徽网站建设案例,东莞松山湖网站建设学习3D开发技术的时候无可避免的要接触到Shader#xff0c;那么Shader是个什么概念呢#xff1f;其实对于开发同事来说还是比较难理解的#xff0c;一般来说Shader是服务于图形渲染的一类技术#xff0c;开发人员可以通过其shader语言来自定义显卡渲染页面的算法#xff0… 学习3D开发技术的时候无可避免的要接触到Shader那么Shader是个什么概念呢其实对于开发同事来说还是比较难理解的一般来说Shader是服务于图形渲染的一类技术开发人员可以通过其shader语言来自定义显卡渲染页面的算法从而达到按照自己的想法来渲染出目标效果。 1. Unity Shader 不同的图形API会对应不同的Shader语言感兴趣的可以去了解下更多这方面的内容。Unity目前开发阶段基于Windows平台开发和运行一般采用Direct3D或OpenGL如需要兼容其他平台可在打包的时候选取对应平台如安卓、IOS等并关注切换后是否存在”粉色“的情况如出现模型表面为”粉色“一般是Shader出现不兼容错误需要修复。 在编码之前我们需要先来了解下Unity常见的几种Shader 1. Surface Shaders 表面着色器 Unity对Vertex/Fragment Shader的又一层包装以使Shader的制作方式更符合人类的思维模式同时可以以极少的代码来完成不同的光照模型与不同平台下需要考虑的事情。 2. Vertex/Fragment Shaders 顶点/片段着色器(重要) 一般的顶点片段着色器的工作原理如下图所示 a. 顶点处理顶点着色器 主要执行坐标转换和逐顶点光照的任务坐标转换是将顶点坐标从模型空间转换到齐次裁剪空间中可以使用UnityObjectToClipPos()函数来实现。 b. 图元处理 在裁剪空间中进行裁剪Clipping、背面剔除Back-Face Culling、屏幕映射ScreenMapping等操作。为的是剔除不需要的顶点/面并做好三维坐标到二维屏幕坐标的转换。 c. 光栅化 是将变换到屏幕空间的图元离散化为片元的过程。 d. 片段处理片段着色器 (1). 纹理贴图 - Textures 纹理贴图也称为纹理映射是将图像信息映射到三角形网格上的技术以此来增加物体表面的细节令物体更具有真实感。 (2). 光照计算 - Lighting 光照由直接光和间接光组成计算光照最常用的就是phong模型了它是一个经验模型参数信息都是经验得到的并没有实际的物理意义所以利用Phong模型会出现违背物理规则的时候。 漫反射Difuse 镜面发射Specular 环境光Ambient Phong (3). 混合与测试 输出合并Output-Merger在DirectX中该阶段被称为输出合并阶段而OpenGL将其称为逐片元操作Per-Fragment Operations从称呼中就可以看出这个阶段主要是对每一个片元进行一些输出合并操作包括Alpha测试、模板测试、深度测试和混合等它的主要任务是决定片元的可见性对通过测试的片元颜色进行混合 Alpha测试通过片元数据可以获取该片元的alpha值如果alpha值小于某个数的话则直接将该片元丢弃不进行渲染 模板测试GPU会首先读取模板缓冲区中该片元位置的模板值然后将该值和读取到的参考值进行比较例如小于时舍弃该片元或者大于等于时舍弃该片元。 深度测试近处的物体会遮挡远处的物体这种效果我们可以通过深度测试来模拟实现。 混合对于半透明物体我们就需要使用混合操作来让这个物体看起来是透明的 e. 帧缓存 可以简单理解为一个临时画布,GPU渲染完成的信息会存放在帧缓存区,等待使用上述各种测试也是在帧缓冲区进行的 以下这个图更容易理解 自己理解简而言之就是 描点坐标变换-  连线三角面- 形成格子光栅化- 上色纹理、光照、 - 后期处理测试、混合 2. 几个和Shader相关的概念 1网格Mesh 网格Mesh是GameObject的3D骨架它是有顶点Vertex定义的一个2D多边形这些顶点是3D空间中存储为XYZ坐标。网格还包括法线Shader通过法线让面看起来更光滑。 2贴图、纹理(Maps、textures) 纹理Texture2D 图像文件它像一张纸一样环绕GameObject以设置网格中的颜色、镜面反射或金属度、物理纹理和其他属性。图像文件的数据被组织为通道RGB/RGBA。 底图纹理Base Map Texture一个常规 RGB 或 RGBA 彩色图像文件用于定义对象表面的漫反射即颜色 平铺纹理Tiled Texture平铺纹理的纹理设计为围绕任何网格平铺。每个文件中的地图就像地板上的瓷砖一样简单地重复 UV贴图对于像球体这样的基元和像我们的块这样的简单形状纹理贴图在哪些点与对象的网格对齐并不重要。但是在角色模型等详细对象上纹理贴图与网格的对齐非常重要 Alpha裁剪Alpha Clip根据Mesh网格填充纹理避免大量计算。也可用于溶解效果、消失/出现效果 凹凸贴图Bump Texture使用凹凸贴图着色器将表面细节的外观添加到网格中而无需实际添加多边形。这种技术对性能更好。使用法线贴图和高度贴图normal maps and height maps 法线贴图通过设置顶点位置使着色器创建表面上的片段像素面向不同方向的错觉。 高度贴图设置网格中每个像素的相对高度 遮挡贴图Occlusion Map遮挡贴图为这些遮挡区域添加阴影。 发射贴图Emission Map制作发光效果的贴图 2反射 环境光遮蔽AO(Occlusion)大部分情况下AO通过构造一个发射光线的半hemisphere来计算。半球上表面布满朝各个方向发射的光线然后判断这些光线是否与其它的物体相交。如果光线到达背景或者天空那么就增加这个光线发出点的表面亮度如果与其他物体相交则不用。靠得非常近的物体之间的阴影效果会非常明显 漫反射Base map 1. 反照率Albedo描述了漫反射的测量。它通常指定为常规颜色表示为红色、绿色和蓝色的三个值RGB 值。RGB 值可以转换为色调、饱和度和亮度亮度的值。反照率颜色的亮度对应于漫反射的量色调和饱和度描述了从表面逸出的光的质量。 2. 地图Map地图可以是纯色的也可以用 2D 图像指定以增加表面的变化。 镜面反射Specular镜面反射作为材料的一种属性是一种指定表面看起来像金属的方法。您可以使用两种工作流程来指定材质中的金属外观——Specular、Metallic 平滑度Smoothness平滑度也称为光泽度或光泽度使镜面反射成为焦点。 3. 如何编写Shader 1. ShaderLab ShaderLab 是一种在着色器源文件中使用的类C语言的声明性语言。它使用嵌套大括号语法来描述 Shader 对象。其结构如下 Shader Examples/ShaderSyntax {CustomEditor ExampleCustomEditorProperties{// 此处是材质属性声明}SubShader{// 此处是定义子着色器的其余代码Pass{// 此处是定义通道的代码}}Fallback ExampleFallbackShader } ShaderLab是一种声明式语言格式来编写Shader可在代码自由编写Shader支持的所有特性和属性并设置回退行为。 2. HLSL 都是着色语言作为中间语言Intermediate Language即交给GPU可以理解的语言。 因为Microsoft和NVIDIA合作所以Cg/HLSL实际上是同一种语言。而ShaderLab内部可以嵌套Cg/HLSL语言编写着色代码需要嵌套在命令CGPROGRAM和ENDCG之间。如下 Pass // Pass 的标签和状态设置CGPROGRAM// 编译指令#pargma vertex vert#pargma fragment frag// CG代码ENDCG// 其他设置 /pre
http://www.hkea.cn/news/14524862/

相关文章:

  • 网站建设vps建设网站的价格表
  • 漯河做网站哪家好花桥网站建设公司
  • 沈阳网站设计推广做一套网站多钱
  • 石家庄有什么做网站的公司网站开发 功能不会写
  • 学网站建设软件开发潍坊网站建设联系方式
  • 网站开发在哪个科目核算做营销网站哪家好
  • 同仁行业网站建设报价wordpress迁移空间插件
  • 网站上添加百度地图阿里巴巴装修网站
  • 怎么看网站是用什么系统做的免费在线观看电影电视剧网站
  • 做毕设网站多少钱教育网站模块建设
  • 设计师对网站的意义网页模板是已经做好的
  • 网站建设前的功能网站反链增加
  • 网站建设山东公司haai商城网站建设公司排名
  • 网站建设 动态添加内容seo网络专员招聘
  • 南通网站建设seo河南有名的做网站公司有哪些
  • 长沙网站seo推广公司哪家好门户网站 解决方案
  • 网络营销是什么的具体应用seo网络推广知识
  • 抚州网站开发淘宝美工做倒计时图片网站
  • vps空间如何做网站备份建行企业银行官网
  • angularjs后台管理系统网站深圳家具设计公司排名
  • 辽宁丹东建设厅网站怎么设计公司商标
  • 云南建设注册考试中心网站app太仓手机网站建设价格
  • 西安seo网站管理如何建立自己的购物网站
  • 购物网站有哪些?中投建设集团有限公司 网站
  • 网站的友情连接怎么做企业网站源码模板
  • 中国建设局网站首页白酒网站源码
  • 做网站送域名和邮箱岚县网站建设
  • 路由器做内部网站服务器厦门网站建设公司哪个好
  • 网站建设中国十强七牛云建网站
  • centos做网站百度竞价推广招聘