- Home /
Method to divide a a map into 3d spaces
Sorry for the newb question (I have experience with coding Java, but this is literally my first day with Unity), but I wanted to see if a community knows the easy way to do this before I figure out the hard way.
Long story short: I have a map that is (as I think it is called here) 'Risk' like: tt is filled with arbitrary spaces. However, unlike most Risk maps, mine will be 3d: in other words if I have a path going up a hill, I want the entire 3d object of the path to be in a 'space', and all the orcs standing on the path are considered in that space. Likewise, a bridge that is higher in the middle than at the ends is also a single space. I want these spaces to be buildable by the level-designers, and not require coding. Also, spaces that touch each other are PROBABLY considered adjacent, but not necessarily so. Likewise, spaces that are not touching may also considered adjacent as well.
I played with this in UDK, and I determined the best way to do this is to create an arbitrary 'volume' that does not effect gameplay and contains the exact 3d location of the space. I am sure there is a way to do this in Unity, what is it called? If I go to GameObject -> Create Empty am I barking up the right tree, or is the a better thing to use?
To determine which spaces are adjacent, I was going to create 'adjacencies', which are arbitrary objects that contain a reference to another space. Then when a level designer wants to declare that two spaces are adjacent, he or she simply creates an adjacency, points it to the target space, and places it physically in the source space. Then when I 'bake' the map, I run a routine that goes through each space, finds all the adjacencies located in that space, and adds their targets to the space's 'Space.getAdjacentSpaces()' list.
Does this sound remotely viable?
Also, what is the best way to determine if an adjacency is inside my space? A quick search tells me to check for collision, but is there a better way?
Finally, is there a better way to do all this that I haven't found yet?
Thanks!
Your answer
![](https://koobas.hobune.stream/wayback/20220613110319im_/https://answers.unity.com/themes/thub/images/avi.jpg)
Follow this Question
Related Questions
Spline Work-Around. Joints? 0 Answers
How to add MoPub Interstitial ads between levels? 0 Answers
A few questions here regarding AI 2 Answers
Space.World and Space.Self don't work 1 Answer
iTween MoveAdd world coordinates Simple 2 Answers