我在旋转X和旋转Y方面遇到了一些问题。
如果我只做下面的 roationX 和 rotaionY 就很酷了
_eventParent.rotationY =_differentX;
_eventParent.rotationX =_differentY;
但是,一旦我将鼠标移动分配给_eventParent。当鼠标移动时,roationX 和 RoationY 会发生透视变化。因此该项目保持相同的尺寸。它会前瞻性地增加和减少尺寸。知道为什么要这样做吗?有可能阻止这种行为吗?
谢谢
请找到下面的图片。
最佳答案
透视可以让你的形状的一部分看起来比其他部分更接近你。问题在于透视有一个中心或“消失点”,并且默认情况下它是固定的。当您将形状远离消失点时,视角会发生变化,导致形状变宽或变窄。
您可以通过更新消失点来解决此问题,使其始终与您的形状处于相同的坐标。由于形状始终处于消失点,因此视角不应改变。
为此,请为您的形状创建透视投影:
_eventParent.transform.perspectiveProjection = new PerspectiveProjection();
PerspectiveProjection 位于 flash.geom 包中,因此不要忘记导入它。
然后,每当您更新形状的位置时,都会更新它的消失点:
_eventParent.transform.perspectiveProjection.projectionCenter =
new Point(_eventParent.x, _eventParent.y);
您可能需要将消失点偏移一定数量的像素,以获得您想要的透视效果。
关于actionscript-3 - As3 Sprite 旋转X和旋转Y,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15014581/