libgdx学习之图片翻转

阅读更多

在看libgdx的cuboc的游戏源码遇到了图片翻转的两种形式,初次接触游戏编程,研究了半天才弄明白,衰

1.调用函数TextRegion.flip(boolean x,boolean y)

x、y轴进行翻转;

TextRegion text=new TextRegion(new Texture(Gdx.files.internal("a.jpg"));
text.flip(true,flase);

 原图

libgdx学习之图片翻转_第1张图片
x轴翻转以后



y轴翻转

text.flip(false,true)

原图 

libgdx学习之图片翻转_第2张图片

y翻转后

x、y轴翻转

text.flip(true,true)

 原图 

libgdx学习之图片翻转_第3张图片

x、y轴翻转以后



flip函数适用于90和180对称旋转的情况,当然用SpriteBatch.draw的rotation功能也能实现类似的效果

 

2.SpriteBatch.draw()

函数定义

public void draw (TextureRegion region, float x, float y, float originX, float originY, float width, float height,
float scaleX, float scaleY, float rotation){
}

 参数说明:

region:绘制纹理

x:位置坐标x

y:位置坐标y

originX:与x的x轴偏移量

originY:与y的y轴的偏移量

width:宽度

height:长度

scaleX:扩展倍数

scaleY:扩展倍数

rotation:翻转角度 逆时针方向为正(刚开始看成顺时针了,想了半天没想明白)

 

旋转原理

ex=originX+x

ey=originY+y

以(ex,ey)为原点,如果rotation为正,则逆时针旋转rotation度,为负,则顺时针旋转|rotation|度

 

 

  • libgdx学习之图片翻转_第4张图片
  • 大小: 4.3 KB
  • libgdx学习之图片翻转_第5张图片
  • 大小: 1.8 KB
  • libgdx学习之图片翻转_第6张图片
  • 大小: 1.7 KB
  • libgdx学习之图片翻转_第7张图片
  • 大小: 2.1 KB
  • 查看图片附件

你可能感兴趣的:(android,game,libgdx,mobile)