相关问题
HarmonyOS Circle的阴影是正方形
261浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何使用鸿蒙OS绘制一个带虚线环的圆?
305浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙开发中绘制一个圆形?
465浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在HarmonyOS中创建一个WebGL2上下文?
586浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何创建WebGL缓冲区用于绘制图形?
545浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何模拟一个appCrash?
465浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何使用鸿蒙Web组件主动发起一个下载任务?
298浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何使用Remote Communication发送一个put网络请求?
274浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何创建一个带有父组件的绘制组件,实现类似SVG的效果?
317浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何自定义一个气泡?
373浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何创建和启动一个ServiceAbility?
576浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何定制一个ArkUI的ActionSheet?
792浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何使用Remote Communication发送一个post网络请求?c
262浏览 • 1回复 待解决
#鸿蒙通关秘籍# 如何取消一个未执行的Task?
454浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何创建一个基础的HAP模块?
698浏览 • 1回复 待解决
#鸿蒙通关秘籍#怎么创建一个HSP模块?
537浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在WebGL2中使用多维数组类型?
295浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何创建一个动态涟漪效果动画?
417浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙工程中创建一个ArkTS卡片?
483浏览 • 1回复 待解决
如何使用EGL绘制自定义动画?请提供一个简单示例
2351浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在HarmonyOS NEXT中使用ArkUI创建一个轮播图组件?
581浏览 • 1回复 待解决
#鸿蒙通关秘籍#一个组件上如何挂载多个bindSheet弹窗?
496浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何创建一个继承AttributeModifier的ImageModifier类?
432浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何创建一个自定义弹窗(CustomDialog)?
656浏览 • 1回复 待解决
在WebGL中绘制正方形需按创建缓冲和关联着色器的步骤,继而调用
drawArrays()
绘制图形:javascript function drawScene(gl, programInfo, buffers) { gl.clearColor(0.0, 0.0, 0.0, 1.0); gl.clearDepth(1.0); gl.clear(gl.COLOR_BUFFER_BIT | gl.DEPTH_BUFFER_BIT);
const fieldOfView = (45 * Math.PI) / 180; const aspect = gl.canvas.clientWidth / gl.canvas.clientHeight; const zNear = 0.1; const zFar = 100.0; const projectionMatrix = mat4.create();
mat4.perspective(projectionMatrix, fieldOfView, aspect, zNear, zFar);
const modelViewMatrix = mat4.create(); mat4.translate(modelViewMatrix, modelViewMatrix, [-0.0, 0.0, -6.0]);
gl.useProgram(programInfo.program);
gl.uniformMatrix4fv( programInfo.uniformLocations.projectionMatrix, false, projectionMatrix ); gl.uniformMatrix4fv( programInfo.uniformLocations.modelViewMatrix, false, modelViewMatrix );
const offset = 0; const vertexCount = 4; gl.drawArrays(gl.TRIANGLE_STRIP, offset, vertexCount); }
通过设置摄像机透视矩阵并且初始化正方形的顶点位置,最终通过
drawArrays()
实现渲染。