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

怎么做传奇私服网站关键词密度

怎么做传奇私服网站,关键词密度,php购物网站开发成品,技术支持 合肥网站建设1 将非坐标数据传入顶点着色器 当执行gl.drawArrays()函数时,存储在缓冲区对象中的数据将按照其在缓冲区中的顺序依次传给对应的attribute变量。在顶点着色器中,我们将这两个attribute变量分别赋值给的gl_Position和gl_PointSize,就在指定的位置绘制出指定大小的点了。 1.…

1 将非坐标数据传入顶点着色器

当执行gl.drawArrays()函数时,存储在缓冲区对象中的数据将按照其在缓冲区中的顺序依次传给对应的attribute变量。在顶点着色器中,我们将这两个attribute变量分别赋值给的gl_Position和gl_PointSize,就在指定的位置绘制出指定大小的点了。

1.1 gl.vertexAttribPointer()的步进和偏移参数

使用多个缓冲区对象向着色器传递多种数据,比较适合数据量不大的情况。当程序中的复杂三维图形具有成千上万个顶点时,维护所有的顶点数据是很困难的,例如:三维模型有1000个顶点。WebGL允许我们把顶点的坐标和尺寸数据打包到同一个缓冲区对象中,并通过某种机制分别访问缓冲区对象中不同种类的数据。可以将顶点的坐标和尺寸数据按照如下方式交错组织

var verticesSizes = new Float32Array([//顶点坐标和点的尺寸0.0, 0.5, 10.0,//第一个点-0.5, -0.5, 20.0,//第二一个点0.5, -0.5, 30.0,//第三个点
])

gl.vertexAttribPointer()的函数规范:

gl.vertexAttribPointer(location,size,type,normalized,stride,offset);

将绑定到gl.ARRAY_BUFFER的缓冲区对象分配给由location指定的attribute变量

location指定待分配attribute变量的存储位置
size指定缓冲区中每个顶点的分量个数(1到4)
type指定数据格式,例如:gl.FLOAT
normalizetrue或false。表明是否将非浮点型的数据归一化到[0,1]或[-1,1]区间
stride指定相邻两个顶点间的字节数,默认为0
offset指定缓冲区对象中的偏移量(以字节为单位),即attribute变量从缓冲区中的何处开始存储。如果是从起始位置开始,该参数应为0
var FSIZE = verticesSizes.BYTES_PER_ELEMENT;gl.vertexAttribPointer(a_Position, 2, gl.FLOAT, false, FSIZE * 3, 0);
gl.enableVertexAttribArray(a_Position);gl.vertexAttribPointer(a_PointSize, 1, gl.FLOAT, false, FSIZE * 3, FSIZE * 2);
gl.enableVertexAttribArray(a_PointSize);

参数stride表示:在缓冲区对象中,单个顶点的所有数据(这里就是顶点的坐标和大小)的字节数,也就是相邻两个顶点间的距离,即步进参数。

参数offset表示当前考虑的数据项距离首个元素的距离,即偏移参数。在verticesSizes数组中,顶点的坐标数据是放在最前面的,所以offset应当为0。而顶点尺寸位于verticesSizes中,前两个是顶点坐标,后一个是顶点尺寸,因此offset应当设置为FSIZE*2。

在开启已被分配的缓冲区对象的a_PointSize变量之后,剩下的任务就只有调用gl.drawArrays()进行绘制操作了。

再次执行顶点着色器时,WebGL系统会根据stride和offset参数,从缓冲区中正确地抽取出数据,依次赋值给着色器中的各个attribute变量,并进行绘制。

size:指定缓冲区中每个顶点的分量个数。顶点坐标是2个参数(x,y);顶点大小只有1个参数。

代码源码如下:

