【问题标题】:Creating planar shadows with 4x3 matrices?用 4x3 矩阵创建平面阴影?
【发布时间】:2009-08-10 06:05:35
【问题描述】:

我只是想知道如何从 4x3 矩阵创建平面阴影,我见过的所有在线演示都使用 4x4 矩阵。

【问题讨论】:

    标签: c++ math directx matrix


    【解决方案1】:

    我猜这是通过将 3D 对象投影到平面上来完成的,这基本上需要第四个坐标来表示无穷大。如果只使用3个坐标,则只能表示|R^3。但是,对于像阴影这样的投影,您将需要完整的 3 空间,因此包括无穷大 - 所以您需要第四个坐标。

    我想你可以用三角函数而不是矩阵来解决这个问题。

    你想要完成什么?

    【讨论】:

    • 只是想在我无法访问 4x4 矩阵的环境中制作阴影..
    【解决方案2】:

    如另一个答案中所述,您确实需要 4x4 来编码投影。

    如果有任何帮助,您可以通过将高度轴缩放为 0 并将压扁的几何图形转换为地平面来直接制作头顶阴影。有点垃圾,但可能是你可以使用的东西。几年前,我在一个真正想要这样的阴影的项目中使用过它。

    【讨论】:

      【解决方案3】:

      有什么理由不能使用阴影贴图?要制作阴影贴图,您需要从光源渲染深度值。然后在渲染正常图像时,将像素转换为光的空间。如果它的深度大于阴影贴图中的深度,那么它会被阴影化,否则它不会被阴影化。

      Wikipedia 有一个很好的解释。网络资源更多。谷歌的“阴影映射”

      【讨论】:

      • 我正在使用的平台内存很少,我很确定没有办法渲染深度图。
      猜你喜欢
      • 2015-03-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-08-01
      相关资源
      最近更新 更多