昨天搭建了环境,今天就初步接触这个4个控件(Sprite,SpriteBatch,Texture,TextureRegion)
1、SpriteBatch
这个吗,我没有看api文档,偶是直接看土豆的博客学习的,我看了代码,每次绘制的时候都会有一个.begin();.draw();.end();
.begin();->按照偶的理解吧,这就像一个画笔,每一次绘画的时候都需要告诉这个画笔,画笔可以开始绘画了,也就是我们的.begin();方法。
.draw();->这个很好理解,就是绘画,就是将我们需要的图片之类的绘画出来。
.end();->每次绘画结束都需要通知画笔,停止绘画啦。
还有一个需要说明就是,SpriteBatch的坐标是从左下角开始,向↑→延伸
2、Texture
简单的理解,这是一个纹理,按照我的理解,说白了就是一个图片(ImageView)
使用的时候,要把我们图片资源加载到这个纹理里面
new Texture("文件路径+名称");
new Texture(Gdx.files.internal("文件路径+名字"));
例如,我在android里面放了一个张图片test.jpg,图片就位于assets文件夹根目录里面,那么实例化Texture对象就是
new Texture("test.jpg");
new Texture(Gdx.files.internal("test.jpg"));
同理,desktop项目也是放在assets文件里面
3、TextureRegion
这个嘛,可以理解为截图,这个截图坐标是从左上角开始,向↓→延伸
这个截图可以正反向截图
4、Sprite
这个我管他叫精灵
这个精灵可以设置他的旋转,旋转点,绘画的起点位置等等
5、关于这个几个控件的使用
//实例化
Texture TT_logo = new Texture(Gdx.files.internal("logo.png"));
TextureRegion TR_logo = new(TT_log,0,0,50,50);//第一个参数是纹理,第二三个就是截图的起点,三四个就是截图的大小
Sprite S_logo = new Sprite(TR_logo);
S_logo.setSize(100,100);//设置精灵的大小
S_logo.setOrigin(S_logo.getWidth()/2,S_logo.getHeight()/2);//设置旋转的中心点
S_logo.setRotaton(180);//设置旋转的角度
S_logo.setColor(1,1,1,1);//设置颜色
S_logo.setPosition((Gdx.graphics.getWidth() - S_logo.getWidth())/2,(Gdx.graphics.getHeight() - S_logo.getHeight())/2);//设置精灵绘制的中心点
SpriteBatch SB_pen = new SpriteBatch();
//绘制---需要注意,每次绘制的时候需要把屏幕给清空,
Gdx.gl.glClearColor(1, 0, 0, 1);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
SB_pen.begin();//启动绘画
SB_pen.draw(TT_logo,0,0,50,50);//绘制logo,起点是(0,0),大小是50*50
SB_pen.draw(TR_logo,100,100,50,50);//绘制截图logo,起点是(0,0),大小是50*50
S_logo.draw(SB_pen);//绘制精灵
SB_pen.end();//结束绘画
昨天到今天就学习了这些,记录下来,加深一下印象,好好加油吧
2015年3月12日14:29:45