Becoming an Indie Game Developer with Gideros Studio

Tags: lua, gideros, crossplatform, gamedev
Published: 2021-07-18 09:51:50

If you are planning to becoming an indie game developer then you should give a try to [Gideros Studio](http://giderosmobile.com) Studio.

**Why Choose Gideros Studio to build games?**

These are the main reasons to start using Gideros for your next game:

* Gideros Studio is free and open-source. 
* Cross-platform to publish your game to multiple platforms.
* Fully IDE to develop, test and publish your game.
* Easy and fast game development, ideal for prototyping.
* Object oriented programming is supported.
* Your game runs at Native speed in every published platform.
* Gideros Studio provides a Plugins system to extend it.
* Active [Forum](http://forum.giderosmobile.com/) to resolve any question.

## Gideros Studio is free and open source

**Gideros Studio is Free**

[Gideros Studio](http://giderosmobile.com) is a *free* and *open-source* development environment to make cross-platform 2D games in a easy and quick way.

Gideros Studio needs OpenGL 3.0 or better and at least 1Ghz and 1Gb RAM and runs on:

* Windows XP, Vista, 7, 8, 10
* Mac OS X Lion or later.
* Linux with Wine Emulator or compile from source code.
* Raspberry Pi 2 or 3, compiling compile from source code.

You can download the [Last release of Gideros Studio](http://giderosmobile.com/download) without cost. Anyway you can also [Download and colaborate](http://giderosmobile.com/donate&download) with this project to help to keep working on this project.

![Gideros Download](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/x8ltfjjnq7qyckszg04m.png)

**Gideros Studio is Open source**

The Gideros Studio is also open source and available in the [Github repositories](https://github.com/gideros/gideros), so you can study how it works.

## Cross-platform

Cross-platform feature allows you to develop your game with only *one code base*, and publish it to multiple platforms. 

The following is the list of supported platforms:

* Android
* iOS
* HTML
* MacOSX
* Windows

## Native speed

Gideros Studio is developed on top of C/C++ and OpenGL, so your game runs at native speed on every supported platform. 

Additionally Gideros allows to develop native code for one specific platform with the provided Plugins system.

## Lua programming language

Gideros Studio uses [Lua programming language](https://www.lua.org) to help you to build your next 2D indie game.

Lua is simple and powerful programming language, if you already know another programming language as Java, C# or Javascript then do not worry, you will learn Lua in just a few days or a week.

In my opinion Lua is one of the easiest and powerfull programming language. Take a look to the [official Lua web](http://www.lua.org)

For instance the following source code displays a PNG image at the position (100, 100)

```lua
local bmp = Bitmap.new(Texture.new("ball.png", true))
bmp:setPosition(100, 100)
stage:addChild(bmp)
```

Quite simple, isn't it? 

Furthermore you can read the [Gideros LUA API](https://wiki.gideros.rocks/index.php/Lua_API) reference to know Lua modules and Enhancements provided by Gideros Studio.

## Object Oriented Programming

Gideros Studio provides a [Set of classes](https://wiki.gideros.rocks/index.php/Main_API) to follow a clean [Object Oriented Programming](https://en.wikipedia.org/wiki/Object-oriented_programming) approach when you build your games with Lua programming language.

The above example uses two classes, [Bitmap](https://wiki.gideros.rocks/index.php/Bitmap) and [Texture](https://wiki.gideros.rocks/index.php/Texture) to display image to screen. 

The **Texture** class loads PNG image to memory and **Bitmap** displays the PNG to screen,write only **3 lines of code** to display image to screen.

## Gideros Studio IDE

[Gideros Studio](https://wiki.giderosmobile.com/index.php/Gideros_Studio) provides a complete Integrated Development Environment (IDE) for quick developing and testing your indie games. 

Gideros Studio includes a code editor with *project files manager*, *Lua syntax checking* and *find/replace* tools to build your game without another external editor. 

Create *main.lua* file as the starting point of your next indie game.

![Gideros Studio](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/20rny78zegf1s0ktgieq.png)

When finally you were ready to publish then Gideros Studio also allows you to export it to several platforms with no additional effort.

I've just developed my own [Arkamania Brick Breaker](https://play.google.com/store/apps/details?id=es.jdbc.arkamania) game in just one month, published for Android and iOS.

## Gideros Player

For testing purposes you will use *Gideros Player* with **Hot Reloading** feature which speeds up game development.

Change your Lua code in Gideros Studio, save and test your game instantly in Gideros Player. *Repeat*, *repeat* and *repeat* this process and finish your game without realizing it.

This is how looks my [Flappy Creature](https://play.google.com/store/apps/details?id=es.jdbc.flappy_creature) game in Gideros Player:

![Gideros Player](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ht9wbs142ukzzw68adb0.png)

## Extending with Plugins

[Gideros Studio Plugins](http://giderosmobile.com/DevCenter/index.php/Gideros_plugins) is a feature which enable to develop a C/C++/Swift/Java/Kotlin library and call functions of this library from Lua code.

This is really useful when you need to integrate third-party libraries (Google Play Services, Facebook, In-app billing, Ads…) to your game.

Many plugins are already developed and available from [Gideros Labs](http://giderosmobile.com/labs), but you can develop your own in case you need it. Usually Plugins are developed in C/C++ for all platforms, Java/Kotlin for Android and Swift/Objective-C for iOS.

You can read [Creating Plugins for Android](http://appcodingeasy.com/Gideros-Mobile/Creating-plugins-for-Android-in-Gideros) article for more information.

## Awesome Gideros Resources

¿Are you still reading this article?

Let's check [Awesome Gideros](https://learnpracticeandshare.com/awesome-gideros-mobile-massive-collection-of-resources) to know what Gideros Studio provides you to becoming an indie developer in record time and less effort you think.