libgdx 环境搭建
1:环境搭建:
(1)首先进入官网,http://libgdx.badlogicgames.com/download.html 点击下方的Releases。进行下载最新的版本号就可以。
这个为我们开发使用的jar和so库。我们假设纯粹开发。不想去看源代码,则下载这一个就能够了。
(2)源代码下载:
点击上方主页的Source,进入github libgdx的主页,https://github.com/libgdx/libgdx 找到右边的Download ZIP进行下载下来。
源代码阅读,使用Source Insight 就可以。
下来我们解压(1)下载下来的压缩文件。
文件夹为:
文件夹介绍:
armeabi armeabi-v7a 为手机开发的so库
Docs为说明文档
Extensions 扩展的三方库
Sources jar源代码
x86 windows开发库
Ios 苹果开发库
后面的jar包为我们须要引入的jar库文件
当中gdx-setup.jar 为我们开发的图形化操作界面。
(3)下载java环境搭建。
去主页找到最新的JDK进行下载http://www.oracle.com/technetwork/java/javase/downloads/index.html,下载下来进行安装就可以
(4)去android主页下载最新的SDK包。去下载eclipse-java-helios-SR2-win32 环境。Eclipse为我们后面一直开发android的开发环境。
进行如上的操作后,此时我们的准备环境则完毕了。下来我们開始进行demo操作,熟悉下这个引擎。
双击gdx-setup.jar文件。出现例如以下界面:
这里我们进行选择。设置我们的包名,类名,生成路径,当中Android SDK 设置为我们的android SDK主文件夹。然后我们呢能够选择平台。默认是所有勾选,假设仅仅想做android,则去掉除android之外的对勾。
点击生成。此时第一次生成时间会比較长,由于系统去下须要的jar库去了。我这边第一次使用了26分钟左右。终于生成成功。
这边生成的是仅仅有android版本号的,详细文件夹为:
Androi文件夹为:
如今我们真正开发会在core文件夹里面。android文件夹仅仅是为了搭建android平台框架而存在。
我们要在eclipse中将android文件夹导入,这边发现一个问题是生成出来的没有lib,因此我们须要将gdx-jar 和gdx-backend-android.jar放进libs文件夹,然后我们须要将core编译配置到android环境里面,我这边的操作是将core\src下的文件拷贝到android\src里面进行开发的。
2 demo查看:
src\com\mygdx\game\android 里面的AndroidLauncher.java 为主界面,我们打开来看下:
public class AndroidLauncher extends AndroidApplication {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
AndroidApplicationConfiguration config = new AndroidApplicationConfiguration();
initialize(new MyGdxGame(), config);
}
}
关键函数:
initialize(new MyGdxGame(), config);
如此以来,我们就将我们的游戏主类挂载上来。
我们打开主类
public class MyGdxGame extends ApplicationAdapter {
SpriteBatch batch;
Texture img;
@Override
public void create () {
batch = new SpriteBatch();
img = new Texture("badlogic.jpg");
}
@Override
public void render () {
Gdx.gl.glClearColor(0, 0, 0, 1);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
batch.begin();
batch.draw(img, 0, 0);
batch.end();
}
}
关键函数:
Render() 这个函数会一直进行调用。全部我们的游戏推进,都是在这里完毕的。
下来我说下整个流程:
系统在android架构的主activity里面。使用initialize 将一个继承ApplicationAdapter 的对象挂接上来,如此以后。系统在initialize 里面将android上面的GLview,输入,按键。文件。网络等初始化完毕,然后在GLview的onDrawFrame 里面一直调用注冊进来的监听的render函数。onDrawFrame 机制是android提供出来,一直进行调用。来进行渲染,驱动游戏进程。
如此下来,我们开发游戏时,记住我们一直在一个大的循环里。一直有一个render进行调用。这样子的话,那么我们就能够仅仅关注render就可以,我们实际开发,则是环绕这个render开展,详细的能够等下一节来解说。
这节我们再来说下引擎框架:
官网位置:https://github.com/libgdx/libgdx/wiki/Modules-overview
我们来说下游戏的开发思路:
在一个大的循环里面,使用时间推动游戏进程,使用触摸,按键。或者时间让场景推进,处理流程,渲染,跳转,更新数据。
Libgdx里面提供的架构为:
Game类 stage类 和actor类。
Game来进行切换场景,stage类用于呈现。以及处理消息,actor为stage上的演员。负责表现,变化自己的行为,显示,从而进行整个游戏的推行。
如此操作后。能够生成apk到手机上进行看效果了。
libgdx 环境搭建的更多相关文章
- Libgdx环境搭建及介绍
Libgdx简单介绍: libgdx是一个跨平台的2D/3D的游戏开发框架,它由Java/C/C++语言编写而成.ibgdx兼容大多数微机平台(标准JavaSE实现,能执行在Mac.Linux.Win ...
- libgdx for eclipse开发环境搭建
1.安装jdk1.7以上 2.下载libgdx1.2.0 下载地址:https://libgdx.badlogicgames.com/releases 3.下载项目创建工具(老版本的) 下载地址:ht ...
- .NET Core系列 : 1、.NET Core 环境搭建和命令行CLI入门
2016年6月27日.NET Core & ASP.NET Core 1.0在Redhat峰会上正式发布,社区里涌现了很多文章,我也计划写个系列文章,原因是.NET Core的入门门槛相当高, ...
- Azure Service Fabric 开发环境搭建
微服务体系结构是一种将服务器应用程序构建为一组小型服务的方法,每个服务都按自己的进程运行,并通过 HTTP 和 WebSocket 等协议相互通信.每个微服务都在特定的界定上下文(每服务)中实现特定的 ...
- rnandroid环境搭建
react-native 环境搭建具体步骤这个大家已经玩烂了,这个主要是记录下来自己做win7系统遇到的坑 1.com.android.ddmlib.installexception 遇到这个问题,在 ...
- python开发环境搭建
虽然网上有很多python开发环境搭建的文章,不过重复造轮子还是要的,记录一下过程,方便自己以后配置,也方便正在学习中的同事配置他们的环境. 1.准备好安装包 1)上python官网下载python运 ...
- springMVC初探--环境搭建和第一个HelloWorld简单项目
注:此篇为学习springMVC时,做的笔记整理. MVC框架要做哪些事情? a,将url映射到java类,或者java类的方法上 b,封装用户提交的数据 c,处理请求->调用相关的业务处理—& ...
- 【定有惊喜】android程序员如何做自己的API接口?php与android的良好交互(附环境搭建),让前端数据动起来~
一.写在前面 web开发有前端和后端之分,其实android还是有前端和后端之分.android开发就相当于手机app的前端,一般都是php+android或者jsp+android开发.androi ...
- Nexus(一)环境搭建
昨天,成功搭建了自己的 Maven 环境(详见:Maven(一)环境搭建),今天就来研究和探讨下 Nexus 的搭建! 使用背景: 安装环境:Windows 10 -64位 JDK版本:1.7 Mav ...
随机推荐
- Linux系统运维笔记(五),CentOS 6.4安装java程序
Linux系统运维笔记(五),CentOS 6.4安装java程序 用eclipse编译通的java程序,现需要实施到服务器.实施步骤: 一,导出程序成jar包. 1,在主类编辑界面点右健,选 ru ...
- [BZOJ2616]SPOJ PERIODNI 树形dp+组合数+逆元
2616: SPOJ PERIODNI Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 128 Solved: 48[Submit][Status][ ...
- NET 异步多线程,THREAD,THREADPOOL,TASK,PARALLEL
.NET 异步多线程,THREAD,THREADPOOL,TASK,PARALLEL,异常处理,线程取消 今天记录一下异步多线程的进阶历史,以及简单的使用方法 主要还是以Task,Parallel为主 ...
- Nwjs开发桌面应用
使用Nwjs开发桌面应用体验 https://www.cnblogs.com/zhupengfei/p/8906131.html 之前一直用.net开发桌面应用,最近由于公司需要转为nodejs,但也 ...
- Matlab保存uint16格式文件的相关注意事项
在matlab中,我们常使用imshow()函数来显示图像,而此时的图像矩阵可能经过了某种运算.在matlab中,为了保证精度,经过了运算的图像矩阵I其数据类型会从unit8型变成double型.如果 ...
- 黑马程序员_java基础笔记(15)...银行业务调度系统_编码思路及代码
—————————— ASP.Net+Android+IOS开发..Net培训.期待与您交流!—————————— 1,面试题目:银行业务调度系统 模拟实现银行业务调度系统逻辑,具体需求如下: 银行内 ...
- spark streaming的容错:防止数据丢失
官方这么说的 [Since Spark 1.2] Configuring write ahead logs - Since Spark 1.2, we have introduced write ah ...
- SpringBoot属性配置
一:url的配置 1.配置 默认配置文件是application.properties 2.配置 配置端口 配置context path 3.启动效果 4.第二种配置方式 要先删除applicatio ...
- ionic获取ios唯一设备id的解决方案
经常有朋友来问这个问题. 每次都去解释这个问题也浪费不少时间, 所以还是开一篇文章, 把这个问题说清楚吧. 先纠正一个误区吧: 有同学可以通过ionic natvie的device插件获取. 我们在文 ...
- collectionView代理方法快速设置cell大小上下左右间隔
#define JianGe 25 #define GeShu 4 #define ScreenWidth ([UIScreen mainScreen].bounds.size.width) #def ...