Hot File

Using libgdx with intellij idea

View: 79    Dowload: 0   Comment: 0   Post by: kulzxt  
Author: none   Category: Mobile applications   Fields: Game - Entertainment

0 point/0 review File has been tested

The newest, and easiest way to setup libgdx for use with IntelliJ IDEA is to use the gradle build system. A detailed tutorial can be read here

Introduction

The newest, and easiest way to setup libgdx for use with IntelliJ IDEA is to use the gradle build system. A detailed tutorial can be read here

First there will be a short version, outlining only the major steps. This is for people familiar with IntelliJ IDEA or those that have set up libgdx project before and only need a small recap. Below there is a step-by-step guide with screenshots.

Following this guide will enable you to use IntelliJ IDEA while others on your team use the standard Eclipse setup. Note that a workspace in Eclipse is a project in IntelliJ IDEA, and that a project in Eclipse is a module in IntelliJ IDEA.

There is also a github repo containing a pre-built skeleton project for libgdx + IntelliJ that you can clone for a quick start: https://github.com/jrenner/libgdx-intellij-project-skeleton

Quick reference

  1. Create a new project from scratch, name it and name the module Main.
  2. Add a new module named Desktop.
  3. Add a second module, name it Android and select the Android Module type.
  4. Create directories in the Desktop and Main module and name them libs.
  5. Add the following files and directories from the libgdx zip:
    • Main/libs:
      • gdx.jar
      • sources/gdx-sources.jar
    • Desktop/libs:
      • gdx-natives.jar
      • gdx-backend-lwjgl.jar
      • gdx-backend-lwjgl-natives.jar
    • Android/libs:
      • gdx-backend-android.jar
      • armeabi (directory)
      • armeabi-v7a (directory)
  6. Open up the Module Settings and add the content of each libs-directory to the corresponding module.
  7. Make the Main module export its libraries.
  8. Give the Android module a Module Dependency pointing to the Main module.
  9. Do the same for the Desktop module.
  10. Add starter classes.
  11. Remember to configure the manifest.
  12. Link the assets between Android module and Main module:
    • Make a run configuration for the DesktopStarter and set the Working directory to be the Android/assets directory.
    • OR
    • Create a directory named data in the main module, and make a sym-link from the assets directory in the Android module.
  13. Create an awesome app!

 

Step-by-step guide with screenshots

The screenshots were taken when running IntelliJ IDEA Ultimate 11.1.1 on Windows, so everything may not look exactly the same on your computer.

The project in this guide is located in C:\Android and named MyLibgdxGame. All the code for the game will be in the Main module.

Preparing

  • You will need to install the Android SDK and the Android versions you want to target.

  • Make sure the Android plugin in IntelliJ IDEA is enabled. File->Settings->Plugins

Creating the project

  • Select File->New Project
  • Select Create project from scratch in the dialog and press Next.
  • In the next screen, enter the name (1) and select the location (2) of the project. Give the module to be created the name Main (3) and then press Next.

  • In the next screen, select Create source directory, name it src and press Next.
  • Press Finish in the last screen.

Creating the Desktop module

  • Select File->New Module (1).
  • Select Create module from scratch and press Next.
  • Name it Desktop (2) and press Next.

  • Select Create source directory, name it src and press Next.
  • In the next screen press Finish.

Creating the Android module

  • Again, select File->New Module.
  • Select Create module from scratch and press Next.
  • In this screen, give the module the name Android (1) and select the Android Module type (2). Then press Next.

  • Select Create source directory, name it src and press Next.
  • In the next screen, select the Android SDK you want to target (1). Give the application a name(2), a package and create an activity (3). If you have no Android SDK in the drop down menu, or would like to add more, read below.

  • Select a run configuration and press Finish.

Adding Android SDKs to IntelliJ IDEA

This step is only if you need a new Android SDK to select when creating the Android module.

  • Press the [...] button next to the drop down ( (4) in the previous picture).
  • In the new window that appears, press the [+] button (1), select Android SDK (2).
  • Yet another window will open. Here, select where you installed the Android SDK (3) and press OK (4).
  • Select Java 1.6 if prompted, and then select the Android SDK you would like to target (5) and press OK (6).

  • If the Android version you would like to target is not in list (5), you will need to download it through the Android SDK tool first.

