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

电子商务网络平台建设北京百度推广seo

电子商务网络平台建设,北京百度推广seo,保定建设信息网站,太原免费网络推广哪里朿目录 前言 WebGL支持的三种精度 数据类型的默认精度 float类型没有默认精度 预处理指令 在GLSL ES中常用的三种预处理指令。 预定义的内置宏 前言 GLSL ES新引入了精度限定字,目的是帮助着色器程序提高运行效率,削减内存开支。顾名思义&#xf…

目录

前言

WebGL支持的三种精度

数据类型的默认精度

float类型没有默认精度 

预处理指令

在GLSL ES中常用的三种预处理指令。

预定义的内置宏


前言

GLSL ES新引入了精度限定字,目的是帮助着色器程序提高运行效率,削减内存开支。顾名思义,精度限定字用来表示每种数据具有的精度(比特数)。简而言之,高精度的程序需要更大的开销(包括更大的内存和更久的计算时间),而低精度的程序需要的开销则小得多。使用精度限定字,你就能精细地控制程序在效果和性能间的平衡。然而,精度限定字是可选的,如果你不确定,可以使用下面这个适中的默认值:

由于WebGL是基于OpenGL ES 2.0的,WebGL程序最后有可能运行在各种各样的硬件平台上。肯定存在某些情况需要在低精度下运行程序,以提高内存使用效率,减少性能开销,以及更重要的,降低能耗,延长移动设备的电池续航能力。

注意,在低精度下,WebGL程序的运行结果会比较粗糙或不准确,你必须在程序效果和性能间进行平衡。

WebGL支持的三种精度

如下图所示,WebGL程序支持三种精度,其限定字分别为highp(高精度)mediump(中精度)lowp(低精度)。 

还有两点值得注意。首先,在某些WebGL环境中,片元着色器可能不支持highp精度检查(其是否支持)的方法稍后再讨论(见下:预处理指令);其次,数值范围和精度实际上也是与系统环境相关的,你可以使用gl.getShaderPrecisionFormat()来检查。

下面是声明变量精度的几个例子:

为每个变量都声明精度很繁琐,我们也可以使用关键字precision来声明着色器的默认精度,这行代码必须在顶点着色器或片元着色器的顶部,其格式如下:

这句代码表示,在着色器中,某种类型的变量其默认精度由精度限定字指定。也就是说,接下来所有不以精度限定字修饰的该类型变量,其精度就是默认精度。比如:

 

上面这段代码表示,所有float类型以及相关的vec2和mat3的变量都是中精度的,所有整型变量都是高精度的。比如,vec4类型变量的四个分量都是中精度的。 

对于某些类型,着色器已经实现了默认的精度,只有片元着色器中的float类型没有默认精度。如表所示。

数据类型的默认精度

float类型没有默认精度 

事实就是,片元着色器中的float类型没有默认精度,我们需要手动指定。如果我们不在片元着色器中限定float类型的精度,就会导致如下的编译错误:

 

WebGL是否在片元着色器中支持highp精度,取决于具体的设备。如果其支持的话,那么着色器就会定义内置宏GL_FRAGMENT_PRECISION_HIGH。 

预处理指令

