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

自己怎么建设手机网站免费咨询医生平台

自己怎么建设手机网站,免费咨询医生平台,wordpress被刷搜索,学校网站 源码前言 在Unity3D移动开发中#xff0c;选择合适的Shader是非常重要的#xff0c;它直接影响到游戏的性能和画面效果。本文将介绍如何依据性能选择Shader#xff0c;并给出相应的技术详解以及代码实现。 对惹#xff0c;这里有一个游戏开发交流小组#xff0c;希望大家可以…前言 在Unity3D移动开发中选择合适的Shader是非常重要的它直接影响到游戏的性能和画面效果。本文将介绍如何依据性能选择Shader并给出相应的技术详解以及代码实现。 对惹这里有一个游戏开发交流小组希望大家可以点击进来一起交流一下开发经验呀 一、了解Shader的基本概念 在Unity3D中Shader是一种用于控制图形渲染的程序。它可以定义物体的颜色、光照、材质等属性。Shader由一系列的Shader Pass组成每个Pass定义了一种渲染方式。在移动开发中我们通常使用的是Surface Shader它是一种高级Shader可以方便地定义物体的外观。 二、性能选择Shader的原则 尽量使用简单的Shader 在移动设备上性能是一个非常重要的考虑因素。因此我们应该尽量使用简单的Shader避免使用过于复杂的计算和纹理。简单的Shader可以提高渲染效率减少绘制调用次数从而提高游戏的性能。 避免使用动态的Shader特性 在移动设备上动态的Shader特性如透明度、反射等会增加额外的计算和内存开销。因此我们应该尽量避免使用这些特性或者在性能要求较高的场景中禁用它们。 使用合适的纹理压缩格式 在移动设备上纹理的内存占用是一个非常重要的因素。因此我们应该选择合适的纹理压缩格式以减少纹理的内存占用。常见的纹理压缩格式有ETC、PVRTC、ASTC等。 合理使用LODLevel of Detail 在移动设备上LOD是一种非常重要的优化手段。它可以根据物体的距离调整物体的细节级别从而减少渲染的开销。因此我们应该合理地使用LOD尽量减少不必要的细节绘制。 三、技术详解和代码实现 使用简单的Shader 在Unity3D中我们可以使用Surface Shader来定义物体的外观。Surface Shader是一种高级Shader可以方便地定义物体的颜色和光照等属性。下面是一个简单的Surface Shader的示例代码 Shader Custom/SimpleShader {Properties{_Color(Color, Color) (1,1,1,1)}SubShader{Tags { RenderTypeOpaque }CGPROGRAM#pragma surface surf Lambertstruct Input{float2 uv_MainTex;};sampler2D _MainTex;fixed4 _Color;void surf (Input IN, inout SurfaceOutput o){fixed4 c tex2D (_MainTex, IN.uv_MainTex) * _Color;o.Albedo c.rgb;o.Alpha c.a;}ENDCG}FallBack Diffuse } 在这个示例中我们使用了Lambert光照模型并定义了一个_Color属性来控制物体的颜色。在surf函数中我们使用tex2D函数来获取纹理的颜色并将其乘以_Color属性来计算物体的最终颜色。 避免使用动态的Shader特性 在移动设备上动态的Shader特性会增加额外的计算和内存开销。因此我们应该尽量避免使用这些特性或者在性能要求较高的场景中禁用它们。下面是一个禁用透明度特性的示例代码 Shader Custom/NoAlphaShader {Properties{_Color(Color, Color) (1,1,1,1)}SubShader{Tags { RenderTypeOpaque }CGPROGRAM#pragma surface surf Lambertstruct Input{float2 uv_MainTex;};sampler2D _MainTex;fixed4 _Color;void surf (Input IN, inout SurfaceOutput o){fixed4 c tex2D (_MainTex, IN.uv_MainTex) * _Color;o.Albedo c.rgb;o.Alpha 1; // 禁用透明度特性}ENDCG}FallBack Diffuse } 在这个示例中我们将物体的透明度设置为1从而禁用了透明度特性。 使用合适的纹理压缩格式 在移动设备上纹理的内存占用是一个非常重要的因素。因此我们应该选择合适的纹理压缩格式以减少纹理的内存占用。下面是一个使用ETC纹理压缩格式的示例代码 Shader Custom/ETCShader {Properties{_MainTex(Texture, 2D) white {}}SubShader{Tags { RenderTypeOpaque }CGPROGRAM#pragma surface surf Lambertstruct Input{float2 uv_MainTex;};sampler2D _MainTex;void surf (Input IN, inout SurfaceOutput o){fixed4 c tex2D (_MainTex, IN.uv_MainTex);o.Albedo c.rgb;o.Alpha c.a;}ENDCG}FallBack Diffuse } 在这个示例中我们使用了ETC纹理压缩格式来减少纹理的内存占用。 合理使用LOD 在移动设备上LOD是一种非常重要的优化手段。它可以根据物体的距离调整物体的细节级别从而减少渲染的开销。下面是一个使用LOD的示例代码 Shader Custom/LODShader {Properties{_MainTex(Texture, 2D) white {}}SubShader{LOD 100Tags { RenderTypeOpaque }CGPROGRAM#pragma surface surf Lambertstruct Input{float2 uv_MainTex;};sampler2D _MainTex;void surf (Input IN, inout SurfaceOutput o){fixed4 c tex2Dlod (_MainTex, float4(IN.uv_MainTex, 0, 0));o.Albedo c.rgb;o.Alpha c.a;}ENDCG}FallBack Diffuse } 在这个示例中我们使用LOD 100来表示在物体距离摄像机超过100个单位时使用较低的细节级别来渲染物体。 总结 在Unity3D移动开发中选择合适的Shader是非常重要的。我们可以根据性能要求选择简单的Shader并避免使用动态的Shader特性。此外我们还可以选择合适的纹理压缩格式和合理使用LOD来优化游戏的性能。希望本文对您在Unity3D移动开发中选择合适的Shader有所帮助。 更多教学视频 https://www.bycwedu.com/promotion_channels/1928452950
http://www.w-s-a.com/news/789844/

