2016-06-21 78 views
1

我想将动作添加到单个游戏画面中的两个精灵对象。我的意思是两个精灵对象应该使用Libgdx在单个页面或应用程序的游戏屏幕中独立移动(或遵循一些预定义路径)。我怎样才能做到这一点。 请帮帮我。如果可能的话,请提供一些参考代码。谢谢。如何在android libgdx的一个屏幕中移动两个精灵对象?

+0

你应该改变它们的渲染方法的坐标。你有没有尝试过一些东西?问题是什么? – MilanG

回答

0

你可以这样做:

采取两种2DVector对象:

private Vector2 positiononesprite,positiontwosprite; 
Sprite sprite_one,sprite_two; 
在创建方法

然后做到这一点

positiononesprite = new Vector2(0,0); 
positiontwosprite = new Vector2(0,0); 

//set your sprite position 
sprite_one.setPosition(x,y);//your x and y coordinates 
sprite_two.setPosition(x1,y1);//your second sprite postions 

positiononesprite.x = sprite_one.getX(); 
positiononesprite.y = sprite_one.getY(); 

positiontwosprite.x = sprite_two.getX(); 
positiontwosprite.y = sprite_two.getY(); 

/* 
then to make them move in a custom direction you can use either 
setPosition method or translate method*/ 

//apply your algorithm on vectors and set or translate your sprites 
// in render method define there speed, direction and move them 
//for example i did this to move it in a particular direction 

pointerposition.x += directionpointer.x * speed; 
      pointerposition.y += directionpointer.y * speed; 

      // pointer.setPosition(pointerposition.x, pointerposition.y); 
      ball.setPosition(pointerposition.x, pointerposition.y); 

这是移动我的球在一个特定的方向 这里directionpointer是一个方向矢量,speed是一个float变量,pointerposition是一个vector2对象,正如我声明的positiononesprite

相关问题