- Home /
Unity scale/units and mipmaps
First I'd like to say that this is new territory for me, so I apologise if I use terminology wrong or if there's something explained in a weird way.
I recently became aware of that Unity is made for assets of a certain scale. What I mean is that there is a "correct" size for objects in Unity, more importantly a "correct" scale of complete scenes and their objects.
I've read that 1 unit in Unity is equal to 1 meter. So what I did was to create a grid texture on the terrain with tiles of 1x1 unit (meters). Then dodgy stuff started to happen in the editor:
This resulted in that I had to zoom in a lot more that I am used to, making the movement speed of the camera (editor camera, not game cameras) really fast and very hard to control. Even the slightest push of a button would move it 2-3 meters.
Default objects such as the plane appeared to be huge by default, 10x10 meters to be specific. This was at a default scale of 1 on the plane. I ended up having to give it a scale of 0.1 to make it correct in the environment and for my desired use.
The default skin width of the character controller was way to thick for this scale, resulting in characters hovering in the air without actually touching the ground. I had to turn down skin width to minimum (0.0001).
What I also started to get problems with was mipmaps (sorry if I am using the term incorrectly). When GameObjects were of correct size in their environment, they were far to small according to the mipmaps, making the textures blurry.
I hope someone can shed some light on the issue. If the scale solution does not solve the mipmap issue: How do I deal with it if objects are correctly sized in the scene but the mipmaps overlay says it's to big/small?
Thank you
Answer by DaveA · Jul 21, 2011 at 09:10 PM
Scale is in meters. So is Physics ie normal gravity 9.8 m/s/s. The default plane size is 10, but each grid in it is 1 meter. Characters can come from anywhere, and even those in the tutorials are not necessarily scaled correctly. I always start by putting a 1 unit 'reference' cube in my scene to test if the imported mesh is sized appropriately. This may be what you are experiencing: that a character was modeled in cm or inches or whatever. You found the answer, just set scale as needed. Select an object, hover the mouse over an editor window, and hit the 'f' key. That should make movement sorta normal again.
Unity actually doesn't care what the units are. We recommend that you use metres simply because it makes setting up PhysX easier.
Answer by Waz · Jul 21, 2011 at 09:45 PM
Default objects are what they are. 10x10 would be "too small" if you wanted to use a plane for a football field, too big if you wanted a postage stamp.. Scaling is normal. More normal is to not use default objects at all - they're just temporaries. Almost always you will replace them with objects modelled in your modelling software.
Character skin width need not be changed - just move/shrink the controller's capsule.
Your blurry textures may be from having Anisitropy set too low.
Your answer
Follow this Question
Related Questions
Max scale in unity3d 2 Answers
Unity3D - Plane Scale To Pixel 0 Answers
Cloud recognition in Vuforia 0 Answers
Standard Sizes for player 3 Answers