Skip to main content
Up and Coming
September 7, 2013

Change scale of entire scene?

I've currently got a scene set up that I'm realizing is much too small for Unity's default editing controls (one twitch of the mouse wheel sends me off into space). The scene is a box/building with an assortment of models inside. All were imported from Sketchup as a single .fbx file.

The problem is that I've been working on adding sound, lighting, video textures, etc. Is there any way to scale an entire scene (and all attached assets) up at the same time? Will I need to just scale each object, one at a time? If I scale an object, will associated textures scale with it?
    This topic has been closed for replies.

    5 replies

    Up and Coming
    September 7, 2013
    Method 1
    Try going to the fbx inside Unity and set the import scaling in there.

    Method 2
    Technically you should be able to create an empty object in the middle of your scene. Put all scene objects inside of that, scale that no-longer-empty-object. Then remove the objects from that object and delete that object. You'd also have to fix your prefabs.
    Viktor: Yes, he was wrong. But just as some things can be right and useless at the same time, can't something be wrong... and priceless?
    Up and Coming
    September 7, 2013
    "Prelucid" wrote:

    Method 2
    Technically you should be able to create an empty object in the middle of your scene. Put all scene objects inside of that, scale that no-longer-empty-object. Then remove the objects from that object and delete that object. You'd also have to fix your prefabs.



    Yes, what Prelucid said.. Make everything the child of an empty game object- scale-, then unparent everything if you wish.

    It's good to build a 1:1 scale reference file to work with in your 3d-packages.. Mine is a garage with a woman, a car, and a spaceship in it.. If whatever I'm working on looks good in there, then I'm promised perfect scaling upon integration.
    Up and Coming
    September 8, 2013
    I've noticed during VR Jam that certain things like animation (particularly root motion) and how far objects travel based on baked animations doesn't scale with the size of the object, so I suggested method 1 first because they said the whole scene itself was imported as 1 single fbx. Though method 0 should be to export at the right size in the first place.
    Viktor: Yes, he was wrong. But just as some things can be right and useless at the same time, can't something be wrong... and priceless?
    Up and Coming
    September 8, 2013
    Thanks for the tips guys. I'm an absolute newbie and sometimes its difficult to tell where a problem lies (camera speed problem or model scale problem, for instance).

    When I sat down to try this out I noticed that my friend had already just reimported the scene and changed the scale some.

    I'm curious though; what would your starting dimensions be (unity units) if you were to make a standard sized living room in Unity?
    Participant
    September 8, 2013
    "UlteriorMotif" wrote:
    I'm curious though; what would your starting dimensions be (unity units) if you were to make a standard sized living room in Unity?


    1 Unity unit = 1m

    The scale to use in your graphics application to get that result without having to do any extra scaling in Unity is dependant on the application. You should be able to find something with a quick google that will tell you the set up for your application to achieve that. (Edit: For example; Scaling in Sketchup to get proper scale in Unity sketchup on the Unify wiki, (I haven't tested if this is accurate))

    Then when importing make sure the scale in the importer is 1.

    For scaling the advise from the Unity docs is to get it correct in the modelling application if at all possible. From the section "The Importance of Scale" in the Transform docs.

    Ideally, you should not adjust the Scale of your object in the Transform Component. The best option is to create your models at real-life scale so you won't have to change your Transform's scale. The next best option is to adjust the scale at which your mesh is imported in the Import Settings for your individual mesh. Certain optimizations occur based on the import size, and instantiating an object that has an adjusted scale value can decrease performance.