LGame01——开篇,游戏框架
来源:互联网 发布:docker 跨主机网络 编辑:程序博客网 时间:2024/05/16 15:26
讨论LGame的人太少了,资料太少了,换了
libs:LAE-1.1.jar
配置文件:
在主Activity中添加android:configChanges="orientation|keyboardHidden"
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.lgamestudy" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="4" android:targetSdkVersion="15" /> <application android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name=".LGameStudyActivity" android:configChanges="orientation|keyboardHidden" android:label="@string/title_activity_main" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application></manifest>
主Activity文件
LGameStudyActivity.java
package com.example.lgamestudy;import org.loon.framework.android.game.LGameAndroid2DActivity;public class LGameStudyActivity extends LGameAndroid2DActivity{@Overridepublic void onGamePaused(){// TODO Auto-generated method stub}@Overridepublic void onGameResumed(){// TODO Auto-generated method stub}@Overridepublic void onMain(){// TODO Auto-generated method stub/* 设置游戏是否横屏 */ this.initialization(true); /* 给Activity赋予一个画面,有点类似于View */ this.setScreen(new ScreenExample()); /* 这个厉害了,指定游戏的帧速率,每秒30帧 */ this.setFPS(30); /* 是否显示游戏帧数(当然显示喇) */ this.setShowFPS(true); /* 不显示Logo(这个没试过显示,先不管,我们要的是HelloWorld) */ this.setShowLogo(false); /* OK,一切准备就绪,显示游戏画面 */ this.showScreen();}}
绘图类
ScreenExample.java
package com.example.lgamestudy;import org.loon.framework.android.game.action.sprite.Sprite;import org.loon.framework.android.game.action.sprite.Sprites;import org.loon.framework.android.game.core.graphics.LColor;import org.loon.framework.android.game.core.graphics.LImage;import org.loon.framework.android.game.core.graphics.Screen;import org.loon.framework.android.game.core.graphics.device.LGraphics;import org.loon.framework.android.game.core.timer.LTimerContext;public class ScreenExample extends Screen{private LImage bgImage = null;private LImage tipImage = null;private final String TAG = "zhang";private Sprite girlSprite = null;/* 精灵:一个弓手女孩 */private Sprites sprMgr = null;public ScreenExample() {/* 加载资源方式1:加载Assets目录的资源,必须制定assets目录名称 */bgImage = LImage.createImage("assets/bgImg.jpg");/* 加载资源方式2:加载res目录的资源,必须制定res目录名称,包括子目录 */ tipImage = LImage.createImage("res/drawable-mdpi/text.png");girlSprite = new Sprite("assets/girl.png", 103, 114);girlSprite.setLocation(50, 250);sprMgr = new Sprites();sprMgr.add(girlSprite); }/* * 官方解释: * 与J2SE版相同,draw中LGraphics会根据设定的FPS自动刷新,使用上与标准的J2SE * Graphics以及J2MEGraphics接口没有区别(API为二者的综合) */@Overridepublic void alter(LTimerContext arg0){// TODO Auto-generated method stub}@Overridepublic void draw(LGraphics g){// TODO Auto-generated method stub/* 简单吧?就是咱们的canvas.drawColor(Color.GRAY) */ g.drawClear(LColor.gray); g.drawImage(bgImage, 0, 0); g.drawImage(tipImage, 10, 10); sprMgr.createUI(g); sprMgr.update(100); /* * 来了,我们的最爱——HelloWorld! * 太简单了,我都不想解释了,绘制"HelloWorld"字符串到屏幕的(100,100)位置 */ g.drawString("HelloWorld", 100, 100);}@Overridepublic void onTouchDown(LTouch arg0){// TODO Auto-generated method stub}@Overridepublic void onTouchMove(LTouch arg0){// TODO Auto-generated method stub}@Overridepublic void onTouchUp(LTouch arg0){// TODO Auto-generated method stub}}
说明:内容多处直接摘用其他网络文章。
- LGame01——开篇,游戏框架
- bada 2D游戏编程——开篇说明
- 4—Android游戏框架
- 开篇——绪论
- passionate——开篇!
- 开篇——初出茅庐
- 开篇——20130828
- Linux——开篇
- Servlet——开篇
- 数据结构——开篇
- 开篇——闲言
- 开篇——概述
- 2017——开篇
- LYOS —— 开篇
- Binder系列—开篇
- 闲话Android游戏开篇
- h5游戏开篇
- 游戏引擎学习-开篇
- 如何在MyEclipse中更改servlet模板 .
- poj3979 分数加减 水题 欧几里得
- GDI编程基础(转贴)
- servfox分析
- 再谈linux中为何没有网卡设备文件--深层次原因
- LGame01——开篇,游戏框架
- 常用音频协议介绍
- 我觉得在传智播客学习是我做的最明智的一个决定!
- 前台开发需要掌握的技术
- C# 抽象类 和 接口 的区别理解
- Android开发环境搭建及ADT下载的问题
- spring--核心
- monogame Unable to load DLL 'openal32.dll': The specified module could not be found
- 笔试总结