zoukankan      html  css  js  c++  java
  • Shader基础之渲染流程

    本文记录Shader将模型顶点渲染到屏幕上的流程及流程简介

    流程:

    顶点着色器->光栅化->片段着色器

    ->alpha测试->模板测试->深度测试

    ->Blend Gbuffer->front buffer->frame buffer

    ->显示器

    1.顶点着色器

    (1)计算顶点的颜色

    (2)将顶点由物体坐标系变换到相机坐标系

    2.光栅化

        将顶点转换成像素   

     (既,四个顶点,用差值转换成为一个像素面)

       如(0,0,0)(0,100,0)(100,0,0)(100,100,0)四个顶点,那么转化成为像素后,就是100*100个像素

    3.片段着色器(也叫 片元着色器)

    (1)纹理采样  从纹理中将像素值赋给对应像素

    (2)像素跟灯光计算(逐片元计算)

    (如上4个点,顶点着色器会计算4次,经过光栅化后,片段着色器会计算100*100次,所以,运算优先放在顶点着色器)

    4.三次测试

        alpha测试:挑选合格的像素显示(例如Shader设置了像素值范围)

        模板测试:挑选合格的像素显示(像素不止携带了RGBA信息,还有模板信息)

        深度测试:挑选合格的像素显示(例如,远距离的像素被近距离的像素遮挡,那远距离的像素则不显示)

    5.Blend

        将当前要渲染的像素和意境渲染的像素进行混合运算

    6.Gbuffer

        中转、暂存 (包括RGBA,模板值,深度值等)

    7.front buffer和frame buffer

       两者交替在屏幕显示

  • 相关阅读:
    173. Binary Search Tree Iterator
    199. Binary Tree Right Side View
    230. Kth Smallest Element in a BST
    236. Lowest Common Ancestor of a Binary Tree
    337. House Robber III
    449. Serialize and Deserialize BST
    508. Most Frequent Subtree Sum
    513. Find Bottom Left Tree Value
    129. Sum Root to Leaf Numbers
    652. Find Duplicate Subtrees
  • 原文地址:https://www.cnblogs.com/fws94/p/9989768.html
Copyright © 2011-2022 走看看