Subscribe to GameFromScratch on YouTube Support GameFromScratch on Patreon
21. December 2015


Gideros, the free cross platform Lua based game engine, now runs on Raspberry Pi, the card sized single board computer intended for teaching computer science (and staggeringly cheap).


From the release announcement:


It’s amazing that Christmas is approaching already. As you get older the time between Christmases seems to shrink alarmingly and it feels like about five minutes since last Christmas when we were deep in the middle of our Kickstarter campaign to add WinRT and desktop support for Gideros. At that time we added an additional stretch goal: to port Gideros to the Raspberry Pi. I bought my son a Raspberry Pi for a Christmas present with the secret intention of “borrowing” it to fiddle with Gideros. Well to quote from Wham! it was a case of “Last Christmas, I gave you a Pi and the very next day, I took it away” and my son has had barely a go this year as I’ve taken the Pi to my office where it sits attached to a monitor and an Ethernet cable. At home we had it connected to the TV but that is not really practical for serious programming, especially with Gideros where you need constant access to internet tools like git and apt-get.

It’s important to remember what our goals were in porting Gideros to the Pi. The Pi is an educational computer designed to teach children to code, it is not a games machine. So we wanted the Pi to be a development environment allowing children to code games and apps in Lua and export them to all the supported operating systems. While it might be nice for users to, say, develop code on a PC and export as a stand alone game on the Pi (alongside Android etc) this is a secondary goal. The Pi should be thought of as a development machine like PC or Mac, not a target “device” like an iPad or Android phone.

For a good chunk of the year, I’ve been trying to port Gideros to the Pi which has proved surprisingly difficult, due to two problems. Firstly Gideros is built with a compiler system called Qt and in particular Qt5. The operating system that originally came with my (I mean “our”) Pi (pre-installed using the NOOBS system) was Raspbian Wheezy which for some reason only has access to Qt4. That is, it was only possible to install Qt4 directly from binaries via apt-get. I did attempt to compile Qt5.5 from sources but, after a 3 day compilation process (!), this did not entirely work. I did get a working Qt5 compiler, but there were a few anomalies: resulting executables had all fonts missing and did not run in a window but in a large “panel” which overlapped the entire X-Windows desktop. I now realize that the latter “bug” was actually a useful feature for reasons that will become clear in a moment. I also flirted with the option of rolling back Gideros to Qt4 (which it has previously used) but that turned out to be impractical. Yet another option of rewriting Gideros completely so it does not use Qt (I’m not a fan of Qt personally) proved even less practical…


Read more here, or check out the source code here.

GameDev News

19. December 2015


Corona, the popular Lua based 2D game development SDK just officially moved Mac support out of beta and into official release status.  On the topic of beta, tvOS support was just released in beta form.  They also announced a beta plugin supporting iCloud integration.


From the release announcement:

OS X initial release

As of Daily Build 2015.2795, we are proud to announce that OS X is no longer in beta! We have the core features working at a level where we feel comfortable encouraging you to release apps to the Mac App store. Platforms like this are never complete and there are more features to add, but this marks a stable point in OS X development where we think you can successfully deploy desktop apps for Mac. To learn more, see our Creating OS X Desktop Apps guide.

tvOS now in beta

Additionally, we are removing the “alpha” label from our tvOS support. We believe that you should be able to publish apps to iTunes Connect for tvOS. Of course there is more to do before we can mark this as fully released, but the core features are now in place. You can pick this up inDaily Build 2015.2795 as well. To learn more, check out our Apple TV and tvOS guide.

The iCloud plugin (beta)

We are also pleased to announce the immediate availability of the new iCloud plugin. This plugin lets you store various data types in Apple’s iCloud service. The three main types of data you can store are:

  • Key-Value Storage — This lets you store simple data values like numbers, strings, and tables.
  • Documents — This lets you develop apps where you can save whole files to the cloud and sync them with other devices.
  • CloudKit — This is a full database implementation where you can have public and private database implementations which your app can access from multiple devices.

In its simplest use, iCloud (all three methods) lets you save data from your app to iCloud and retrieve it later when you need it. In addition, if you have your app installed on multiple devices, for example your iPhone and iPad, the app can share data.

To get started with the iCloud plugin, see the documentation and our first tutorial.

GameDev News

15. December 2015


Over the years there have been many tutorial series here on GameFromScratch, many of them aimed at beginning game developers.  What there has never been is a series for complete beginners.  Every single programming tutorial I have ever written has assumed prior programming experience.  Today I am launching a new series that will change this.


