{"id":13663036,"url":"https://github.com/kkukshtel/SimpleTilemap","last_synced_at":"2025-04-25T13:31:20.654Z","repository":{"id":40669534,"uuid":"83106994","full_name":"kkukshtel/SimpleTilemap","owner":"kkukshtel","description":"A fast, easy way to generate runtime tilemaps in Unity","archived":false,"fork":false,"pushed_at":"2020-07-08T14:55:17.000Z","size":1956,"stargazers_count":45,"open_issues_count":0,"forks_count":9,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-04-25T01:51:42.550Z","etag":null,"topics":["2d-graphics","game-development","gamedev","unity3d"],"latest_commit_sha":null,"homepage":null,"language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"unlicense","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kkukshtel.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-02-25T04:48:20.000Z","updated_at":"2024-09-18T07:22:38.000Z","dependencies_parsed_at":"2022-08-27T01:02:58.646Z","dependency_job_id":null,"html_url":"https://github.com/kkukshtel/SimpleTilemap","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kkukshtel%2FSimpleTilemap","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kkukshtel%2FSimpleTilemap/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kkukshtel%2FSimpleTilemap/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kkukshtel%2FSimpleTilemap/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kkukshtel","download_url":"https://codeload.github.com/kkukshtel/SimpleTilemap/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250824934,"owners_count":21493368,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["2d-graphics","game-development","gamedev","unity3d"],"created_at":"2024-08-02T05:02:15.644Z","updated_at":"2025-04-25T13:31:19.065Z","avatar_url":"https://github.com/kkukshtel.png","language":"C#","funding_links":[],"categories":["C\\#"],"sub_categories":[],"readme":"# SimpleTilemap v1.0\n\nSimpleTilemap is a totally free library for generating tilemaps in Unity at runtime. \nIt provides users with a single script that, when used with a tilemap sprite, will generate a custom textured mesh with tilemap-indexed tiles, using a single GameObject. \nIts intended use is for 2D pixelart games with orthographic cameras, and has not been tested or verified with 3D assets.\n\n\n![](./images/simpletilemapstand.gif)\n![](./images/simpletilemap.gif)\n\nDeveloped for [@cantatagame](https://www.cantata-game.com)\n\n![](./images/3.png)\n\n## Usage\n\nAll functionality is contained in the single SimpleTilemap script, with an example of full functionality in the two included example Unity scenes and in the APIDemo.cs script.\nThe biggest thing to note with this library is that this script assumes certain import settings on tilemap sprties to work properly, which you can see below.\n\n\n![](./images/import-settings.png)\n\n\nThe big thing to note is that this script assumes that the texture is set to **Sprite** with a **one pixel per unit** PPU setting, **Point filter mode**, and no compression.\n\"Sprite Mode\" is also set to \"Single\", **even for tilemaps**. I recgonize this is somewhat of a limitation, but I also know this is somewhat standard practice\nfor pixelart games in Unity. If anybody has any ideas/opinions around this, please let me know! \n\nThis is also why you need to fill in the tilemap parameters on the script. For more info on the component, see below.\n\n## Component parameters\n\n![](./images/final-component.png)\n\nThe component is relatively barebones, but displays core parameters to get the script working. In order:\n\n**Map Render Type** allows you to choose between a Standard Grid map and an Isometric map. \nThe main difference here is that Isometric maps are rendered in a slightly different way than standard maps, which is reflected in the appearance of the \"Tile Art Height Fraction\" and \"Tile Pivot Y\" parameters when Isometric is selected.\n\n**Map Size** allows you to select how wide/tall you map is. Worth noting is that in standard maps, (0,0) is the bottom left corner, and in Isometric maps it is the leftmost corner. \nThe max map size is currently limited to 100 only because that runs up againsts Unity's max vert number for a single mesh. I have ideas about how to make bigger maps, but I'll wait and see if it is a thing people are interested in.\n\n**Tile Width/Height** is the width/height of a single tile in the tilemap, in Unity units. Note that this isn't how tall the art is in a given tile, but the actual tile dimensions.\nThis should normally be your PPU import setting * dimension in pixels of your tile, but changing these values while maintaining the same ratio between them will result in a small or large **rendered** tilemap.\n\n**Tile Art Height Fraction** is only relevant for Isometric maps and determines how to properly draw the map by defining what fraction of your total tile height your tile art occupies. A value of '2' would indicate that the tile base of your art is 1/2 the total height of your tile.\n\n**Tile Pivot Y** determines where the leftmost point on a given tile in your isometric tilemap is in Y (X is assumed to be 0). This assumes that a given tile's (0,0) is in the bottom left corner, so this should be a positive value, with a maximum at your Tile Height.\n\n**Render Spacing** controls how much space there is in Z between tiles on different \"layers\". This setting defaults to 1 and should be fine for most games. This is how the library sorts depth.\n\n**Tilemap Material** this is the default material used to render the tilemap. It shouldn't be changed, but in actuality is just the Unity default Unlit/Transparent Cutout shader.\n\n**Tilemap** is your actual tilemap sprite.\n\n**Tile Columns/Rows** is how many columns/rows are in your provided tilemap.\n\n## Where to go from here\n\nI'd love to hear feedback (issues/pull requests/DMs/etc.) on this library! I can be reached on Twitter through [@kkukshtel](http://twitter.com/kkukshtel) or through my game [@cantatagame](http://twitter.com/cantatagame)). The intention is to keep the library as barebones as possible, so if you can think of features almost everyone would want, let me know, or submit a pull request.\n\n## License\n\nDo whatever.\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkkukshtel%2FSimpleTilemap","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkkukshtel%2FSimpleTilemap","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkkukshtel%2FSimpleTilemap/lists"}