Add the libgdx files

  • Right click the Desktop module (1), select New->Directory (2). Name the directory libs and press OK.

  • Do the same for the Main module (3).

  • Download libgdx, either the last stable or the nightlies.

  • In the libs folder for the Main module, place these files from the libgdx zip file:

    • gdx.jar
    • sources/gdx-sources.jar
  • In the libs folder for the Desktop module, place these files from the libgdx zip file:

    • gdx-natives.jar
    • gdx-backend-lwjgl.jar
    • gdx-backend-lwjgl-natives.jar
  • In the libs folder for the Android module, place these files and directories from the libgdx zip file:

    • gdx-backend-android.jar
    • armeabi (the whole directory)
    • armeabi-v7a (the whole directory)
  • The picture below shows how the libraries should be placed when done with this step.

Add the libraries

  • Right click the Main module and select Open Module Settings.
  • Select Libraries (1) in the first panel.
  • Press the [+] (2) above the second column and choose Java if prompted.
  • Select the libs directory of the Android module (3) and press OK.
  • Select the Android module (4) and press OK again.
  • Name it Androidlibs (5).

  • Press the [+] (2) again, but this time select the libs directory of the Desktop module in (3), select the Desktop module in (4) and name it Desktoplibs in (5).
  • Press the [+] (2) again, but this time select the libs directory of the Main module in (3), select the Main module in (4) and name it Mainlibs in (5).

Adding dependencies

  • Select Modules (1) in the first panel.
  • Select the Main module (2) in the second panel.
  • Select the Dependencies tab (3) in the third panel.
  • Check Export in front of Mainlibs (4)

  • Select the Desktop module (5) in the second panel.
  • Press the [+] to the right (6).
  • Select Module Dependency (7).
  • Select the Main module (8) and press OK.
  • Select the Android module (9) in the second panel and repeat (6), (7) and (8).

  • Press OK to close the Project Structure window.

Add the starter classes

  • Right click the Main module's src directory and select New->Package. Give it a name, herecom.example.mylibgdxgame is used.
  • Right click the new package and select New->Java Class and name it. Here MyLibgdxGame is used.
  • Make the class implement ApplicationListener, or extend a class that does so. E.g. make it extend Game.
public class MyLibgdxGame extends Game {
    @Override
    public void create() {
    }
}
  • This is the entry point for your game.

 

  • Right click the source directory in the Desktop module and add a new package here as well.
  • Then add a Java Class to that package and name it DesktopStarter.
  • Make the class look like the run configuration below, substitute the name of the game with the class you created in the Main module.
public class DesktopStarter {
    public static void main(String[] args) {
        LwjglApplicationConfiguration cfg = new LwjglApplicationConfiguration();
        cfg.title = "Title";
        cfg.width = 800;
        cfg.height = 480;
        new LwjglApplication(new MyLibgdxGame(), cfg);
    }
}

 

  • Open up the class in the Android module, which was created when we created the Android module.
  • Instead of extending Activity, the class should extend AndroidApplication.
  • Add initialize and run configurations like below:
public class MyLibgdxGameAndroidStarter extends AndroidApplication
{
    @Override
    public void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        AndroidApplicationConfiguration cfg = new AndroidApplicationConfiguration();
        cfg.useAccelerometer = false;
        cfg.useCompass = false;
        cfg.useWakelock = true;
        initialize(new MyLibgdxGame(), cfg);
    }
}

See Starter Classes & Configuration on how to use these settings and how to set up the manifest.

Linking the asset directories

Android is a bit picky when it comes to assets, so it needs to have all the assets in its own assets-directory and will not fetch assets from the Main module (as the Desktop module would).

This leaves us with three options:

  1. (bad) Keep a copy of each asset in the Android/assets folder, and one copy in the Main/data folder. This can be a lot of work, and you will get crashes every time you try to launch and haven't copied the latest assets.
  2. (good) Make the Desktop module use the Android/assets directory as its working directory. When collaborating with people using the Eclipse set up, this may be the preferred way as you don't have to alter any files or directories in the project.
  3. (good) Create a sym-link between the two directories in your OS. This will make both the directories be "the same" directory.

