# Awesome Gideros

#

A curated list of awesome resources for the Gideros Game Development Framework that allows you to easily create games and apps for Android, iOS, HTML5, WinRT and Desktop (Windows, OSX). Please feel free to contribute to the list by making a pull request.

## Contents

- Getting Started
- Resources
  - Tutorials and Tips
  - Full game examples
  - Publications
  - IDEs and Editors
  - Graphics and Shaders
  - Scene Managment
  - Input
  - Animation and Tweens
  - Tilemaps
  - Camera
  - Audio
  - Saving and Loading
  - Monetization
  - GUI
  - 3D
  - Plugins
- Useful Lua-Libraries
- License and Contriuting

## Getting Started

- Download Gideros - Get Gideros here (it is free but donations are welcome!).
- Getting Started Manual - Check here first to get an overview of the framework.
- API Reference - Whenever you need to figure something out- this is the first place to go.
- Forum - Join the very helpful community.
- Online Editor - Try Gideros in your browser without installing anything.
- Online Examples - See some of the capabilites of Gideros in your browser.
- Developer Guide - Official list of guides and tutorials.

## Resources

A collection of resources (blog and forum entries, websites, packages etc) for Gideros

### Tutorials and Tips

- Introductory Video Tutorial - By one of the maintainers of Gideros.
- Publishing to Android - Getting started with publishing to Android.
- Improving performance - Forum thread with hints about improving the performance of Gideros apps.
- Desktop API - Overview of the Desktop API to manipulate mouse cursor and window decorations.

### Full game examples

- Simple square-dodge game - Introductory tutorial about creating a simple square-dodge game.
- Top-down roguelike Tutorial - Extensive tutorial series about making a turn-based roguelike in Gideros.
- Breakout Clone - Tutorial about creating a Breakout-like game using Gideros and Box2D.
- “Grab the treasure” course - Comprehensive getting-started guide to Gideros by developing a small game.

### Publications

Books about Gideros - Gideros Mobile Game Development - Comprehensive book about developing a game for mobile with Gideros. - Learn Lua for iOS Game Development - Introducing a variety of Lua-based game development frameworks including Gideros.

### IDEs and Editors

Code editors and plugins that work with Gideros - Using ZeroBrane Studio with Gideros - Introductory tutorial for using ZBS with Gideros Remote Preview. - Live Coding with Gideros and ZeroBrane Studio - Video showing the live coding capabilities of ZBS and Gideros. - ZeroBrane Studio integration and debugging - Video tutorial by the creator of ZBS. - Visual Studio Code plugin - With Gideros support (Windows only). - Sublime Text 3 plugin - Adding Gideros support to ST3.

### Graphics and Shaders

- Shaders in Gideros - Introductory text about shaders in Gideros.
- Shadertoy viewer - Check out shaders from Shadertoy using Gideros.
- Intro to clipping and the RenderTarget - Text-based tutorial on how to use the RenderTarget class to create a clipping effect.

### Scene Management

- SceneManager - Easily switch between scenes with or without transitions.
- Passing variables using the SceneManager - Passing variables to the next scene when using the scene manager.

### Input

- GidSwipe - Easy to use tap and swipe manager for mobile.
- Gestures - Define and detect complex gestures from points a list of points.
- Accelerometer - Quick example of how to use the device accelerometer as input.
- Shake detection - Small snippet to detect device shake.

### Animation and Tweens

- GTween - Tween sprite variables with this library (comes with all the easing functions you need).
- Animation using MovieClip - Tutorial on how to animate sprites using the MovieClip class.
- Spriteheet animation class - Class that helps with creating and playing animations from spritesheets.

### Tilemaps

- Collision with Tilemaps - Examples and suggestions on how to make stuff collide with the tiles in your tilemap.

### Camera - Smooth camera with Drag and Pinch-to-Zoom - Useful class implementation for a camera in a mobile game.

### Audio

- Intro to using audio with Gideros - Tutorial about generating and using sounds with Gideros.

### Saving and Loading

- Using JSON - Loading and saving manually via JSON.
- DataSaver module - User-friendly wrapper to make saving and loading data as easy as possible.
- Encrypting save files - Some ideas (with code) about securing the save files from unwanted manipulation.

### Monetization

- Admob integration - Video tutorial about integrating Admob into your game.
- Google Service integration - Second part of the Admob tutorial showing Google Play Service integration.

### GUI

- Layout - Comprehensive Gideors GUI framework (forum entry).
- Button class - Simple class for creating clickable buttons.
- AceSlide class - Sliding UI-Element that can be used for example for level selection.

### 3D

Note: 3D support is still in development but if you like to play around with it already, here are some starting points - Tutorial using 3D in Gideros - Introduction by one of the maintainers of Gideros.

### Plugins

- SKStoreReview - Gideros Plugin for SKStoreReviewController iOS 10.3+.
- C++ plugin development - Getting started with Gideros plugin development in C++.

## Useful Lua-Libraries

General Lua libraries that are useful in gamedev but are not Gideros specific

- lume - Great collection of functions that are useful for game development.
- inspect - Easily pretty-print your tables to the console in a readable way.
- jumper - Super-fast grid-based pathfinding for Lua.
- bump - Simple, flexible and fast library for collision detection using axis-aligned bounding boxes (from version 2017.8 onwards Gideros contains a C-port of the library with the same API that should be used instead cbump.
- Bresenham - Bresenham’s line algorithm, implemented in Lua.

## Related Awesome Lists

- awesome-lua
- awesome-love2d
- awesome-gamedev

## License and Contributing

Please contribute to the list. Simply read the contribution guidelines to get started.

gideros.md Github