相关文章:

  • 手机h5网站企业网站管理系统的运维服务
  • 南京建设网站公司网站游戏怎么制作
  • 成都建站程序苏州市建设局招标网站首页
  • 自助建网站市场公司起名大全2020最新版的
  • dede网站模板北京 网站开发 大兴
  • 网站优化师招聘建设牌安全带官方网站
  • 南京网站建设网站做视频网站用什么格式
  • 普陀做网站价格wordpress接入qq互联
  • 网站2级页面怎么做杭州哪家做外贸网站
  • 做了静态网站怎么显示在互联网上营销策划与运营方案
  • 常见的英文网站国内军事新闻大事件
  • 傻瓜式做网站程序微信怎么开公众号
  • c2c电商网站wordpress仿36kr主题
  • 网站建设公司开发免费图纸网站
  • 一个网站页面设计多少钱做预算查价格的网站是哪个
  • 鳌江哪里有做网站百度短链接在线生成
  • 有没有什么做水利资料的网站杭州建设信用平台
  • 电子商务网站建设及推广方案论文wordpress无法显示文章
  • 建设工程监理网站前端和后端分别需要学什么
  • 公司网站制作效果国内最好的在线网站建设
  • 徐州好点的做网站的公司有哪些wordpress 工具插件下载
  • 如何用云服务器建设网站微网站免费开发平台
  • 官网的网站设计公司做网站需要准备哪些东西
  • 程序员和做网站那个好找工作wordpress二维码 插件
  • 湖南城市建设技术学院官方网站青海省建设局网站
  • 响应式网站有什么区别百度网站官网
  • 金华企业自助建站系统长沙建站公司模板
  • 云主机 做网站友情链接网站
  • 定制型网站设计天津网站模板建站
  • 为什么公司网站打开很慢wordpress汉化插件