Ultimate Isometric toolkit v 2.3

Ultimate Isometric Toolkit discussion

DEMOS
DOCS

Features:

Isometric Depth Sorting
Isometirc Collisions
Isometric Physics
Mouse & Touch inputs
GridMap datastructures
Supportive editor extensions to speed up level design, such as:
custom handles for isometric directions
Isometric snapping
Precise positioning
Approx. 480 diffrent sprites for 3 diffrent settings
Medieval Kingdom
City Buildings/Cars/Roads/…
Exoplanet/Sci-Fi
Sample Character Controllers for:
TurnBased Games
Continuous Movement
Discrete Movement
Movement restricted by Collision Detection
Tower defense games
5 Sample Scenes
Easing-Functions
move objects around in more natural ways
Procedual Level Generation
save time by generating levels

let me hear what you think about it

I sent an email to you about the product and a question, i hope to get an answer soon. By the way, its been a great product, thanks

i just replied. I hope this helped with your problem.

First Video online. Hope you like it

really cool, any chance in having playmaker actions for your kit, something that could interact with the movement of the sprites and so on??

Ultimate Isometric Toolkit is on madness sale. And it is doing great

I did not check out the Playmaker Asset yet.
But sprite movements are supported currently.
Easing functions, moveToPosition functions, movement per frame, etc.

I can access all of those features using playmaker’s get/set property, but there are some issues with playmaker when exporting to ios when we use a lot of get set property, having native actions for it would sort the problem, I had a look at your code and though I dont fully understand it ( I could only figure out the maths for positioning) I think that a proficient coder would easily port it to playmaker (maybe the guys at hutonggames.com could help you?).

Also, how would I do to have a character follow the contour of a tile, I mean, if we have a ramp and we want the character to smoothly go over it, like you have in your towerdefense scene , where they go over a slightly curved bridge,but without using nodes?

thanks for your time

A controller that moves along a set of nodes seems quite handy to me. To make your objects move up a ramp, just add another node that is positioned upwards slightly.

without nodes you would need something like collision detection. But not only would this be hard to write, it would also take a huge overhead.

Hi There,
so I got some troubles setting up the iso Object size of a certain sprites. Especially when the sprites have different tilesize. It always messes up with the sorting. Setting up the pivot point of the sprite is also a struggle too for me. Can you give me some best practices on how to do all these on using the toolkit? I also attached a screenshot, so you can have a better perspective on what i meant.

cheers

Hi Steve,
your problem is a known issue. Setting up the pivot point is basically up to you, but I get best results putting it right to the center or at least very close to it. I will later explain why.

About the overlapping parts of your sprites. I put a lot of work and effort into finding a solution for this, but I guess there isn’t any better solution than what I have found.
The problem is this: If sprites differ a lot in size these overlapping areas will occur, no matter what.

This is because each sprite gets not only a position (x,y) but also a depth in 3d space. This depth applies for the whole sprite ( or for all pixels), where you’d probably want want to calculate this for each pixel individually with individual positions to get perfect results and no overlapping areas (this does not work) .

For your example.The whole temple has a single calculated position including the depth (transform.position) which has best accuracy at its pivot. The same goes for the groundtiles and every other sprite.
The stairway of your temple has the same position as the rest of it, while the groundtile’s position when calculated is in front of the temple (switch to 3d perspective to see this).
In essence the stairway is to far away from its pivot relative to the most outer pixels of the groundtiles.

Now there are 2 solutions for this.

  1. You split up your temple into smaller individual chunks so that there are different positions for (stairway, roof, basement, etc.) to calculate a depth from. This technique is well known amongst other isometric game engines. I would highly suggest to use this approach.

  2. You use the layers of the sprite renderer to generate disjunct areas such as ( underground, 1st floor, 2nd floor, etc.) Just choose ascending numbers for your layers in your scene.

I could make a video about best practices with this toolkit. Please let me know what was most confusing or interrupted your worklow.

I uploaded version 1.3 yesterday for both the pro and the new lite version.

Hopefully it will be online in a week.

How does it handle Colliders? Lets say I want to add an OnMouseDown on an IsometricTile, it’s simple as adding my script which contains the OnMouseDown function to the IsometricTile? Or I have to do something else? Looking at the documentation I saw something about Ghost field in the IsoCollider and from what I have seem, the object that has IsoCollider itself doesnt seem to have any kind of Collider within, which makes me concerned if the object will handle OnMouseDown properly.

Also: How does the iso object monobehaviour behaves if the gameObject is child of a non-iso object, and the father moves…

I’m considering this asset for a 2d isometric farm-like game

Hi. With the new update 1.3 I improved the whole isometric collision and physics part.

Yes. IsoColliders are now just Mesh colliders that are properly generated by the IsoCollider script.
All you have to do is mark them as convex in the editor.

I skipped the whole idea of ghost objects (3d cubes) that would link themself to an IsoObject and mirror their movements.
IsoRigidbodys are obsolete now too. You can use the standard Rigidbody with all its functionalities (explosion forces, drag, etc.). As long as your Scripts would work on a regular 3d object, they should work on an IsoObject too.
So I do not see any problem for clicking/selecting/dragging and using the standard callbacks OnMouseOver/Enter/Exit

An IsoObject’s functionality can be boiled down to this: It is wrapper for the standard Transform component and offers custom handles and editor tools for proper positioning. So that you can not only read or apply a position via transform.Position = value, but also isoObject.Position = value. Which will project your input vector value to an isometric perspective and then apply it to the transform.Position. This projection is isomorphic. It works both ways.
If you now move your object (with or without an IsoObject script attached) its child object would move with it, just like you are used to in Unity and the IsoObject.Position and Transform.Position would update themself.
Please note that a childs object position in Unity is relative to its parent’s position, the same applies to an IsObject since it just wraps the transform.Position value.

Given nice looking Sprites for your isometric farm game I would say you can safe a lot of time and money using the toolkit and end up with good results.
I put now more than 100 hours of recherche and coding in it. Updating it constantly to meet customer demands and giving support to the best of my knowledge.
Not to mention the performance increase since you skip the whole 3d rendering and lighting part.

I hope this answers all your questions :slight_smile:

hi.
is this support isometric hexagonal grid?
thx

I was told it works by another customer under one of my videos

So, I didnt try it and I did not use it for a hexagonal grid yet.

I would say that my Toolkit isn’t the best option available for a hexagonal game, but you should get it working.

An alternative would be this asset I guess: Unity Asset Store - The Best Assets for Game Making

So you have a another option to pick from :wink:

1 Like

hi .
i want to ask about isometric toolkit lite version
functionally, is there any difference between pro version and lite version besides example scene?
also is there possible if i want to make movement like “touch/click - move” using raycast physics?

thank you :slight_smile:

@destapp
the lite version contains the core functionality only.

Addiotional content/features in the pro version are:

  • draggable objects for touch/click user inputs
  • hundreds of more sprites for various themes
  • gridMap dratastructures for your tilebased games
  • character controllers for almost any use case
  • additional sample scenes
  • runtime level generation
  • Easing functions to move players around