AndEngine学习之HelloWorld

2016/10/9 13:57:30 人评论 次浏览 分类:AndEngine

AndEngine是Android平台的开源的基于2D OpenGL的游戏引擎。其内置了Box2D,可以很方便的在程序中使用各种物理效果。其实,Android的游戏引擎也有其它的,但是AndEngine作为我接触的第一个引擎,且网上说它的游戏动作扩展功能比较多、全面,就拿它做学习了。
    且不说它怎样,再说愚人也是刚学习。先上来个HelloWorld再说吧。有一点比较痛苦的是,这东西没有文档,所以写点笔记啥的备忘呗。
    import org.anddev.andengine.engine.Engine;
    import org.anddev.andengine.engine.camera.Camera;
    import org.anddev.andengine.engine.options.EngineOptions;
    import org.anddev.andengine.engine.options.EngineOptions.ScreenOrientation;
    import org.anddev.andengine.engine.options.resolutionpolicy.RatioResolutionPolicy;
    import org.anddev.andengine.entity.scene.Scene;
    import org.anddev.andengine.entity.scene.background.ColorBackground;
    import org.anddev.andengine.entity.text.ChangeableText;
    import org.anddev.andengine.opengl.font.Font;
    import org.anddev.andengine.opengl.texture.Texture;
    import org.anddev.andengine.opengl.texture.TextureOptions;
    import org.anddev.andengine.ui.activity.BaseGameActivity;

    import android.graphics.Color;
    import android.graphics.Typeface;

    public class MainActivity extends BaseGameActivity implements Base {
private Camera canmera;
private Texture myTexture;
private Font myFont;
@Override
public void onLoadComplete() {
}

@Override
public Engine onLoadEngine() {
//构建摄像机
this.canmera = new Camera(0, 0, CAMERA_WIDTH, CAMERA_HEIGHT);
// 构建引擎,屏幕为竖屏,按比例拉伸
return new Engine(new EngineOptions(true, ScreenOrientation.PORTRAIT, 
new RatioResolutionPolicy(CAMERA_WIDTH,CAMERA_HEIGHT), canmera));
}

@Override
public void onLoadResources(){
this.myTexture = new Texture(256,256,TextureOptions.BILINEAR_PREMULTIPLYALPHA);
this.myFont = new Font(this.myTexture, Typeface.create(  
                Typeface.DEFAULT, Typeface.BOLD), 32, true, Color.BLACK); 
// 注入相关纹理及字体  
this.mEngine.getTextureManager().loadTexture(myTexture);
this.mEngine.getFontManager().loadFont(myFont);
}

@Override
public Scene onLoadScene() {
// 构建场景,允许的最大Layer数量为1 
final Scene myScene = new Scene(1);
myScene.setBackground(new ColorBackground(1.0f, 1.0f, 1.0f));
final ChangeableText myText = new ChangeableText(5, 5, this.myFont,  
                "Hello World!", 50); 
        // 将ChangeableText注入场景  
        myScene.getTopLayer().addEntity(myText);
        return myScene; 
}
}
    其中四个必须被重载函数的启动顺序如下: 
    onLoadEngine->onLoadResources->onLoadScene->onLoadComplete

相关教程

  • android游戏引擎andengine学习系列二简单的例子

    如何高效的学习,这才是我们最值得去学习的。 首先导入架包,下载:http://download.csdn.net/detail/duancanmeng/4060082 lib文件夹中像我们写Android程序entends Activity一样,我们一开始也要extends BaseGameActivity,而且实现四个必须被重载函数:[java] view plain co…

    2016/10/9 14:05:05
  • AndEngine游戏开发系列教程

    链接地址:http://www.apkbus.com/android-130403-1-1.html一、简介AndEngine基于libGDX框架开发,使用OpenGL ES进行图形绘制,底层使用C++编写,通过JNI调用来实现,因此比较高效,功能强大。同时集成了Box2D物理引擎,因此能实现一些较为复杂的物理效果。在Rokon(另一个Android …

    2016/10/9 13:59:41

共有访客发表了评论 网友评论

验证码: 看不清楚?