libgdx学习记录1——图片显示Texture

时间:2022-08-30 21:14:57

libgdx底层采用opengl渲染,对图片进行了优化处理,与android原生态的bitmap不太一样。

相比而言,效率要高一些,不过只支持png,jpg,bmp三种格式。

显示中,一般将图片放在assets文件下,表示是Gdx的内部文件。

gl1.x使用的图片的宽高必须是2的整次幂,而在gl2.0以后的版本则没有此限制。

使用的版本为libgx 0.9.9。

代码如下:

package com.fxb.bird;

import com.badlogic.gdx.ApplicationAdapter;
import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.graphics.GL20;
import com.badlogic.gdx.graphics.Texture;
import com.badlogic.gdx.graphics.g2d.SpriteBatch;
import com.badlogic.gdx.graphics.g2d.TextureRegion; public class FlappyBird extends ApplicationAdapter{ Texture texture;
SpriteBatch batch; TextureRegion region1;
TextureRegion region2; @Override
public void create() {
// TODO Auto-generated method stub
texture = new Texture( Gdx.files.internal("data/badlogic.jpg") );
batch = new SpriteBatch(); region1 = new TextureRegion( texture );
region2 = new TextureRegion( region1, 0, 0, region1.getRegionWidth()/2, region1.getRegionHeight()/2 ); }
@Override
public void render() {
// TODO Auto-generated method stub
Gdx.gl.glClearColor(1, 1, 1, 1);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT); batch.begin();
batch.draw( texture, 50, 50 );
batch.draw( region1, 400, 50, region1.getRegionWidth()/2, region1.getRegionHeight()/2 );
batch.draw( region2, 600, 50 );
batch.end();
}
@Override
public void dispose() {
// TODO Auto-generated method stub
super.dispose();
} }

显示效果如下:

libgdx学习记录1——图片显示Texture

很基本,很简单,也是入门,呵呵。。。

libgdx学习记录1——图片显示Texture的更多相关文章

  1. libgdx学习记录19——图片动态打包PixmapPacker

    libgdx中,opengl 1.x要求图片长宽必须为2的整次幂,一般有如下解决方法 1. 将opengl 1.x改为opengl 2.0.(libgdx 1.0版本后不支持1.x,当然不存在这个问题 ...

  2. libgdx学习记录23——图片移动选择

    模拟移动选择图片,采用相机实现. package com.fxb.newtest; import com.badlogic.gdx.ApplicationAdapter; import com.bad ...

  3. libgdx学习记录2——文字显示BitmapFont

    libgdx对中文支持不是太好,主要通过Hireo和ttf字库两种方式实现.本文简单介绍最基本的bitmapfont的用法. 代码如下: package com.fxb.newtest; import ...

  4. cocos2d-x学习记录1——图片显示

    这篇算是cocos2d-x入门篇,显示一张图片即可. 观察工程中HelloWorld的结构,包含AppDelegate和HelloWorldScene两个类文件,AppDelegate中包含基本的处理 ...

  5. libgdx学习记录21——Box2d物理引擎之碰撞Contact、冲量Impulse、关节Joint

    Box2d中,物体可以接受力(Force).冲量(Impulse)和扭矩(Torque).这些物理元素都能改变物体的运动形式,并且默认都会唤醒物体,当然只是针对动态物体. 力是一个持久的效果,通过Bo ...

  6. libgdx学习记录9——FreeType,ttf中文显示

    前面讲到使用Hireo创建的BitmapFont以显示中文字体.这种方式效率很高,当所要显示的字的总数较少,并且大小比较固定时,可以采用这种方式. 但是这种也有弊端: (1)字体大小不能随意设置,当放 ...

  7. libgdx学习记录4——舞台Stage

    libgdx总的来说是一个框架,而不是一个成熟的游戏引擎.Stage是其中一个比较好的封装,里面自带Camera.SpriteBatch等常用渲染绘图工具. 下面是一个简单的添加图片,并让镜头左右上下 ...

  8. libgdx学习记录24——九宫格NinePatch

    NinePatch用于图片纹理拉伸显示.当图片拉伸时,4个角不会拉伸,而只有中间的部分会拉伸,适合做圆角矩形类的Button. 简单示例: package com.fxb.newtest; impor ...

  9. libgdx学习记录20——多线程MultiThread资源处理

    在libgdx中,一般的逻辑流程都在rende()函数中执行,这个函数是由opengl的渲染线程调用的,一般的图形显示和逻辑处理都在这个线程中. 一般情形下,在这个线程中处理就行了.但是当某些逻辑处理 ...

随机推荐

  1. c++ 字符串流 sstream(常用于格式转换) 【转载】

    使用stringstream对象简化类型转换C++标准库中的<sstream>提供了比ANSI C的<stdio.h>更高级的一些功能,即单纯性.类型安全和可扩展性.在本文中, ...

  2. php Ajax 局部刷新

    php Ajax 局部刷新: HTML部分 </head> <body> <h1>Ajax动态显示时间</h1> <input type=&quo ...

  3. -bash&colon; ulimit&colon; open files&colon; cannot modify limit&colon; Operation not permitted

    普通用户登录系统报错,提示: -bash: ulimit: open files: cannot modify limit: Operation not permitted. 处理方法: #vi /e ...

  4. OC教程10-NSNumber具体

    NSNumber简单介绍 NSNumber是数字的对象形式,由于在OC的数组和字典中仅仅同意存放对象,所以我们有时候须要转化 我们普通的类型是   123 那么 NSNumber类型的是  @123, ...

  5. MySQL grant命令使用

    MySQL 赋予用户权限命令的简单格式可概括为: grant 权限 on 数据库对象 to 用户 一.grant 普通数据用户,查询.插入.更新.删除 数据库中所有表数据的权利. grant sele ...

  6. IIS 设置

    解决办法:1. 1).通过webconfig中增加模拟,加入管理员权限, <identity impersonate="true" userName="系统管理员& ...

  7. Atitit 华为管理者内训书系 以奋斗者为本 华为公司人力资源管理纲要 attilax读后感

    Atitit  华为管理者内训书系 以奋斗者为本 华为公司人力资源管理纲要 attilax读后感 序 言上篇:价值创造.评价与分配第一章 全力创造价值1.1 围绕价值创造展开人力资源管理1.1.1 什 ...

  8. node基础 npm、module、exports、require

    module 模块.包:可以认为是一个代码包,package,提供特定的功能(暴露给外界接口,让外界调用) exports 输出.导出:导出模块中的各种类型的变量,以及各种方法,导出之后,才可以被外界 ...

  9. 小记SharePoint REST API Search和COM

    1.管理员身份Visual Studio,新建类项目 SPCOM 2.编写逻辑实现代码 重点关注搜索结果的属性包括: Title,Author,Path,Description,HitHighligh ...

  10. 【PMP】资源平衡与资源平滑

    资源平衡:为了在资源需求与资源供给之间取得平衡,根据资源制约因素对开始日期和完成日期进行调整的一种技术 资源平滑:对进度模型中的活动进行调整,从而使项目资源需求不超过预定的资源限制的一种技术. 案例说 ...