- Home /
Is Unity's grid coordinate system "off"
Recently I have been attempting to work with 3d tilesets, all personally created through blender, such that you might see in games like the elder scrolls series where you have various tiles that fulfill the purpose of constructing a modular level with ease. Originally I assumed Unity might support such an endeavor but I ran into a snag. All tiles upon creation and importation into unity work as intended with no seam issues which many people have complained when using the grid snap system. However, upon rotation by amounts of 90, 180 etc. the system seems to approximate where it should be snapping and failing to do so correctly thusly making seams in between the models which should not be there due to an absolute coordinate value in both blender and unity. Using vertex snap can sometimes mitigate the issue but does not solve it outright and many issues arise down the line later if this method is used. During the import phase all models were kept on a grid basis of 4x4x4 grid squares and all scales were kept at 1.
As examples here are pictures of each workstation in both unity and blender where the models properly "snap" together.
Proper Snapping:
Improper snapping creating by rotation:
Does anyone have any real solutions to this or is unity's coordinate and better rotation system the real issue here? I have checked my work a multitude of times and all things should be matching up even after rotation.
Update:
I have been testing things and have switched environment from Blender to $$anonymous$$aya but the problem persists, however, I have been able to narrow it down to the using of non uniform units for overall scale. In meaning this, anything other than 2x2x2 or 3x3x3 etc. causes these gaps to appear on an easily repeatable basis. It seems however that $$anonymous$$aya is more precise than Blender in this effort. Yes it is an easily fixable solution of "just don't use non uniform units" but this is just an avoidance of the real issue. Is this a problem in my modelling or in Unity's coordinate system? I am using no point values only whole numbers so something like this should not arise without error upon rotation, possible some decimals are being rounded off when they shouldn't be?
Hi hiii5, could you change your comment to an answer and then accept it (if you can accept your own answers on here, I've never tried.) It's a good question and answer, and I'm glad to know this now. I have to ask though. Why would you use blender ins$$anonymous$$d of $$anonymous$$aya if you had it (maybe you just trial'd it.) :)
Hi supernat, traditionally I have worked with $$anonymous$$aya, I prefer the more intuitive interface that it brings when compared to other 3D packages. I lost my original one and finally they reintroduced student versions for up to 3 years licences, thus allowing me to get back to work with games. I was attempted to try blender for the sake of open source but overall $$anonymous$$aya spoiled me and I just couldn't get the hang of it.
Answer by hiiii5 · Jun 20, 2014 at 05:19 AM
when imported you must turn mesh compression off or pieces that were meant to tile will not because of a loss of precision. all gaps were removed when I switched from high mesh compression to none.