0

在使用 OpenGL 的 Java 中,我可以为世界坐标设置矩阵,如下所示:

GL.glMatrixMode(GL.GL_PROJECTION);
GL.glLoadIdentity();
// window size is 640x480
// viewport size is 8x6 (e.g. in meters, so you see only 8x6 meters of the world in a flash game)
GL.glOrtho(0, 8, 0, 6, -1, 1);

如何在 ActionScript 中做同样的事情?当我的图块大小为 80px 时,我想说

mySprite.x = 1; // 80 pixels
mySprite.x = 2; // 160 pixels
mySprite.x = 3; // 240 pixels

它应该使精灵出现在距左侧 80、160 或 240 像素的位置。

AS3 中是否没有等效的投影可能性?

4

2 回答 2

0

您可以定义一个超类来重新定义 x 和 y 的 getter 和 setter,然后从该类派生每个 MovieClip。

于 2013-03-27T13:16:26.157 回答
0

使用 spark.components.Group。这没有背景或其他类似的东西,所以即使它取代了 Canvas,它也不是。它本质上只是一组 UIComponents。话虽如此,将 Group 的 x 字段设置为 79,并在 mySprite 上调用 Group 的 addElement() 函数。那么如果你将 mySprite 的 x 字段设置为 1,则相对于 Group 而言,它被认为是 1,这已经是一个整体距离左侧 79 个像素的位置。所以 79 + 1 = 80。

var group:Group = new Group();
group.x = 79;
group.addElement(mySprite);
mySprite.x = 1;
于 2013-03-25T13:04:57.577 回答