Libgdxi引擎初窥(一)

http://code.google.com/p/libgdx/

Libgdxi引擎是一个跨平台的游戏开发库

包含了android和桌面平台两个版本

 

本文章主要描述Libgdxi引擎的一个简单搭建流程

并且最终绘制出一个三角形

本文章详细内容主要参考于

http://code.google.com/p/libgdx/source/browse/wiki/MyFirstTriangle.wiki

 

首先进入eclipse的开发环境 新建 Android Project

项目中命名MyFirstTraingleAndroid

完成一些简单的配置后 定义一个新的 activity

这里命名为 MyFirstTraingleAndroid

 

在项目目录下面新建一个文件夹libs

Libgdxi引擎资源文件中 拷贝2个文件夹 2个jar文件到这个libs文件夹中

armeabi/
armeabi-v7a/
gdx-backend-android.jar
gdx.jar 右键打开项目属性 进入
Build Path
在Libraries标签页 点击 Add JARs
找到MyFirstTraingleAndroid项目 打开libs文件夹
添加gdx-backend-android.jar 和 gdx.jar


然后修改MyFirstTraingleAndroid.java文件
import ryan.traingle.MyTriangle;


public class MyFirstTraingleAndroid extends AndroidApplication {

/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
initialize(new MyTriangle(), false);
} }

这些代码是用于实现游戏入口
这里有一个

自己定义的MyTriangle类
initialize方法会去绘制
MyTriangle类的对象
MyTriangle类 的定义写在同一包下面的MyTriangle.java文件中


 import com.badlogic.gdx.ApplicationListener;
import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.graphics.GL10;
import com.badlogic.gdx.graphics.Mesh;
import com.badlogic.gdx.graphics.VertexAttribute;
import com.badlogic.gdx.graphics.VertexAttributes.Usage;

public class MyTriangle implements ApplicationListener{
private Mesh mesh;

@Override
 public void create() {
             if (mesh == null) {
                     mesh = new Mesh(true, 3, 3,
                             new VertexAttribute(Usage.Position, 3, "a_position"));         

                     mesh.setVertices(new float[] { -0.5f, -0.5f, 0,
                                                    0.5f, -0.5f, 0,
                                                    0, 0.5f, 0 });  
                     mesh.setIndices(new short[] { 0, 1, 2 });                      
             }
     }

@Override
public void dispose() { }
@Override public void pause() { } @Override
public void render() {
Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT);
mesh.render(GL10.GL_TRIANGLES, 0, 3);
}

@Override
public void resize(int width, int height) { }
@Override
public void resume() { }
}

在该类中 有一个私有成员mesh对象
create()应该是创建对象时调用的方法
create方法中定义了一些属性 如 顶点以及顶点索引
render()方法中 先清理buffer
然后调用mesh的render方法
这样一个白色的三角型就绘制出来了

这个程序是一个非常简单的三角形绘制实例
可以了解一些Libgdxi引擎的开发环境搭建
同时要注意的是ApplicationListener接口
绘制的过程都是通过实现ApplicationListener接口完成的
本文章只是为对Libgdxi引擎有初步的认识

使用Libgdxi引擎还需多加参考资源中的范例

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值