- Home /
3d map of all colliders in scene
Hi everyone! I was wondering if anyone has a solution to this... I have previously been using barrages of raycasts in all directions to generate a 3D bitmap (rasterization) of all the colliders for certain buildings. This 3D bitmap was further compressed and then used by my game server because the server itself does not use Unity and does not contain scene information. I'm getting very frustrated because my routine isn't perfect and is proving to have fatal flaws as I play test my game. I used a round-about method to circumvent Unity's bug with RaycastAll and BoxcastAll not picking up multiple enter/exit points in a convex mesh collider. There are other issues as well. So, my question is, is there a way to just loop through my X/Y/Z ranges and check if certain points are inside any collider? OR, perhaps it would be better to loop through the building's COLLIDER list, instead, and punch out bits in my 3D bitmap of where they lie. Unfortunately, I don't know enough to do this on my own because it's not just simple box colliders that are involved. They could be any kind of collider, including mesh colliders, and in any orientation.
Please help! :) Thanks in advance!
Answer by ChristmasEve · Nov 28, 2017 at 03:19 AM
Minutes after I posted this, I came across Physics.CheckBox (DOH!!!) but, it is VERY VERY slow to map my regions this way. So I am still searching for a better solution. This solution is 100% accurate but I'm hoping to accomplish the same thing in a fraction of the time, since my regions change a lot as I develop my game.
I'm basically doing a three dimensional loop, checking EVERY location in my region's volume for colliders using a box of size (0.5, 0.1, 0.5).... I'm guessing the only fast way would be to ditch Unity's Physics calls and iterate the collider geometry, one collider at a time, plotting out what's blocked.
Your answer
Follow this Question
Related Questions
Best method to make the main character traverse multiple layers of objects using Unity 2D 1 Answer
How to check if 2 collisions are on the same objects ? (is player on the same ground than enemy?) 2 Answers
How can I let the ray to the edge of the capsule? 1 Answer
colliders arenot colliding 1 Answer
How to check collisions of static objects when spawned at Random? 0 Answers