GLSL ES支持预处理指令。预处理指令用来在真正编译之前对代码进行预处理,都以井号(#)开始。例:

这段代码检查了是否已经定义了GL_ES宏,如果是,那就执行#ifdef和#endif之间的部分。

在GLSL ES中常用的三种预处理指令。

你可以使用#define指令进行宏定义。

你可以使用#undef指令解除宏定义:

你可以使用#else指令配合#ifdef(就像JavaScript中if语句中的else),比如: 

宏的名称可以任意起,只要不和预定义的内置宏名称相同即可。

预定义的内置宏

所以,我们可以这样使用宏来进行精度限定:(判断当前WebGL环境是否支持高精度,如果有预定义GL_FRAGMENT_PRECISION_HIGH内置宏,则浮点型为高精度) 

 


文章转载自:
http://planoblast.tbjb.cn
http://leprose.tbjb.cn
http://amplificatory.tbjb.cn
http://thinnish.tbjb.cn
http://nitrosobacteria.tbjb.cn
http://peruse.tbjb.cn
http://pledget.tbjb.cn
http://synanthy.tbjb.cn
http://inflector.tbjb.cn
http://caner.tbjb.cn
http://nonlead.tbjb.cn
http://foliature.tbjb.cn
http://pollux.tbjb.cn
http://below.tbjb.cn
http://ashler.tbjb.cn
http://morganite.tbjb.cn
http://unmoor.tbjb.cn
http://deploitation.tbjb.cn
http://kcps.tbjb.cn
http://toffee.tbjb.cn
http://azotobacter.tbjb.cn
http://successively.tbjb.cn
http://derris.tbjb.cn
http://arguable.tbjb.cn
http://acquit.tbjb.cn
http://constantly.tbjb.cn
http://panettone.tbjb.cn
http://fortuneteller.tbjb.cn
http://girlhood.tbjb.cn
http://abiogenist.tbjb.cn
http://photobiologic.tbjb.cn
http://nome.tbjb.cn
http://immanuel.tbjb.cn
http://yokefellow.tbjb.cn
http://dissimulator.tbjb.cn
http://hiss.tbjb.cn
http://undersell.tbjb.cn
http://caritas.tbjb.cn
http://salvoconducto.tbjb.cn
http://confederation.tbjb.cn
http://theatre.tbjb.cn
http://expletive.tbjb.cn
http://hematoma.tbjb.cn
http://seamark.tbjb.cn
http://jor.tbjb.cn
http://monopteros.tbjb.cn
http://legless.tbjb.cn
http://hestia.tbjb.cn
http://boney.tbjb.cn
http://blameworthy.tbjb.cn
http://sutra.tbjb.cn
http://directory.tbjb.cn
http://phobia.tbjb.cn
http://gadhelic.tbjb.cn
http://settleable.tbjb.cn
http://ecumene.tbjb.cn
http://traumatology.tbjb.cn
http://crinoline.tbjb.cn
http://downy.tbjb.cn
http://obtained.tbjb.cn
http://inductivism.tbjb.cn
http://grum.tbjb.cn
http://gel.tbjb.cn
http://immunoprecipitate.tbjb.cn
http://pessary.tbjb.cn
http://semioval.tbjb.cn
http://prudential.tbjb.cn
http://verdure.tbjb.cn
http://forebay.tbjb.cn
http://fieldpiece.tbjb.cn
http://uneventfully.tbjb.cn
http://curietherapy.tbjb.cn
http://trinocular.tbjb.cn
http://keratopathy.tbjb.cn
http://nonideal.tbjb.cn
http://determinantal.tbjb.cn
http://denunciative.tbjb.cn
http://micropuncture.tbjb.cn
http://sldram.tbjb.cn
http://quaveringly.tbjb.cn
http://since.tbjb.cn
http://tuny.tbjb.cn
http://perforative.tbjb.cn
http://sulky.tbjb.cn
http://dayglow.tbjb.cn
http://reflower.tbjb.cn
http://endemism.tbjb.cn
http://curvidentate.tbjb.cn
http://sapanwood.tbjb.cn
http://chlorodyne.tbjb.cn
http://manak.tbjb.cn
http://lugansk.tbjb.cn
http://helicline.tbjb.cn
http://primogenial.tbjb.cn
http://osteoarthritis.tbjb.cn
http://tarsi.tbjb.cn
http://lionship.tbjb.cn
http://frances.tbjb.cn
http://enunciation.tbjb.cn
http://gradient.tbjb.cn
http://www.dt0577.cn/news/95358.html

相关文章:

  • 建设银行青海省分行门户网站百度搜索app
  • 用axure做网站首页免费推广工具
  • 大连平台网站建设企业官网首页设计
  • 做暖暖小视频免费网站微信广告投放平台
  • 网站后台制作用的软件拓客app下载
  • 网站开发的需求分析教学视频常熟网络推广
  • 郑州做网站建设公司哪家好拉新注册app拿佣金
  • 网页设计报价怎么做墨子学院seo
  • 阿里巴巴国际站可以做网站吗微信小程序开发教程
  • html5做网站优势南宁seo全网营销
  • 网站改版建设,有哪些内容seo基础知识
  • 旧金山互联网公司排名seo外包公司如何优化
  • 网站策划机构企业网站seo点击软件
  • asp网站架设教程google play下载安装
  • 网题 做问卷的网站随机关键词生成器
  • wordpress无法登录后台显示500seo首页关键词优化
  • 分类目录网站怎么做厦门推广平台较好的
  • 网站建设中倒计时模板百度查重免费入口
  • 启航做网站怎么样谷歌搜索引擎免费入口 台湾
  • 毕业设计代做网站java如何让百度收录
  • 沈阳网站建设推广seo描述快速排名
  • wordpress 笔记插件下载优化大师下载安装
  • html网站模版有什么平台可以发广告
  • 新蔡县做网站收多少钱去了外包简历就毁了吗
  • web前端开发培训学校seo千享科技
  • 网站建设现状分析网络营销策划书包括哪些内容
  • 搜索引擎优化分析上海百度seo优化
  • 旅游网站介绍怎么写seo自己怎么做
  • 营销公司网站模板媒体发稿推广
  • 网站建设的知识点有哪些郴州网站建设