zoukankan      html  css  js  c++  java
  • Unity3D实习生面试题总结-图形学相关

    图形学相关


    点积和叉积的物理意义

    两矢量点积,其中一矢量为单位矢量,结果为另一矢量在单位矢量上投影的长度。

    两矢量叉积,其结果为一垂直于两矢量的新矢量。


    GPU的渲染流程

    本部分总结来自我对《Unity Shader 入门精要》一书的笔记

    https://www.cnblogs.com/errornull/p/10026725.html

    应用阶段

    首先将数据加载到内存中,将网格、纹理加载到显存中,然后设置渲染状态,如摄像机、灯光等,最后调用drawcall渲染命令,输出图元列表到顶点着色器。

    几何阶段

    图元列表中的每个顶点都会调用一次顶点着色器,将顶点变换到齐次裁剪坐标系,得到归一化的设备坐标NDC。然后对图元进行裁剪,裁剪后的坐标经过屏幕映射得到屏幕坐标,和z坐标一起构成窗口坐标系。

    光栅化阶段

    通过三角形设置得到三角网格的表示数据,根据数据来检查每个像素是否被一个三角网格所覆盖,被覆盖的话就用三角网格的顶点信息对覆盖区域的像素进行插值,被覆盖的像素生成一个片元。然后片元经过片元着色器时会进行纹理采样,计算出其覆盖的片元的输出颜色。

    最后进行逐片元操作,又成输出合并阶段,对每一个片元进行模板测试、深度测试和混合,模板测试用来限制渲染区域,深度测试舍弃被遮挡的片元提升性能,合并操作可以实现半透明等效果。最后这些使用颜色缓冲区的颜色值的像素就会显示到屏幕上。

  • 相关阅读:
    Windows 系统变量大全
    linux编程
    CSS 对齐操作
    php 和 表单 简单交互
    HTML <input> placeholder 属性
    HTML <label> 标签
    Chap-4 Section 4.4 C++相关问题
    Chap-4 Section 4.3 COMMON块
    Chap-4 Section 4.2.4 指令修正方式
    Chap-4 Section 4.2.3 符号解析
  • 原文地址:https://www.cnblogs.com/errornull/p/10029441.html
Copyright © 2011-2022 走看看