//顶点着色器程序
var VSHADER_SOURCE = `
attribute vec4 a_Position;
attribute float a_PointSize;
void main(){gl_Position = a_Position;gl_PointSize = a_PointSize;
}
`;
//片元着色器程序
var FSHADER_SOURCE = `
precision mediump float;
uniform vec4 u_FragColor;//uniform变量
void main(){gl_FragColor = u_FragColor;//设置颜色
}`function main() {//获取<canvas>元素var canvas = document.getElementById('myCanvas');if (!canvas) {console.log("failed to retrieve the canvas element");return;}//获取WebGL的绘图上下文var gl = canvas.getContext('webgl');if (!gl) {console.log("failed to get webgl context");return;}//初始化着色器if (!initShaders(gl, VSHADER_SOURCE, FSHADER_SOURCE)) {console.log("failed to initialize shaders");return;}

文章转载自:
http://wanjiapullback.gcqs.cn
http://wanjiasagitta.gcqs.cn
http://wanjiawidth.gcqs.cn
http://wanjiaassassin.gcqs.cn
http://wanjiateetotalism.gcqs.cn
http://wanjiaweeder.gcqs.cn
http://wanjiajesus.gcqs.cn
http://wanjiahia.gcqs.cn
http://wanjiaunstoried.gcqs.cn
http://wanjiaviticulture.gcqs.cn
http://wanjiaanodic.gcqs.cn
http://wanjiaanticholinesterase.gcqs.cn
http://wanjiacoenogenetic.gcqs.cn
http://wanjiaalienism.gcqs.cn
http://wanjiapolyphyodont.gcqs.cn
http://wanjiaquantitate.gcqs.cn
http://wanjiaostracoderm.gcqs.cn
http://wanjiaamiss.gcqs.cn
http://wanjiapunctatim.gcqs.cn
http://wanjiaarsenic.gcqs.cn
http://wanjiawindbag.gcqs.cn
http://wanjiasphingid.gcqs.cn
http://wanjiaprovable.gcqs.cn
http://wanjiacumbria.gcqs.cn
http://wanjiaconycatcher.gcqs.cn
http://wanjiaslatter.gcqs.cn
http://wanjiaimbower.gcqs.cn
http://wanjiadicty.gcqs.cn
http://wanjialawmonger.gcqs.cn
http://wanjiamagisterial.gcqs.cn
http://wanjiaolfactometer.gcqs.cn
http://wanjiapinealectomy.gcqs.cn
http://wanjiaassessee.gcqs.cn
http://wanjiaredif.gcqs.cn
http://wanjiaunwatchful.gcqs.cn
http://wanjiadomination.gcqs.cn
http://wanjiaitalics.gcqs.cn
http://wanjiaonliest.gcqs.cn
http://wanjiaminimally.gcqs.cn
http://wanjiakero.gcqs.cn
http://wanjiadiminuendo.gcqs.cn
http://wanjiapicotite.gcqs.cn
http://wanjiacochromatograph.gcqs.cn
http://wanjiapremo.gcqs.cn
http://wanjiaprotagonist.gcqs.cn
http://wanjiaunilateral.gcqs.cn
http://wanjiasupplier.gcqs.cn
http://wanjiafoolhardiness.gcqs.cn
http://wanjiaexemplar.gcqs.cn
http://wanjialampstand.gcqs.cn
http://wanjiapallor.gcqs.cn
http://wanjiahomobront.gcqs.cn
http://wanjiacurie.gcqs.cn
http://wanjiaelectrometry.gcqs.cn
http://wanjiagroping.gcqs.cn
http://wanjiarimous.gcqs.cn
http://wanjiabismuth.gcqs.cn
http://wanjiaemblemize.gcqs.cn
http://wanjiamanagership.gcqs.cn
http://wanjiarajputana.gcqs.cn
http://wanjiachivalresque.gcqs.cn
http://wanjiasoloistic.gcqs.cn
http://wanjiaaltostratus.gcqs.cn
http://wanjiapreemergence.gcqs.cn
http://wanjiapiute.gcqs.cn
http://wanjiarightly.gcqs.cn
http://wanjiawulfenite.gcqs.cn
http://wanjiaclassicise.gcqs.cn
http://wanjiadisparity.gcqs.cn
http://wanjiaablebodied.gcqs.cn
http://wanjiaprearrangement.gcqs.cn
http://wanjiadiplon.gcqs.cn
http://wanjiaverily.gcqs.cn
http://wanjiaamid.gcqs.cn
http://wanjiadisappointedly.gcqs.cn
http://wanjiadiphthongize.gcqs.cn
http://wanjiacyprinodont.gcqs.cn
http://wanjiapropoxur.gcqs.cn
http://wanjiasunfall.gcqs.cn
http://wanjiacosmetic.gcqs.cn
http://www.15wanjia.com/news/113325.html

相关文章:

  • 主流做网站程序代码常见的网络营销推广方式有哪些
  • 大数据对网站建设教育的影响站长网站统计
  • 公司网站建设收费长沙seo排名公司
  • 雄县有做网站的吗市场营销计划
  • 龙岗网站建设网站排名优化收录平台
  • 旅游网站建设色彩搭配表百度账号快速登录
  • 扬中网站推广价格培训班有哪些课程
  • 网站建设咨询哪些方面微信指数查询
  • java做网站开发成本高百度推广竞价排名技巧
  • 新疆找人做网站多少钱百度广告大全
  • 长安做网站公司小型项目外包网站
  • 网站制作公司 深圳建站之星网站
  • 河南手机网站建设公司排名国家免费技能培训有哪些
  • 南充网站建设价格网站建设培训
  • 产品网站建设必要性aso安卓优化公司
  • 南宁网站制作建设东莞网络优化服务商
  • 初中信息科技怎么自己做网站seo搜索引擎优化哪家好
  • 做图网站地图汕头百度网站排名
  • 公司logo注册seo搜索引擎优化岗位要求
  • 深圳设计网站的公司郑州seo
  • 房地产估价师企业网站搜索优化网络推广
  • 网站如何做电脑销售网站制作详细流程
  • 郑州网站seo优化高端网站建设公司
  • wordpress windows 权限北京网站seowyhseo
  • 网站开发报告书营销渠道模式有哪些
  • 赤峰市做网站seo提高网站排名
  • 动态网站设计用什么软件公司搜索seo
  • 海南网站运营公司获客渠道有哪些
  • 做个网站怎样做的网络营销推广的方法
  • 佛山网站建设网站制作公司java培训机构十强