• 术语
    • 顶点(vertexs):
    • 图元(primitives, entity, 图素, 实体): 顶点组合为图元
    • 片元(fragments, 片段): 图元裁剪、颜色、纹理、坐标转换等后合成片元
    • 像素(pixels)
  • 硬件
    • cpu与gpu
      • 特点
        • cpu串行运算,电量分配给控制器和缓存,没有太多计算单元
        • 97, 98年 nvidia 出品 nvidia系列显卡,并行计算。gpu控制单元少,计算单元多
      • 构造
        • cpu通过cpu总线连接内存,cpu总线和pci总线通过主桥(北桥)连接,pci总线连接显卡
        • webgl中大量控制逻辑用js编写cpu执行,交给gpu渲染。要渲染的数据从内存传入显存,再由显卡计算
          • 最耗时的是内存到显存之前的数据传输
  • 模型
    • mesh模型
      • 无数三角形面组成的物体(可帖上纹理)。
    • 概念
      • 3d模型由顶点(vertex)组成,顶点连成三角形或四边形,再组成复杂的立体模型
      • 网格模型
    • 加载过程
      • ajax下载文件
      • 解析成Mesh模型
      • 显示在场景中
    • 三角形
      • 渲染效率最高
      • 顶点
        • Vertex
      • 正反面
        • 顶点顺时针排列为正面
      • 法线
        • Normal
        • 正面指向,垂直于面的矢量
        • 作用
          • 法线与入射光角度越小,该点光线越强
      • 顶点法线
        • Vertex Normal
        • 过顶点的矢量
        • 作用
          • 高洛德着色(Gouraud Shading) 中计算光照和纹理效果。
          • 生成平滑的棱时,令顶点法线和相邻多平面法线保持等角
          • 生成棱时顶点法线为点所在平面的法线(可多个), 这样在面连接处形成突出的边缘。
    • google 3d模型库
      • sketchup.google.com/3dwarehouse/
    • VTK
    • 贴图
      • 立方体环境贴图(Cubic Environment Mapping)
        • 简称立方体贴图
        • 介绍
          • 一个纹理包含了包围物体场景的图像数据。x, y, z轴正负方向各一张图片,首尾相连。
  • 计算
    • 旋转的三种工具
      • 矩阵
        • 用来与点相乘,改变点的位置
      • 欧拉角
        • 三个轴的旋转角度(Yaw[z], Pitch[y], Roll[x])来表示几何体的旋转
        • 欧拉角很容易转换为矩阵。使用欧拉角更形象一些
      • 四元组
    • 四元组
      • 介绍
        • 表示任何一个方向上的轴,和围绕这个轴旋转的弧度
        • 可方便地与欧拉角和矩阵之间通过公式转换
    • 三维投影
      • 三维空间中的点变为二维屏幕上的点是投影运算
        • 二维空间变到三维空间是反投影运算
        • 如鼠标从二维到三维的反投影
    • 三维布尔运算
  • 渲染