Alternative 2: Working directory

  • Select Run->Edit Configurations... (1).

  • Press the [+] button (2) and select Application (3).
  • Give the configuration a name (4).
  • Select the DesktopStarter class (5).
  • Set the Working directory to the Android\assets directory (6).
  • Select the Desktop module (7).

Alternative 3: Sym-link

See this image on how to set up sym-link in windows. (will need to run Command Prompt as admin). Linux/OSX can do the same with the ln -s-command.

Note: You will need a data-directory in the Main module, and you will need to prefix all your assets with data/.

And see this image on the run configuration you should use.

 

Tips for using IntelliJ IDEA

CTRL + Q when having the caret positioned over any method or variable or when viewing quick-suggestions will bring up the Javadoc.

CTRL + SHIFT + I will show the code for a method in a small window, nice when you want to quick check the inner workings of a gdx class. This works because we added the gdx-sources.jar

CTRL + LEFT MOUSE CLICK will open up the code in the editor.

CTRL + P will show all parameters to a method.

Using libgdx with intellij idea

Using libgdx with intellij idea Posted on 18-11-2016  The newest, and easiest way to setup libgdx for use with IntelliJ IDEA is to use the gradle build system. A detailed tutorial can be read here 5/10 79

Comment:

To comment you must be logged in members.

Files with category

  • Project setup Guide

    View: 127    Download: 0   Comment: 0   Author: none  

    Project setup Guide

    Category: Mobile applications
    Fields: Game - Entertainment

    0/0 review

  • Using libgdx with intellij idea

    View: 79    Download: 0   Comment: 0   Author: none  

    Using libgdx with intellij idea

    Category: Mobile applications
    Fields: Game - Entertainment

    0/0 review
    The newest, and easiest way to setup libgdx for use with IntelliJ IDEA is to use the gradle build system. A detailed tutorial can be read here

  • Start classes & configuration

    View: 86    Download: 0   Comment: 0   Author: none  

    Start classes & configuration

    Category: Mobile applications
    Fields: Game - Entertainment

    0/1 review
    For each target platform, a starter class has to be written. This class instantiates a back-end specificApplication implementation and the ApplicationListener that implements the application logic. The starter classes are platform dependent, let's...

  • Project setup, running and debugging

    View: 100    Download: 0   Comment: 0   Author: none  

    Project setup, running and debugging

    Category: Mobile applications
    Fields: Game - Entertainment

    0/0 review
    Attention: this is extremely outdated and NOT supported anymore! Please use the Gradle-based setup instead Libgdx is very Eclipse centric due to its Android and HTML5/GWT back-ends. This article discusses how to setup libgdx projects for Eclipse....

  • The applications framework

    View: 89    Download: 0   Comment: 0   Author: none  

    The applications framework

    Category: Mobile applications
    Fields: Game - Entertainment

    0/0 review
    At its core, libgdx consists of six interfaces that provide means to interact with the operating system. Each back-end implements these interfaces.

  • Start Building libgdx from source

    View: 82    Download: 0   Comment: 0   Author: none  

    Start Building libgdx from source

    Category: Mobile applications
    Fields: Game - Entertainment

    0/0 review
    Before trying to build libgdx from source yourself, you'll have to install Eclipse and all other related software. We currently don't support development with other IDEs. In addition you'll have to install Ant and make sure its bin/ directory is...

  • Start Build Infrastructure Setup

    View: 101    Download: 0   Comment: 0   Author: none  

    Start Build Infrastructure Setup

    Category: Mobile applications
    Fields: Game - Entertainment

    0/0 review
    Our build infrastructure has the responsibility of building libgdx for all supported platforms (Windows, Linux, Mac OS X, Android, iOS, HTML). On top of the boring old Java code, we also need to compile the native code for each platform and...

  • Start Running Tests

    View: 102    Download: 0   Comment: 0   Author: none  

    Start Running Tests

    Category: Mobile applications
    Fields: Game - Entertainment

    5/1 review
    LibGDX comes with a ton of small test examples. To run and easily analyze these, you need to work directly from the libGDX source. Running the tests is currently limited to Eclipse, so make sure you have Eclipse setup properly. In addition to this,...

 
Newsletter Email

File suggestion for you

File top downloads

logo codetitle
Codetitle.com - library source code to share, download the file to the community
Copyright © 2015. All rights reserved. codetitle.com Develope by Vinagon .Ltd