【问题标题】:Clipping Space In OpenGL PipelineOpenGL管道中的裁剪空间
【发布时间】:2012-01-14 16:29:45
【问题描述】:

在简化的解释中,剪切和投影是如何工作的?它与归一化顶点和矩阵乘法有关,其中涉及将 x,y,z 除以第四个变量。我无法理解实际发生的情况。

【问题讨论】:

  • 没有“简化解释”可以做到主题公正;要么解释得当,要么没有。 My explanation for the concept 适当长而全面。
  • 谢谢,我会仔细阅读。

标签: opengl graphics matrix pipeline clipping


【解决方案1】:

它非常简单。 裁剪是表示原始(点、线或三角形)是否可见的过程。 (并且在模型视图*投影矩阵变换之后完成)如果三角形部分可见,则三角形被分割成更多适合平截头体的三角形。

剪辑完成后,我们需要对顶点 (x,y,z,w)坐标进行归一化,以便将它们投影到屏幕上(窗口坐标)。这称为透视分割:新坐标为x,y,z,1 = x/w, y/w, z/w, 1。视窗坐标依赖于视口设置,变换非常简单。

window_x = viewport_x + vertex_x * half_viewport_width + half_viewport_width;
window_y = viewport_y + vertex_y * half_viewport_height + half_viewport_height;

【讨论】:

    猜你喜欢
    • 2013-05-28
    • 2021-02-01
    • 2011-11-24
    • 2011-05-27
    • 2012-11-23
    • 2014-03-11
    • 2012-09-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多