【问题标题】:Orthograpic + Perspective projection clipping over each other正交 + 透视投影相互裁剪
【发布时间】:2014-10-14 08:22:21
【问题描述】:

我在组合正交投影和透视投影时遇到问题。

我在 3d 对象上绘制纹理:

我猜这与剪裁值有关:

camProjection = XMMatrixPerspectiveFovLH(0.4f * 3.14f, (float)SCREEN_WIDTH/SCREEN_HEIGHT, 1.0f, 1000.0f);
camProjection2D = XMMatrixOrthographicOffCenterLH(.0f, SCREEN_WIDTH, SCREEN_HEIGHT, .0f, 0.0f, 1000.0f);

Texture coords: (x, y, z, u, v)
Vertex( 0.0f,  0.0f, -1.0f, 0.0f, 1.0f),
Vertex( 0.0f, 20.0f, -1.0f, 0.0f, 0.0f),
Vertex(20.0f, 20.0f, -1.0f, 1.0f, 0.0f),
Vertex(20.0f,  0.0f, -1.0f, 1.0f, 1.0f),

我希望有人可以帮助我解决这个问题。 这不是一个大问题,但它困扰着我。

【问题讨论】:

  • 我们在这里看到了什么?你怎么了?看来您只想绘制 2D 的东西。您是否禁用了深度测试?

标签: opengl directx perspective clipping orthographic


【解决方案1】:

您可能正在尝试在渲染的场景上显示 UI。执行此操作的标准方法是先渲染场景,然后在绘制 UI 元素之前清除 z 缓冲区。这样就不会出现 z-fighting 和来自靠近相机的物体的干扰。

【讨论】:

  • 啊,是的,我忘了禁用深度测试。 Tnx
猜你喜欢
  • 2011-10-14
  • 2017-07-08
  • 2014-07-06
  • 2013-11-26
  • 2016-02-11
  • 1970-01-01
  • 1970-01-01
  • 2019-02-26
  • 1970-01-01
相关资源
最近更新 更多