【问题标题】:Getting 2D screen coordinates of a 3D object in Papervision 2.0在 Papervision 2.0 中获取 3D 对象的 2D 屏幕坐标
【发布时间】:2011-01-10 04:30:14
【问题描述】:

在使用 Papervision 2.0 (Great White) 时,如何获取 3D 对象的 2D 屏幕坐标?我读过以下属性应该返回屏幕坐标,但这些总是返回 0。

myDisplayObject3D.screen.x
myDisplayObject3D.screen.y

我也试过设置:

myDisplayObject3D.autoCalcScreenCoords = true;

但这没有任何效果。任何帮助将不胜感激。

【问题讨论】:

    标签: flash actionscript-3 papervision3d


    【解决方案1】:

    screen.x 和 screen.y 应该可以工作。您的 3d 对象是否已添加到场景中?

    在网上的文章(pv3d.orgeverydayflash)看起来都很好。

    您能否发布一个 sn-p(或者隔离代码位,或者写一个简单的类比您的情况),以便我们可以了解可能出了什么问题?

    【讨论】:

    • myDisplayObject3D.autoCalcScreenCoords = true;跟踪(myDisplayObject3D.screen.x,myDisplayObject3D.screen.y);这个伪代码几乎就是我正在做的。我不确定是否需要 autoCalcScreenCoords,因为它似乎必须以任何一种方式产生影响。我已经在各种对象上尝试过,它们都返回 0。我觉得这个问题是 2.0 版特有的,我确信它在早期版本 (1.5) 中工作正常我试图弄清楚是否有在 2.0 中执行此操作的新方法,或者它是否只是被破坏了。
    【解决方案2】:

    原来我试图在将对象添加到场景之后但在渲染器下一个渲染周期之前立即读取值。我将上述代码添加到我的输入帧侦听器中,并且所有后续跟踪都正常工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-04-15
      • 1970-01-01
      • 2015-08-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多