zoukankan      html  css  js  c++  java
  • Libgdx环境搭建及介绍

    Libgdx简单介绍:


    libgdx是一个跨平台的2D/3D的游戏开发框架,它由Java/C/C++语言编写而成。ibgdx兼容大多数微机平台(标准JavaSE实现,能执行在Mac、Linux、Windows等系统,近期增加了对html5的支持)与Android平台(Android1.5以上就可以使用,Android2.1以上可满功率发挥)。Libgdx以native方式自带图像解码器,通过其提供的Pixmap能够对指定图像进行像素级渲染操作,从而不依赖Android的Bitmap载入处理图像,能够支持png、jpg、bmp,近期的两个版本号中增加了对gif图片的支持(假设要做大量动画的话,gif图片能够保证在图片质量减少不了太多的情况下成倍地缩小,这点大家都懂的)。

       Libgdx由audio、files、graphics、math、physics、scenes、utils这些主要类库所组成,它们分别相应了Libgdx中的音频操作,文件读取,2D/3D渲染,Libgdx画图相关运算,Box2D封装,2D/3D游戏组件(3D部分眼下无组件),以及Libgdx内置工具类。


    环境搭建:

    http://code.google.com/p/libgdx/下载地址。

    详情请看http://blog.sina.com.cn/s/blog_940dd50a0101bzde.html

    同一时候,视频地址http://www.icoolxue.com/play/1589

    2.主要类的介绍

       2.1ApplicationListener

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    public class MyGame implements ApplicationListener {
            public void create () {
                    // STUB
            }
            public void render () {
                    // STUB
            }
            public void resize (int width, int height) {
                    // STUB
            }
            public void pause () {
                    // STUB
            }
            public void resume () {
                    // STUB
            }
            public void dispose () {
                    // STUB
            }
    }

        ApplicationListener是一个接口,实现了这个接口的类都有一个共同的特点,它们都会经历一个创建,渲染(render),暂停,继续,销毁等一系列过程,发生相应时间的时候会自用调用相应的函数。特别是render()函数,它是一个系统在不停调用的函数(当然这个实例满足正在执行的条件),因此我们能够把非常多操作放在render()函数中实现,只是千万注意不要进行耗时的操作以免阻塞UI线程。

     

       主要方法:


       2.2AndroidApplication

    1
    2
    3
    4
    5
    6
    7
    public  class LibgdxActivity extends  AndroidApplication {
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            initialize(new MyGame(), false);
        }
    }

    AndroidApplication继承自API中的Activity,因此我们使用它也须要在Manifest中注冊,至于initialize(new  MyGame (), false);第一个參数是一个实现了ApplicationApplication接口的类的实例,第二个參数假设设为true,则在opengl 2.0可用的情况下会使用opengl 2.0。

    这样,我们的第一个libgdx的HelloWord就成功了,不过个黑屏。。。




    
  • 相关阅读:
    Spring2——特殊值的注入问题、自动装配、使用注解定义bean
    关于ueditor配置单图无法上传的问题
    初始WebApi(3)
    WebApi参数检查验证FluentValidation的使用方法
    js获取兄弟之间的标签
    C#集合ArrayList、泛型集合List(3)
    C#栈、堆的理解(2)
    C#值类型、引用类型(1)
    字符串截取的几种方法
    MVC结合Ajax实现简单的批量删除
  • 原文地址:https://www.cnblogs.com/mfrbuaa/p/3884880.html
Copyright © 2011-2022 走看看