博客专栏  >  云计算/大数据   >  图形学理论

图形学理论

专栏主要讲解整理图形学方面的知识。

关注
2 已关注
39篇博文
  • 深度测试

    应用场景:加亮物体的边缘。 深度缓存会记录场景中物体与视点的距离。深度缓存主要用途是隐藏表面的消除。void glPolygonOffset(GLfloat factor, GLfloat unit...

    2017-12-03 09:39
    87
  • 融混

    融混 受alpha值影响的有融混,和顺序无关透明算法OIT(order-independent transparency)。 开始融混,glEnable(GL_BLEND); 融混参数 源混合...

    2017-12-03 18:32
    82
  • 抖动

    opengl 默认情况下抖动是开启的。 glEnable(GL_DITHER);

    2017-12-03 18:36
    62
  • 逻辑操作

    输入的片元数据为源。 当前颜色缓存中的数据为目标。 开启 glEnable(GL_COLOR_LOGIC_OP); glLogicOp(GLenum opcode); 默认的操作为GL_COP...

    2017-12-03 18:52
    65
  • 遮挡查询

    遮挡查询步骤 1.为每个遮挡查询对象生成一个ID。glGenQueries(GLsizei n, GLuint * ids); glIsQueries(id); 2.glBeginQuery(...

    2017-12-04 10:07
    404
  • 逐图元的反走样

    线段的反走样glPolygonMode(GL_FRONT, GL_LINE); // glEnable(GL_LINE_SMOOTH); // glEnable(GL_BLEND); // gl...

    2017-12-04 12:59
    96
  • 帧缓存对象

    帧缓存对象的存在意义就是在不同的缓存之间大量迁移数据。将数据的拷贝最小话,达到性能提升的目的。步骤://创建帧缓存对象标识符 GLuint id; glGenFrameBuffers(1, &id);...

    2017-12-04 13:52
    122
  • 多重渲染的同步写入

    定义:在一个片元着色器中同时写到多个渲染缓存的能力。MRT设置片元的out变量与帧缓存附件的对应关系。layout (location = 0) out vec4 color; //输出颜色与颜色附件...

    2017-12-04 17:59
    121
  • 双源融混

    所谓的双源融混就是片元的两个输出元,作用于同一个帧缓存。 GPU:layout(location = 0, index = 0) out vec4 first_output; layout(loca...

    2017-12-05 10:07
    112
  • 像素数据的读取和拷贝

    glReadPixels(0, 0, mRenderWidth, mRenderHeight, GL_RGBA, GL_UNSIGNED_BYTE, mPixels); 将像素从目标缓存回读到CPU...

    2017-12-05 10:35
    101
  • 法线变换

    当法线在物体表面平移的时候,并不会改变法线的值。发现代表着一个空间向量,知道大小相等,方向相同就可以了。 M = mat3(mViewMatrx); n′=nMTn'=\frac{n}{M^T}

    2017-12-05 10:44
    58
  • 剪切平面设置

    CPU: glEnable(GL_CLIP_PLANE0); GPU:float gl_ClipDistance[1];//使用一个剪切平面 void main(void) { gl_Po...

    2017-12-05 11:03
    72
  • 传输反馈 transfrom feedback

    可以利用GPU对数据的顶点进行处理。然后返回到CPU内存中,或是用作GPU 端其它用途。 transform feedback 状态是封装在传输反馈对象当中。 状态包括:记录顶点数据的缓存对象,...

    2017-12-06 09:23
    134
  • glTexStorage* 与 glTexImage*的优势与劣势

    glTexStorage* 为指定的纹理创建固定存储。也就是分配的存储空间不可改变,这样就可以让纹理对象停止跟踪纹理的某些方面。 而纹理中的内容可以使用glTexSubImage* 来改变。 实验:...

    2017-12-06 10:49
    108
  • 将图像数据存储进纹理的几种方法

    1.显示方式 static const GLubyte texdata1[] = { 0xFF,0x00, 0xFF,0x00 }; static const GLfloat tex_color...

    2017-12-06 13:10
    94
  • 纹理对象 缓存对象 纹素直接的数据流向关系

    数据流向关系图

    2017-12-06 13:35
    69
  • 阴影贴图

    阴影贴图的原理:就是利用阴影采样器获取一个[0,1.0]之间的浮点值,来控制模型表面光照强度。假设最终输出色outColor,模型在一点处的光照值P。阴影强度值I 。有outColor = I*P;...

    2017-12-07 18:01
    126
  • 高级纹理查询函数

    sampler ——-> texture samplerBuffer —–>textelFetch 对于具有细节层次贴图的纹理 textureLod(gsmapler* tex, vec...

    2017-12-09 10:03
    90
  • 绘制天空盒

    原理: 创建一个立方体,并且视点在立方体的中心。在立方体的每个面上贴上大小相同的六个立方体纹理。 这个也可以用作目前比较流行的全景图。 方法: 1.创建一个以人眼为中心的立方体。 2.创建构...

    2017-12-09 10:38
    198
  • HLSL 与 GLSL 之间的映射关系参考

    系统参数与內建的输入参数Direct3D有很多系统参数,而相应的,GLSL也有內建的输入参数的概念。他们的对应关系如下:HLSLGLSLSV_ClipDistancegl_ClipDistanceSV...

    2017-12-09 10:50
    187

img博客搬家
img撰写博客
img发布 Chat
img专家申请
img意见反馈
img返回顶部