Master LibGDX Java Game Development and Beyond Volume Two
5.0 (14 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
269 students enrolled
Wishlisted Wishlist

Please confirm that you want to add Master LibGDX Java Game Development and Beyond Volume Two to your Wishlist.

Add to Wishlist

Master LibGDX Java Game Development and Beyond Volume Two

Learn how to develop, design and monetize your games effectively with LibGDX Java Game Framework with examples
5.0 (14 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
269 students enrolled
Created by Goran Lochert
Last updated 4/2017
Current price: $10 Original price: $120 Discount: 92% off
5 hours left at this price!
30-Day Money-Back Guarantee
  • 16.5 hours on-demand video
  • 6 Articles
  • 4 Supplemental Resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
What Will I Learn?
  • Understand how to monetize games using advertising platforms
  • Understand how to integrate advertising plaforms
  • SUPPORT is mind blowing – questions you have are answered that day.
  • Understand how LibGDX works
  • Use Java to solve complicated programming problems
  • Understand how to create reusable components for future game development
  • Understand how to create modules for your games
  • Understand asset loading and master asset management
  • Understand how to create and use bitmap fonts
  • Understand how to create reusable components for future game development
  • Understand how to write clean and maintainable code
  • Use gained skills to create new games from scratch
  • Learn how to reuse code from your previous games
  • Make games from scratch using LibGDX Framework
  • Understand how to write cross platform code
  • Understand how to manage layout on Android
  • Understand how to show banner and interstitial ads
  • Understand how to check collision between different game objects
  • Understand how to create professional User Interfaces for in game menus
  • Understand how to create in-game overlays
  • Understand how to animate game objects
  • Understand how to pack animations for low memory usage
  • Understand how to use test devices for testing monetization
  • Understand how you can easily create your own games
  • Understand different techniques of game development and find what technique is best for your next game
  • Understand how to use Ashley Libgdx extension to develop games
  • Understand what are Entities, Components, Systems
  • Understand what is "entity linking" and how to use it
  • Understand role of passive and utility systems
  • Understand system communication
View Curriculum
  • Some Basic Java Programming Knowledge
  • Some Basic Object Oriented Knowledge
  • Really Basic LibGDX Knowledge is useful (Camera, Viewport, Batch)
  • Android Studio
  • Java Development Kit

Course Updated 19. April 2017.

LibGDX is a free and open-source game-development application framework written in the Java programming language with some C and C++ components for performance dependent code. It allows for the development of desktop and mobile games by using the same code base. It is cross-platform, supporting Windows, Linux, Mac OS X, Android, iOS, BlackBerry and web browsers with WebGL support.

This course is completely project based, and we are going to create fully featured games from scratch using different techniques that LibGDX offers. You will also learn how to use advertising platforms to MONETIZE your game and how to write cross platform code.

We will start with simpler games so you will be comfortable if you dont have so much experience with LibGDX. Some basic knowledge of LibGDX is required (for example how to use Camera, Viewport, Batch).

If there are any problems or questions that you encounter i will try to respond as fast as possible with as much details as i can, sometimes I may ask you to send me your code which will make it a lot easier to help you. That way you will benefit even more from this course.

All project files will be included and you are free to use them for anything that you like, personal or commercial use. Through the course we will create utilities that will help us to debug games, all utilities can be used in personal and commercial use. The only limitation is that you cannot use assets or material from this course to create another course.

This course will teach you have to create custom modules for your game where you can put commonly used code and reuse the same code in other games.

Lets take a look at the games and what are we going to learn inside of this course.

First we will make good old snake game which i call Simple Snake. Goal in this game is to collect coins and avoid collision with snake body.

After creating Simple Snake we will make more complicated game called Circle Jumper. In this game goal is to survive as long as possible. Scoring is based on collecting coins and avoiding obstacles.

Besides of creating our game logic we are going to create menus and different screens that our games need. 

After completing Circle Jumper Game we are going to learn how to MONETIZE your games using advertising platforms. 

You will learn different techniques of game development so in your future games you can start with any technique that is best for your game.

After learning different techniques you will be equipped with more than enough knowledge to continue improving yourself in the field of game development using LibGDX Java Game Framework. You will be able to create your own games and game prototypes from scratch.

If you ever had an idea for great game, then enroll in this course and get knowledge that you need to develop your next game.

In this course you will find useful exercises.

I hope to see you inside!

Who is the target audience?
  • Suited for LibGDX Beginners and Advanced users
  • Suited for students that want to learn LibGDX
  • Not suited for students that do not have basic programming knowledge and basic OOP knowledge
Students Who Viewed This Course Also Viewed
Curriculum For This Course
92 Lectures
2 Lectures 01:15

Introduction to the course.

Preview 00:53

See where to get live help from Instructor or other students.

Where to get live help. IMPORTANT!
Simple Snake Game
20 Lectures 03:43:16

Quick preview of game that we will create in this section.

Preview 01:01

Creating and preparing code for easier development.

Creating Simple Snake Game Project

Prepare base code and classes for Simple Snake Game.

Preparing Project Code

Create EntityBase class, that will contain common behavior of all our game objects.

Preview 07:09

Implement logic to draw snake head body.

Adding Snake Head

Implement logic for moving and controlling snake head using keyboard.

Moving And Controlling Snake Head

Implement coin spawning logic and spawn in game coins.

Preview 09:20

Implement logic for increasing the length of snake when it collects coin.

Increasing Snake Length

Implement logic that will enable collision with snake body parts.

Collision Detection

Implement different game states for simple snake game. 

Game States

Implement loading screen that will be active when assets are loading.

Loading Screen

Implement in game Heads Up Display.


Add logic for updating score when coin gets collected.

Preview 08:44

Learn how to pack game and skin assets that we need to draw.

Packing Assets And Creating Skin

Learn how to draw and position game play assets.

Drawing Game Play Assets

Implementing logic for persisting high score.

Persisting High Score

Implementing Menu Screen.

Preview 15:51

Adding and playing sounds in our game.


Quick section summary.


Section 01 Exercise

Simple Snake Game Ashley
28 Lectures 05:09:22

Create and prepare base classes.

Creating And Preparing Project

Ashley Basic Information.

Ashley Basics

Create Grid Render System.

Grid Render System

Create Debug Camera System

Debug Camera System

Adding snake head entity

Snake Head Entity

Create Debug Render System

Debug Render System

Understand what is entity linking and how to use it.

Understanding Entity Linking Part 1

Understand what is entity linking and how to use it.

Understanding Entity Linking Part 2

Implement Direction System.

Direction System

Implement Movement System

Snake Movement System Part 1

Implement Bounds System

Bounds System

Implement User Control System

User Control System

Implement World Wrap System

World Wrap System

Implement Coin Spawn System.

Coin System

Implement Collision System.

Collision System Part 1

Implement Collision System.

Collision System Part 2

Implement Snake Movement System.

Snake Movement System Part 2

Add additional collision logic

Collision System Part 3

Implement Render System.

Render System Part 1

Implement Render System.

Render System Part 2

Implement HUD Render System

Hud Render System

Add sounds to game.

Sound Listener

Add background entity.

Background Entity

Learn how to cleanup your code.

Bonus: Code Cleanup And Debug Input System

Challenge with solution. Implement Entity Factory System.

Bonus: Improvement Challenge 1: Entity Factory System

Challenge with solution. Implement Sound System.

Bonus: Improvement Challenge 2: Sound System

Challenge with solution. Implement Start Up System

Bonus: Improvement Challenge 3: Start Up System

Quick section summary.

Circle Jumper Game
31 Lectures 06:31:50

Quick Circle Jumper Game Preview.

Preview 02:11

Creating project and reusing code from previous game.

Creating Project

Preparing base code and classes for Circle Jumper Game.

Preparing Project Code

Create EntityBase class, that will contain common game object behavior.

Preview 03:34

Adding Planet Game Entity

Preview 09:52

Adding Monster Game Entity

Adding Monster

Implement monster movement logic.

Moving Monster

Implement jumping logic.


Implement coin spawning logic.

Spawning Coins

Implement Game Manager singleton.

Preview 06:15

Implement simple loading screen that will be displayed while assets are loading in background.

Loading Screen

Implement in game Head-Up Display

Preview 11:31

Implement obstacle spawning logic.

Spawning Obstacles

Implement collision detection logic.

Collision Detection

Implement game wait timer logic with count down.

Game Start Wait Time

Implement better coin spawn logic.

Better Coin Spawn Logic

Implement better obstacle spawn logic.

Better Obstacle Spawn Logic

Implement logic to persist player high score.

Persisting High Score

Learn how to pack game textures.

Packing Textures

Implement logic for drawing the game textures.

Drawing Textures

Adding game object animations.


Add additional animations to game objects.

Additional Animations

Pack skin assets and create skin.

Packing UI Skin

Implement menu overlay that will be used as game menu.

Preview 18:43

Implementing Menu Overlay rendering logic.

Rendering Menu Overlay

Implement and render Game Over Overlay that will server as "Game Over Menu".

Game Over Overlay

Adding and playing sounds.


Learn simple trick to implement floating score that will inform player about scoring.

Bonus Lecture: Floating Score Part 1

Learn simple trick to implement floating score that will inform player about scoring.

Bonus Lecture: Floating Score Part 2

Quick Section Summary



Upcoming Content
1 Lecture 00:01

Content getting added to course

Content getting added to course
Integrate Advertising Platform - AdMob
8 Lectures 01:17:55

Add AdMob dependency to project.

Adding Dependencies

Creating AdMob Account

Creating AdMob Account

Implementing cross platform code.

Ad Controller

Implement custom view to display banner ads.

Custom View For Banner Ads

Implementing cross platform code.

Implementing Ad Controller

Adding Interstitial Ads.

Interstitial Ads

Learn simple trick to implement more efficient Ad Layout

Bonus Lecture: More efficient Ad Layout Trick

Quick Section Summary

2 Lectures 00:26

Some important links.

Important Links

Bonus Lecture: My other courses
About the Instructor
Goran Lochert
4.6 Average rating
125 Reviews
2,780 Students
6 Courses
Software Engineer | Udemy Instructor | Indie Game Developer

I’ve been a software developer for over 10 years (8 commercially), creating Desktop, Web, and Mobile applications during this time.

I am a fully certified Java Developer (Java Oracle Certificate Associate programmer Java SE 8), and have a lot of experience with Java, JPA, Java Enterprise Edition, Maven, and JavaFX.

In addition, I’ve been heavily involved in games development, and frameworks used to create games.

I am an official developer contributor for LibGDX (a very popular game framework), and am heavily experienced with it, as well as AndEngine, Unity and Unreal engine.

Teaching people and sharing my knowledge is a real passion of mine, and I really enjoy providing information that is not accessible anywhere else. 

I create training material that actually teach you how to program, and how things work!  An important distinction, since many tutorials on the Internet allow you to follow along blindly, but fail to explain things so that you can apply this to other projects in the future.

If you want to truly understand how things work, and how to become a programmer, you are in the right place!

I'm On A Quest To Give You The Education You Never Received At School!