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

四川省城乡住房建设部网站首页网站运营

四川省城乡住房建设部网站首页,网站运营,优质企业网站建设,做网站 上海我会持续更新关于wegl的编程指南中的代码。 当前的代码不会使用书中的缩写#xff0c;每一步都是会展开写。希望能给后来学习的一些帮助 git代码地址 #xff1a;git 本篇文章将把旋转和平位移结合起来#xff0c;因为矩阵的不存在交换法则 文章中设计的矩阵地址在这里​…我会持续更新关于wegl的编程指南中的代码。 当前的代码不会使用书中的缩写每一步都是会展开写。希望能给后来学习的一些帮助 git代码地址 git 本篇文章将把旋转和平位移结合起来因为矩阵的不存在交换法则 文章中设计的矩阵地址在这里​​​​​​ !DOCTYPE html html langenheadmeta charsetUTF-8meta http-equivX-UA-Compatible contentIEedgemeta nameviewport contentwidthdevice-width, initial-scale1.0titleDocument/titlescript src../tool/cuon-matrix.js/script /headbodyh1先平移再旋转/h1h3可以按下按键ADSW/h3P idrotate/PP idtranslate/Pcanvas idcanvas/canvasscriptlet canvas document.getElementById(canvas);canvas.width window.innerWidth;canvas.height window.innerHeight;let gl canvas.getContext(webgl);let vertexShaderSource attribute vec4 a_Position;uniform mat4 u_mat4; //位移变量void main(){gl_Positionu_mat4*a_Position;}let fragmentShaderSouce precision mediump float;void main(){gl_FragColor vec4(1.0,0.0,0.0,1.0);}// 创建顶点着色器let vertexShader gl.createShader(gl.VERTEX_SHADER);// 设置着色器源代码gl.shaderSource(vertexShader, vertexShaderSource)// 编译着色器gl.compileShader(vertexShader)//创建片元着色器let fragmentShader gl.createShader(gl.FRAGMENT_SHADER);// 设置着色器源代码gl.shaderSource(fragmentShader, fragmentShaderSouce)// 编译着色器gl.compileShader(fragmentShader)//创建渲染程序let program gl.createProgram();// 附着顶点着色器和片元着色器到渲染程序gl.attachShader(program, vertexShader);gl.attachShader(program, fragmentShader);// 链接渲染程序gl.linkProgram(program);//使用当前渲染程序gl.useProgram(program)//检测着色器的链接是否正确if (!gl.getProgramParameter(program, gl.LINK_STATUS)) {throw gl.getProgramInfoLog(program);} //创建矩阵let mate4 new Matrix4()//旋转的角度let rotateX 0.0;//位移的y轴的变量let translateY 0.0;//创建三角形let positonArray new Float32Array([0.0, 0.5, -0.5, -0.5, 0.5, -0.5])//获取变量a_Positionlet a_Position gl.getAttribLocation(program, a_Position);//获取变量u_mat4let u_mat4 gl.getUniformLocation(program, u_mat4);// 创建传冲区let buffer gl.createBuffer();//绑定buffergl.bindBuffer(gl.ARRAY_BUFFER, buffer);//目标传冲去赋值gl.bufferData(gl.ARRAY_BUFFER, positonArray, gl.STATIC_DRAW);//将a_Position变量与目标传冲区进行绑定gl.vertexAttribPointer(a_Position, 2, gl.FLOAT, false, 0, 0);//开启a_Position变量gl.enableVertexAttribArray(a_Position);// Clear 颜色gl.clearColor(0.0, 0.0, 0.0, 1.0);const render function () {//对矩阵及逆行位移mate4.setTranslate(0,translateY,0);//对矩阵进行旋转mate4.rotate(rotateX,0,0,1);//矩阵赋值gl.uniformMatrix4fv(u_mat4, false, mate4.elements);//清空gl.clear(gl.COLOR_BUFFER_BIT);//绘制gl.drawArrays(gl.TRIANGLES, 0, 3)setNum()}render()document.onkeydown function (e) { //对整个页面监听 var keyNum window.event ? e.keyCode : e.which; //获取被按下的键值 //判断如果用户按下了回车键keycody13 if (keyNum 65) {console.log(A);rotateX - 1; render()}//判断如果用户按下了空格键(keycode32) if (keyNum 68) {console.log(D);rotateX 1; render()}//判断如果用户按下了空格键(keycode32) if (keyNum 83) {console.log(S); translateY-0.1render()}//判断如果用户按下了空格键(keycode32) if (keyNum 87) {console.log(W); translateY0.1render();}}function setNum(){let rotate document.getElementById(rotate);let translate document.getElementById(translate);rotate.innerText 旋转的角度${rotateX}translate.innerText 平移的距离${translateY}}/script /body/html
http://www.dnsts.com.cn/news/93815.html

相关文章:

  • 济南做微网站推广免费模板网页下载
  • 网站模板打包下载做一元购物网站
  • 泉州网站seo商务网站页面
  • 网站设计公司排行榜邯郸手机网站建设报价
  • 广州网站建设哪家便宜长春火车站什么时候解封
  • 网站ico制作百度关键词挖掘
  • 深圳优化网站关键词好网站推荐一下
  • 企业网站的页面特点新手建站论坛
  • 论坛式网站建设自动化的网站建设
  • 为什么小城市做不出来好的网站电商网站开发设计方法
  • 南昌网站建设公司市场外贸网站怎么做促销
  • 怎么挖掘网站的关键词沈阳app定制
  • 上海建设银行网站上班时间表wordpress主题汉化
  • 东莞企慕网站建设网站制作河南
  • 做网站运营有前途wordpress 链接 插件
  • 建设阿里巴巴网站WordPress 上传头像 前端
  • 北京房产网站大全seo内链优化
  • 学校网站建设管理制度关于建设门户网站的通知
  • 上海市场监督管理局网站深圳软件系统开发公司
  • 重庆专业建网站临平建设局网站
  • 网站到期可以续费网站后台上传word
  • 网站备案是什么意思网站建设推广重要性
  • 用老域名做新网站 权重怎么传递济南专业网站建设咨询
  • 厦门 外贸网站网站开发与维护说明
  • 免费营销网站制作模板wordpress 文字弹窗
  • 网站不备案会怎...wordpress 调用导航栏
  • 自己做的网站能备案创建众筹网站
  • 做电子相册的大网站公司网站模板图片
  • ppt网站建设网站服务器地址怎么查
  • 泰州外贸网站设计外国搜索引擎登录入口