Welcome to the newest tutorial series on GameFromScratch, Game Development for Complete Beginners.  I aim to teach game development with a focus on programming in this series.  However I am going to assume zero prior programming experience.  This means we will learn about the programming process, about variables, program flow and other key concepts.  We will also look at tools, debugging, profiling.  All critical tasks to learn for game development.  Of course this requires choosing a programming language and game engine or library.  For this, as you may guess from this page’s title, I chose Love ( or LÖVE/Love2D ) which uses the Lua programming language.  I will explain the reasons in more detail later, but for now simply realize it’s a beginner friendly combination and it’s a programming language that remains useful long past the beginning stages.


Of course this isn’t the kind of thing I can cover in a tutorial or two.  This will require a complete tutorial series.  I am actually composing it in chapter form and will publish each chapter here on GameFromScratch.  I will also be compiling the results together in e-book for Patreon supporters.  For each chapter there will also be one or more videos covering the same material.


In fact, there is already a video companion for this announcement post! Winking smile


Of course your feedback is always appreciated.  Hopefully this series helps makes entry into the world of game programming easier for new developers and it provides some mild amusement for more experienced readers!  Stay tuned for more.


11. December 2015


On the heels of the recent acquisition of Corona by Perk, Corona just announced the private beta release of Corona Ads:


Only a few weeks have gone by since Corona Labs joined the Perk team and we already have some exciting news for developers. We are announcing the Beta for Corona Ads!

Corona Ads features easy monetization via banner ads, interstitials, and video ads. Integration is simple – you can add ads into your app with just a few lines of code. Corona Ads presents a turn-key solution for Corona developers to start monetizing their apps today.

We’re looking for developers to participate in the private Corona Ads product beta.

If you’re interested in signing up for the beta program, please visit our signup form on


If you’ve never heard of it, Corona is a Lua based game engine aimed at mobile game development.  It was featured years ago in the Lua Game Engine round up although a massive amount has changed since that comparison was authored.

GameDev News

30. November 2015

Corona Labs, makers of the popular Lua based game engine CoronaSDK have been acquired by Perk a mobile rewards provider.

From the Corona blog:

Today, I’m really happy to announce that Corona and the team are joining Perk.

Perk is a publicly traded, profitable company that has built a service/platform that rewards people for everyday mobile and internet activities. Their goal is to enable developers like you to leverage their rewards system and advertiser relationships to both monetize and engage your users.

Having gone through multiple acquisitions (most recently with Fuse), I can tell you that this is really good news for Corona.

The key thing for me is that Perk builds and publishes apps — and more importantly — their engineers are huge Corona fans! They’ve built several apps with Corona already and at a fundamental level understand what makes Corona so special.

In fact, when we first met, they told us that it took them 3 months for their team to build an Android app natively. In contrast, one of their developers who had never used Corona before was able to port this app to Corona in 1 month!

The teams on both sides have been talking about a lot of different activities that are going to make this combination really great. And when I look at the conversations that the engineers are having on both sides, it’s clear they talk the same language: no nonsense, let’s get sh*t done.

* * *

This has been an incredible year for Corona.

As I look back at the agenda and themes we set for 2015, I’m extremely happy that we accomplished nearly all of it. The list is really quite extensive: Mac App, Win32 App, Corona Store, Lua-based plugins, custom shader effects, tvOS, etc.

On top of that, we now have a tremendous partner in Perk. They are excited about Corona at all levels of the company. They see value in what the team here does, in what you the community do with Corona, and in what Perk/Corona will be able to do together. The fact that they already build many of their own apps with Corona makes this transition so natural.

Because of all this, I feel like Corona is in the best shape it’s ever been. So I’ve decided this is a really great time to take a step back from my day-to-day role. Moving forward, I’ll be taking on the role as advisor to Perk/Corona Labs.

Pixar co-founder, Ed Catmull, talked a lot about how they built something that is self-sustaining — that will outlive the founders — in his book “Creativity, Inc.” In particular, he highlights the key role that the braintrust plays in that.

Well, the Corona team is my braintrust. These guys are rockstars. I credit them for what makes Corona so special and for why Corona has helped you all build such great apps.

I sometimes wondered if I would ever feel comfortable stepping away from the “captain’s chair”. Not anymore. The team has already stepped up and grown in so many ways. It’s time to take the training wheels off, so that they can continue to grow.

While I won’t be working side-by-side with the team on a daily basis anymore, I hope you’ll join me in cheering them from the sidelines.

Finally, as my last official act, I wanted to thank you — the community — for believing in what we are doing here with Corona. I hope I’ve played a small part in making a positive dent in your universe. I wish you all the best!



It will be interesting to see what, if any, effect this has on the Corona SDK and it’s community.  I covered Corona along side Gideros, Moai and Love in the Battle of the Lua Game Engines a few years back and at that point the Lua based game engines were all but owning the mobile space.  Since then Gideros has gone open source, Moai effectively disappeared and Corona went free just a short while back.  Amazing how fast the gamedev world can change!

GameDev News

AppGameKit Studio

See More Tutorials on!

Month List