All Projects → ycarowr → UnityHexagonLibrary2d

ycarowr / UnityHexagonLibrary2d

Licence: MIT license
A library to manage 2D hexagonal tiles in Unity.

Programming Languages

C#
18002 projects

Projects that are alternatives of or similar to UnityHexagonLibrary2d

Apple Signin Unity
Unity plugin to support Sign In With Apple Id
Stars: ✭ 228 (+293.1%)
Mutual labels:  unity-scripts, unity-asset, unity-3d, unity3d-plugin, unity2d
UnityDebug
A wrapper script for Unity debug calls to use conditional attributes in order to avoid debug code being compiled into release builds.
Stars: ✭ 29 (-50%)
Mutual labels:  unity-scripts, unity-asset, unity-3d, unity3d-plugin, unity2d
Savegamepro
A Complete and Powerful Save Game Solution for Unity (Game Engine)
Stars: ✭ 30 (-48.28%)
Mutual labels:  unity-scripts, unity-asset, unity-3d, unity3d-plugin, unity2d
Unity Script Collection
A maintained collection of useful & free unity scripts / library's / plugins and extensions
Stars: ✭ 3,640 (+6175.86%)
Mutual labels:  unity-scripts, unity-asset, unity3d-plugin, unity2d
unity-firebase-realtime-database
Unity Firebase Realtime Database REST
Stars: ✭ 24 (-58.62%)
Mutual labels:  unity-scripts, unity-asset, unity-3d, unity3d-plugin
UnityGlobalTextSystem
Allow the user to 'change' the default font in Unity from "Arial" to a font of their liking.
Stars: ✭ 21 (-63.79%)
Mutual labels:  unity-scripts, unity-asset, unity-3d, unity3d-plugin
JsonFormatter
Easy, Fast and Lightweight Json Formatter. (Serializer and Deserializer)
Stars: ✭ 26 (-55.17%)
Mutual labels:  unity-scripts, unity-asset, unity-3d, unity3d-plugin
Unity Assetpipeline Presentation
Unity project for "A Technical Deep-Dive into Unity's Asset Pipeline" presented at Develop: 2018
Stars: ✭ 31 (-46.55%)
Mutual labels:  unity-scripts, unity-asset, unity-3d, unity2d
TsukiSuite
A toolsuite created to make Unity development easier
Stars: ✭ 23 (-60.34%)
Mutual labels:  unity-asset, unity-3d, unity3d-plugin, unity2d
Unitylibrary
📚 Library of all kind of scripts, snippets & shaders for Unity
Stars: ✭ 1,968 (+3293.1%)
Mutual labels:  unity-scripts, unity-3d, unity3d-plugin, unity2d
Unity-2017.2-and-Vuforia-6.5---Camera-Auto-Focus
Unity 2017.2 and Vuforia 6.5 Augmented Reality (AR) Camera Auto Focus
Stars: ✭ 17 (-70.69%)
Mutual labels:  unity-scripts, unity-asset, unity3d-plugin
Unity Ui Examples
📚 A collection of UI examples for Unity.
Stars: ✭ 152 (+162.07%)
Mutual labels:  unity-scripts, unity-asset, unity2d
FyWorld
FyWorld - Base-Building / Simulation Game & Tutorial in Unity
Stars: ✭ 207 (+256.9%)
Mutual labels:  tile, tilemap, unity2d
qr-code-unity-3d-read-generate
Generating a QR code / Scanning a QR code in Unity 3D. Pre-build DLL and sample code from old Unity
Stars: ✭ 70 (+20.69%)
Mutual labels:  unity-scripts, unity-3d, unity2d
Savegamefree
Save Game Free is a free and simple but powerful solution for saving and loading game data in unity.
Stars: ✭ 279 (+381.03%)
Mutual labels:  unity-scripts, unity-asset, unity3d-plugin
unity-dijkstras-pathfinding
Dijkstra's Pathfinding Algorithm Unity Implementation. (Not being maintained by me, it is just an experiment.)
Stars: ✭ 80 (+37.93%)
Mutual labels:  unity-scripts, unity-3d, unity2d
AsLib
🎨: RPG map maker (paint tool)
Stars: ✭ 82 (+41.38%)
Mutual labels:  tile, tiled-map-editor, tilemap
Restclient
🦄 Simple HTTP and REST client for Unity based on Promises, also supports Callbacks! 🎮
Stars: ✭ 675 (+1063.79%)
Mutual labels:  unity-scripts, unity-asset, unity3d-plugin
Dlibfacelandmarkdetector
FaceLandmark Detector using Dlib (Unity Asset Plugin)
Stars: ✭ 80 (+37.93%)
Mutual labels:  unity-asset, unity-3d, unity3d-plugin
Unity-FPS-Counter
#NVJOB FPS Counter and Graph. Free Unity Asset.
Stars: ✭ 44 (-24.14%)
Mutual labels:  unity-scripts, unity-asset, unity2d

Unity Version Twitter

A hexagonal board implementation in Unity

The repository contains an API to create, find and store data inside a hexagonal board using Unity Tile Maps and the math described by redblob & references.

A few reasons why I made the project:

  1. I wanted a generic API that could be easily be extended or integrated into a secondary project;
  2. I wanted set of generic classes that manage hexagons and are able to store any kind of data. What I mean by data: creatures, pieces, itens or whatever a main project needs;
  3. I wanted to use the native Unity TileMaps components;

You can find below images that illustrate the functionalities and an overview of the system's implementation.

Feel free to use this tool. Any kind of feedback or credit is well appreciated.

Playable demo here

Functionalities

Diagonals Horizontal
Neighbours Tile Orientation
Add Objects Remove Objects

Shapes & Sizes

Menu & Interface

The interface menu to interact with the board data and test the operations.

Implementation

MVC

  1. Model
  2. Views
  3. Controller

Board

I split the board implementation in three distinct parts:

  1. Board has a data shape that determines it's layout. Also holds a list of Positions that store the data elements on the board;
  2. BoardManipulation is resposible to implement the operations such as diagonals, neighbours or anything else that could come up in the future;
  3. Position is the class that holds the elements placed in the board; Currently each position is able to hold one single object, however it can be extended to an array;

Coordinates

There are two different Coordinates to manage, the Hex and Offset.

  1. Hex is used internally by the Manipulation to figure out the necessary points to include in each operation. Operations using this type of coordinate system have simpler algorithms.
  2. Offset is used by Unity TileMaps native component, in other words, we can't change it;
  3. OffsetCoordHelper is the class that manages the convertion from Hex -> Offset or Offset -> Hex;

TODO

  1. How to use the tool;
  2. How to define your own data;
  3. How to change tiles; ...
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].