Libgdx专题系列:对象篇 Game游戏控制中心 Screen 场景
来源:互联网 发布:头颅移植手术成功知乎 编辑:程序博客网 时间:2024/06/05 03:47
声明:
本系列文章使用的Libgdx版本均为0.99版本
Libgdx游戏开发交流群 323876830
这一部分,打算加上逻辑控制中心和场景, 为什么需要这个东西呢?首先我们的场景一般都不会是一个,还有开场的menu场景,暂停场景等其他场景,这样逻辑都写在FirstGame就显得很臃肿,要是实现的话, 我们应该会这样写, 一个基类场景,然后子类实现他,然后有一个切换场景的地,也就是游戏控制中心了, 典型的策略模式的路子。恩。 不错, 想到这些基本上ok了。 Libgdx也为我们简单实现了这部分的逻辑, 不用我们再造轮子了。 且看他的使用方式。
代码如下
public class FirstGame extends Game{ @Override public void create() { setScreen(new FirstScreen()); } @Override public void render() { Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT); super.render(); }}public class FirstScreen implements Screen{ private Stage mStage; @Override public void render(float delta) { mStage.act(Gdx.graphics.getDeltaTime()); mStage.draw(); } @Override public void resize(int width, int height) { // TODO Auto-generated method stub } @Override public void show() { mStage = new Stage(800, 480); Player player = new Player(); player.setPosition(800 / 2, 480 / 2); // 移动操作 MoveByAction action1 = Actions.moveBy(150, 0, 3); ScaleByAction action2 = Actions.scaleBy(3, 3, 3); RotateByAction action3 = Actions.rotateBy(90, 3); // 还原操作 ScaleToAction action4 = Actions.scaleTo(1, 1); RotateToAction action5 = Actions.rotateTo(0); MoveToAction action6 = Actions.moveTo(800 / 2, 480 / 2); // 顺序执行action SequenceAction sequenceAction = Actions.sequence(action1, action2, action3, action4, action5, action6); sequenceAction.setActor(player); // 无限循环三个动作 RepeatAction epeatAction = Actions.repeat(RepeatAction.FOREVER, sequenceAction); player.addAction(epeatAction); mStage.addActor(player); } @Override public void hide() { // TODO Auto-generated method stub } @Override public void pause() { // TODO Auto-generated method stub } @Override public void resume() { // TODO Auto-generated method stub } @Override public void dispose() { mStage.dispose(); }}
好了, 到了这部分, 对象绘制这一块的内容已经结束了, 我们是通过了一个例子贯穿始终,层层递进,步步为营,不断重构我们的代码,后续有什么问题,大家可以留言, 共同修正, 共同进步。
工程下载地址
转载请链接原文地址 http://blog.csdn.net/wu928320442/article/details/16940831
- Libgdx专题系列:对象篇 Game游戏控制中心 Screen 场景
- Libgdx之Game场景切换Screen
- libGDX screen game 多界面游戏
- Libgdx专题系列:对象篇 简单绘制
- Libgdx专题系列:对象篇 Action动作
- Libgdx专题系列:对象篇 Animation动画
- Libgdx专题系列:对象篇 Sprite精灵的使用
- Libgdx专题系列:对象篇 Stage舞台 Actor演员
- Libgdx专题系列:对象篇源码分析 TextureRegion
- Libgdx专题系列:对象篇源码分析 Sprite
- Libgdx专题系列:地图篇 地图移动
- Libgdx专题系列:物理引擎篇 Box2D
- Libgdx专题系列:实例篇 打飞机
- Libgdx专题系列:物理引擎篇 Box2D
- Libgdx专题系列:序言
- Libgdx专题系列:对象篇 纹理的旋转,放缩,位移
- Libgdx专题系列:地图篇 地图的绘制
- Libgdx专题系列:镜头篇源码分析 Camera
- jquery写的两级滑出菜单
- MapReduce框架中PageRank算法的代码实现
- struts2中namespace的用法
- java学习日志——循环和循环嵌套:for,while.do···while
- Oracle 11g透明网关连接Sqlserver 2000
- Libgdx专题系列:对象篇 Game游戏控制中心 Screen 场景
- Extjs4Form之Number
- Android开发设计模式02
- 视频专辑:Windows安全原理与技术视频
- 如何解决EXC_BAD_ACCESS?
- proc_create的使用方法
- android 随手记 log信息保存在本地
- 视频专辑:Servlet视频教程
- Java transient关键字使用