美文网首页
webgl基础图形

webgl基础图形

作者: 三界之外的无名 | 来源:发表于2018-12-22 13:06 被阅读0次

    WebGL的工作是绘制图形图像,了解WebGL的图形是至关重要的。

    一、点

    在WebGL中点是一个正方形,用一个三维坐标点vec3(x,y,z)表示点的位置,PointSize(float)表示该正方形的大小。在WebGL对应的绘制方法是gl.POINT。当然如果你想绘制一个圆形或者其他形状的点时,可以通过片元着色器来做改变,下面是一个绘制圆形点的像素着色器的代码,点一般常用来绘制粒子,关于像素着色器后面会详细介绍。

    //绘制一会圆形的点。

    // 取当前像素点的坐标

    vec2 point = gl_PointCoord * 2.0 - vec2( 1.0 );

    //如果当前像素点到中心的距离大于1就丢弃当前像素。

    if( dot( point, point ) > 1.0 )

    discard;

    二、线

    WebGL中的线在屏幕上宽度为1像素,线宽是固定不可被设置,线的类型由以下几类:

    线( gl.LINES ):

    线带( gl.LINE_STRIP ):

    线环( gl.LINE_LOOP ):

    如图介绍了 WebGL中线的绘制方法,分别对应的gl.LINES、gl.LINE_STRIP、gl.LINE_LOOP。

    曲线

    在WebGL中是没有曲线的,类似曲线或圆形是由很多线段(直线)构成,只是他们很细。下图解释了曲线的表示。

    如果你以前没接触过图形,可能会有疑问,曲线如何绘制,在图形中,曲线也是用直线表示的,下图是一个8 16 32 64 边的圆,当边的。

    三、三角形

    相关文章

      网友评论

          本文标题:webgl基础图形

          本文链接:https://www.haomeiwen.com/subject/qkeikqtx.html