几何处理阶段

几何处理阶段

渲染场景

OBJ 3D Mesh

顶点数据

  • v表示定点位置
  • vn表示顶点法向量
  • vt表示顶点纹理坐标

元素

  • p表示点,p #v1v_1v1
  • l表示线,l #v1v_1v1 #v2v_2v2 … #vmv_mvm
  • f表示一个面,f #v1v_1v1 #v2v_2v2 … #vnv_nvn
  • f 表示一个带纹理坐标的面,f #v1v_1v1/#vt1vt_1vt1 #v2v_2v2/#vt2vt_2vt2 … #vmv_mvm/vtmvt_mvtm
    带纹理坐标的面是指三维模型中的一个表面或多边形,该表面除了定义顶点位置外,还附加了用于贴图的纹理坐标信息。纹理坐标用来指定将纹理映射到模型表面时的对应关系,以便在渲染过程中正确显示纹理图像。
  • f表示一个带法向量的面,f #v1v_1v1//#vn1vn_1vn1 #v2v_2v2//#vn2vn_2vn2 … #vmv_mvm//#vnmvn_mvnm
    带法向量的面是指三维模型中的一个表面或多边形,该表面除了定义顶点位置外,还附加了法向量信息。法向量(Normal Vector)是指与表面垂直的向量,用于描述表面的方向和朝向。
  • f表示一个带纹理坐标和法向量的面, f #v1v_1v1/#vt1vt_1vt1/vn1vn_1vn1 #v2v_2v2/#vt2vt_2vt2/vn2vn_2vn2 … #vmv_mvm/#vtmvt_mvtm/vnmvn_mvnm

Vertex Shader(顶点着色器)

逐顶点操作
• 几何变换:从物体坐标到,世界坐标,观察坐标,投影坐标
• 法向量变换
• 光照计算和材质应用
• 纹理坐标的生成和变换
坐标系:OpenGL采用右手坐标系
右手坐标系

  1. 物体坐标系:以物体(obj模型)自己为中心

物理坐标系

  1. 世界坐标系
    仿射变换=线性变换+平移变换
    世界坐标系

  2. 观察坐标系
    观察变换 Viewing Transformation
    观察坐标系

  3. 投影坐标系
    透视投影 Perspective Projection

投影坐标系

  1. 规一化坐标系
    正交投影 Orthographic Projection
    规一化坐标系

  2. 屏幕坐标系
    Viewport Transformation
    屏幕坐标系

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