2D Game Development with libGDX (Udacity)

Offered by Udacity,
2D Game Development with libGDX (Udacity)

This course explores how to use LibGDX to build 2D games that run anywhere, from web browsers to mobile devices. We start with simple drawings, and then turn to simple animations, physics, and user input handling. Finally, we create a full game, called Icicles, where icicles rain down from the top of the screen, and the player must dodge them using the arrow keys or by tilting their phone.

Class Deals by MOOC List - Click here and see Udacity's Active Discounts, Deals, and Promo Codes.

You already know that making and playing games is the most fun you can have with a computer, but if you need more convincing, you should know that over the last decade, mobile gaming has grown into a huge market. It's full of opportunities for independent game developers, or for people looking to join established gaming studios.
If you want the skills to turn your game ideas into reality, or get ready to jump into professional game development, this is the course for you.

What You Will Learn

Lesson 1
Intro to Cross Platform Game Development

  • LibGDX allows you write a game and deploy it to Android and iOS devices, desktop computers and browsers.
  • Explore the functionality that the LibGDX game framework provides.

Lesson 2
Intro to LibGDX

  • Import and your first LibGDX project.
  • Run it on your computer and Android device.
  • Learn the basic structure of a LibGDX game.

Lesson 3
Drawing

  • Use the LibGDX ShapeRenderer object to draw some simple shapes (and some not-so-simple fractals).

Lesson 4
Cameras and Viewports

  • Use a camera to focus the player's field of view on a portion of a larger game world.
  • Learn to use viewports to simplify camera management.

Lesson 5
Movement

  • Create simple animations and physics effects by updating the game world over time.
  • Learn to break up a complex game into separate screens.

Lesson 6
User Input

  • Handle key presses, touches, and accelerometer input.

Lesson 7
Growing Icicles

  • Create the core of Icicles, including player controls.

Lesson 8
Polishing Icicles

  • Add scoring, a head-up display, and a difficulty select screen.

Prerequisites and Requirements
This course assumes basic proficiency with Java, including working with collections, implementing interfaces, and extending abstract classes. It is also assumed that you can read and understand documentation and source code.
Proficiency with Git and Android Studio is helpful, but not required.
To brush up on these skills, consider taking Java Programming Basics, and How to Install Android Studio.

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Data Structures and Design Patterns for Game Developers (Coursera) Coursera
University of Colorado System

Data Structures and Design Patterns for Game Developers (Coursera)

This course is the fourth course in the specialization about learning how to develop video games using the C# programming language and the Unity game engine on Windows or Mac. Why use C# and Unity instead of some other language and game engine? Well, C# is a really good language for learning how to program and then programming professionally. Also, the Unity game engine is very popular with indie game developers; Unity games were downloaded 16,000,000,000 times in 2016! Finally, C# is one of the programming languages you can use in the Unity environment.

Nov 9th 2026
4 Weeks
Desarrollo de Videojuegos 3D en Unity: Una Introducción (Coursera) Coursera
Universidad de los Andes

Desarrollo de Videojuegos 3D en Unity: Una Introducción (Coursera)

Este curso te permite crear un prototipo de juego 3D, explorando los conceptos necesarios y las herramientas para desarrollo de videojuegos en 3D disponibles en Unity y en la Web. Explorarás y harás uso de herramientas para crear una escena 3D en Unity, podrás agregar personajes y animaciones 3D e integrarlas en los escenarios que crees, podrás definir comportamiento e interacción entre elementos del videojuego, y publicar en la Web los resultados de lo que diseñes. Vas a utilizar como base los conceptos aprendidos en el curso introductorio de desarrollo, ahora aplicados a juegos 3D.

Nov 16th 2026
5-12 Weeks
Programming in Scratch (edX) EdX
Harvey Mudd College,HarveyMuddX

Programming in Scratch (edX)

See how easy learning computer science can be. Use Scratch to create games, animations, stories and more. Want to learn computer programming, but unsure where to begin? This is the course for you! Scratch is the computer programming language that makes it easy and fun to create interactive stories, games and animations and share them online.

No sessions available
5-12 Weeks
Introduction to VR Programming, Design, and Unity (FutureLearn) FutureLearn
VR Voom

Introduction to VR Programming, Design, and Unity (FutureLearn)

Step into the world of VR game development, learn the basics of programming language, and even create your own 2D game. Learn how to design, program, and create your very own VR games. The gaming industry has grown exponentially, outperforming both movies and sports combined in 2020. And VR is the newest, exciting innovation taking the industry by storm.

Jun 27th 2022
5-12 Weeks
Introduction to Indie Games (FutureLearn) FutureLearn
Institute of Coding,UAL Creative Computing Institute

Introduction to Indie Games (FutureLearn)

Explore the thriving independent video games industry, and develop the skills to kickstart your career in the sector. Learn how great indie games are made and what it takes to work in the industry. The video games sector is booming, employing more than 16,000 people in the UK. Moreover, 99.5% of all UK games companies are small and medium-sized independent enterprises.

Jun 29th 2020
2 Weeks
Introduction to Psychological Aspects of Game Design (edX) EdX
LaSalle College,LaSalleX

Introduction to Psychological Aspects of Game Design (edX)

Learn the fundamental concepts and practice of game design and the theory connected to it. Are you ready to take the first step from gamer to game designer? Then this course is for you! This course is an introduction to the basic concepts of game development and design theory, and explores how these concepts affect the ways we design and interact with games.

Self Paced
Self-Paced
How to Make a Platformer Using libGDX (Udacity) Udacity
Udacity

How to Make a Platformer Using libGDX (Udacity)

'2D Game Development with libGDX' explored the basics of the libGDX game framework, from simple drawing to user input. This course will use those skills to create a much more sophisticated platforming game called GigaGal. In creating GigaGal, you'll learn about sprite drawing, keeping track of complex game state, controlling interactions between game entities, and also how to load and manage level data.

Self Paced
Self-Paced
Planning, HUDs, and Spawners in GameMaker (Coursera) Coursera
University of Colorado System

Planning, HUDs, and Spawners in GameMaker (Coursera)

This course is the third course in the specialization about learning how to develop video games using GameMaker on Windows or Mac. Why use GameMaker instead of using C# and Unity or C++ and Unreal*? Learning to develop games with GameMaker is much easier than learning to program in C# or C++ AND learning Unity or Unreal. If you just want to continue learning how to develop games in a more "gentle" way, this is a great starting point.

Nov 9th 2026
4 Weeks
Programming with Scratch (Coursera) Coursera
The Hong Kong University of Science and Technology - HKUST

Programming with Scratch (Coursera)

Learning coding is not only about understanding the programming language being used, but also developing important computational thinking skills, which are useful for problem solving across many disciplinary areas. In this course, students will learn basic programming skills by creating interactive storybooks, animations, and games with Scratch, which is a block-based visual programming language for anyone new to coding.

Nov 23rd 2026
5-12 Weeks