什么是libGDX

libGDX基于OpenGL(ES)的跨平台Java游戏开发框架,它适用于Windows,Linux,MacOS,Android,浏览器和iOS。

特性

  1. 跨平台

libGDX提供了统一的API封装,只需要一套代码就可以让libGDX编写的游戏可以发布到Windows, macOS, Linux (包含树莓派), Android, iOS和HTML5等各个平台上运行。

  1. 开源

lIBGDX是基于Apache LICENSE 2.0开源协议的项目,不需要花费任何费用,也不担心商业授权问题

  1. 生态丰富

有许多工具库和插件可供采用,提供了插件展示中心,方便大家查看和使用

4、完整性libGDX提供了完整的解决方案,除了不包含可视化IDE,libGDX提供了游戏引擎所能提供的一切特性,从编码到打包完全一站式解决。

那么讲了那么多如何开始使用libGDX呢?下面就让我们一起开始初步搭建一下libGDX开发环境吧

搭建开发环境

首先,我们需要一个java环境和 IDE(集成开发环境)。

JDK版本要求

libGDX推荐使用JDK8-jdk15的版本,目前并不支持最新的jdk16,这点需要注意。

编辑器选择

对于 java 开发者来说,我们手头上使用的eclipse、idea、Android Studio都可以作为libGDX的编辑器。

libGDX官方推荐使用Android Studio作为开发工具,因为它既可以开发桌面、浏览器游戏,也可以很方便的开发和模拟移动端开发环境。它既可以开发桌面、浏览器也可以开发移动端,比较方便

如果没有这些IDE也不要紧,到编辑器的对应官网下载一个安装上就可以了,这里就不多介绍了,可以自行安装。

那么jdk和编辑器都很简单,下面我们来讲讲怎么在这些IDE上安装配置libGDX的开发组件。

ios平台开发组件补充

如果需要开发ios的游戏,需要额外下载robovm插件,eclipse、idea和Android Studio都可以到这里下载:​​robovm.mobidevelop.com/​

注意: iOS 项目只能在 macOS 上编译。

这样我们的环境就搭建好了,下面让我们开始构建一个libGDX项目

构建libGDX项目

libGDX 提供了一个构建工具,帮助我们快速构建项目。

下载构建工具

下载地址:​​libgdx.com/assets/down…​

运行构建工具

下载好工具后,直接运行即可(保证jdk先安装好才能运行)

java -jar ./gdx-setup_latest.jar

填写项目一些参数信息,点击 “Show Third Party Extensions”,可以查看libGDX社区制作的扩展组件。然后简单设置下项目参数,点击“Generate”就可以把项目生成好了。

生成完后发现libGDX是基于gradle的项目,所以需要大家还需要了解一下gradle项目构建工具。

这里我们简单介绍一下生成的项目结构。

生成的项目目录结构

settings.gradle            <- 用于定义子模块,比如core, desktop, android, html, ios
build.gradle <- gralde的build文件,用于定义依赖项和插件
gradlew <- 本地gralde包装
gradlew.bat <- 在windows上运行的gradle脚本
gradle <- script that will run Gradle on Unix systems
local.properties <- IntelliJ文件,用以确定Android SDK本地路径

core/
build.gradle <- core模块的Gradle build 文件
src/ <- 所有游戏源代码所在文件夹

desktop/
build.gradle <- desktop模块的Gradle build文件
src/ <- pc端桌面项目代码, 包含LWJGL启动类

android/
build.gradle <- Gradle build file for android project
AndroidManifest.xml <- android平台配置
assets/ <- 包含图形、音乐等资源,可以共享给其他项目
res/ <- 包含app图标和其他资源
src/ <- android平台代码,包含 android平台启动类

html/
build.gradle <- html模块的gradle构建工具
src/ <- html项目的代码,包含启动器和html定义
webapp/ <- War模板, 把内容复制到war,包含启动URL索引页面和web.xml文件

ios/
build.gradle <- ios模块的gradle构建工具
src/ <- ios项目代码,包含ios平台启动器

构建工具参数说明

标题

说明

Name

the name of the application; lower-case with minuses is usually a good idea, e.g. mygame

Package

the Java package under which your code will reside, e.g.

Game Class

the name of the main game Java class of your app, e.g. MyGame

Destination

the folder where your app will be created

Android SDK

the location of your Android SDK. With Android Studio, to find out where it is, start Android Studio and click “Configure” -> “SDK Manager”. By default it is in /Users/username/Library/Android/sdk

Sub Projects

libGDX is cross-platform. By default, all the target platforms are included (Desktop; Android; iOS; HTML). There is no need to change the default value unless you are sure you will never compile for a specific target.

extensions

the extensions offered are:

Bullet

3D Collision Detection and Rigid Body Dynamics Library.

FreeType

Scalable font. Great to manipulate font size dynamically. However be aware that it does not work with HTML target if you cross compile for that target.

Tools

Set of tools including: particle editor (2d/3d), bitmap font and image texture packers.

Controller

Library to handle controllers (e.g.: XBox 360 controller).

Box2d

Box2D is a 2D physics library.

Box2dlights:

2D lighting framework that uses box2d for raycasting and OpenGL ES 2.0 for rendering.

Ashley

A tiny entity framework.

Ai

An artificial intelligence framework.

将生成好的项目导入到IDE

  1. IntelliJ IDEA 或者 Android Studio可以直接导入即可

导入好后,需要Reimport all Gradle projects通过gradle加载一下项目所需的依赖到项目中,就可以开始开发了。

  1. eclipse可以通过File -> Import... -> Gradle -> Existing Gradle Project导入libGDX项目

导入好后,Refresh Gradle Project后即可刷新该项目,大部分情况下IDE会自动加载gradle依赖。

那么到现在为止,我们已经搭建好整个libGDX开发环境了,下一步就可以直接开发游戏了,下一篇中我们就可以开始我们的第一个libGDX游戏。

如果觉得博主写的还不错,欢迎“点赞、收藏、关注”一键三连。