【问题标题】:Canvas 3D viewer's perspective画布 3D 查看器的视角
【发布时间】:2016-10-22 23:13:17
【问题描述】:

我正在致力于在 2D 空间中渲染 3D 世界。我找到了这篇文章:https://en.m.wikipedia.org/wiki/3D_projection。在透视投影子类别中,它谈论“观看者相对于显示表面的位置”,用 e 表示。 e在哪里。是观看者正在看的地方(屏幕的中心),观看者相对于屏幕的实际位置(如果是这样的话),还是完全不同的东西?

【问题讨论】:

  • e 是相机所在的位置,但坐标是相对于显示器的,因此从相机到观察点的向量 (x,y,z)(通过使用方向找到)可以在任何方向上,e 中的相同向量始终沿 z,x 和 y 与显示 x,y 对齐;

标签: javascript 3d html5-canvas


【解决方案1】:

e 的位置取决于我们认为是相机所在的坐标系(空间)。 在世界空间e有不同的坐标,在视图空间或屏幕空间它总是位于原点。

但问题是,在计算机图形学中没有相机(与您文章中的查看器、眼睛、e 相同)这样的东西,因此转换(旋转、平移或缩放)相机实际上意味着对整体应用适当的转换场景只是具有相反的价值。例如,将相机围绕y 轴旋转alpha 弧度,您应该将场景围绕同一轴旋转-alpha 弧度,因此相机始终保持在同一位置,因此模拟真实世界的相机场景保持在同一位置,但相机不断变换。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-10
    • 1970-01-01
    • 2013-12-07
    • 2018-12-31
    相关资源
    最近更新 更多