2013-03-25 141 views
0

在Java中使用OpenGL,我可以对世界格局的矩阵坐标如下:如何定义自定义坐标系?

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); 

我如何可以做同样的动作脚本?当我的平铺大小是80px我想说

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

它应该使精灵出现80,160或240像素离左侧。

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

回答

0

使用spark.components.Group。这没有背景或其他任何类似的东西,所以即使它取代了Canvas,也不是真的。这基本上只是一组UIComponents。也就是说,将组的x字段设置为79,并在mySprite上调用组的addElement()函数。然后,如果将mySprite的x字段设置为1,则相对于组来说,它被认为是1,从左侧开始已经是79像素。所以,79 + 1 = 80。

var group:Group = new Group(); 
group.x = 79; 
group.addElement(mySprite); 
mySprite.x = 1; 
0

可以定义重新定义了x和y的getter和setter一个超类,那么你从这个类派生每个影片剪辑的。