• Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
avatar image
0
Question by IgnoranceIsBliss · Aug 01, 2012 at 11:18 PM · importblendersmoothing

Blender Models Always Imported As Smooth

I'm trying to import models from Blender to Unity, but I've run into problems when it comes to importing the normals from the model.

When I use FBX or 3DS files, Blender exports the model as completely smoothed. When I use OBJ files it comes in with the smoothing correct, but with only a single material.

The mesh is made up of three materials, one of which has smoothed shading on its polys where the others are flat-shaded. I need to continue to have this as a single mesh object rather than three seperate meshes, and since they have similar curve rates I can't use 'Calculate' to create the normals at import time since it applies smoothing at parts of the mesh I would prefer flat-shaded.

Is there any way to get Blender to correctly export the normals so that Unity can handle them?

Comment
Add comment · Show 3
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image DaveA · Aug 01, 2012 at 11:29 PM 0
Share

Try not exporting them. Use the .blend file itself.

avatar image Eric5h5 · Aug 03, 2012 at 08:13 PM 0
Share

@DaveA: That won't have any effect in this case, though I'd recommend it anyway.

avatar image Eric5h5 · Aug 03, 2012 at 09:18 PM 0
Share

Yes, all .blend does is have Unity open Blender in the background and export .fbx, so you might as well use .blend so you don't need to export things manually.

3 Replies

· Add your reply
  • Sort: 
avatar image
2
Best Answer

Answer by Coreyf716 · Aug 01, 2012 at 11:48 PM

Hi,

I believe that the models should be smooth when they are imported into Unity. You can set your model to smooth in blender and the edge split modifier, marking flat edges sharp with ctrl + e.

Comment
Add comment · Show 11 · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image Owen-Reynolds · Aug 02, 2012 at 01:21 AM 0
Share

$$anonymous$$y hack from blender is similar, except I just select the edges and $$anonymous$$esh->edge->split (you can see the vert count go up.) Don't use a modifier.

I swear on previous versions (of both programs) I could just set a crease or adjust the maxSmooth angle, and it would handle that for me.

avatar image Coreyf716 · Aug 03, 2012 at 01:09 AM 0
Share

A modifier is easier, and I'm all for easy :) I'm sure he is too.

avatar image Coreyf716 · Aug 03, 2012 at 01:47 AM 0
Share

I used the modifier on my model and here is how it turned out. alt text

screen shot 2012-08-02 at 9.06.20 pm.png (150.1 kB)
avatar image Owen-Reynolds · Aug 03, 2012 at 06:23 AM 0
Share

Well, Y to split and "Remove Duplicates" to undo is a tad fewer keystokes than a modifier, but you don't get the pretty line.

I guess it seems more complicated, but Sharp is really just a "wizard." All it does is show that line and secretely splits the verts (non-smoothed edges need an extra vert to support the extra normal.)

Someone with a modelling background may be happier using modifiers, but nice to know that if the import chokes on the fancy stuff, you can force flat faces "by hand."

avatar image Coreyf716 · Aug 03, 2012 at 08:04 PM 0
Share

Yeah. I do everything with my game. I'm the programmer, 2d artist, 3d artist, game designer, etc. so I prefer to use a modifier.

Show more comments
avatar image
0

Answer by IndieScapeGames · Aug 03, 2012 at 09:47 PM

When you import your model, set the Calculations for Normals to Calculate, instead of Import, and then move the slider bar for Smoothing Angle to 0.

http://docs.unity3d.com/Documentation/Components/class-Mesh.html

Comment
Add comment · Show 3 · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image Coreyf716 · Aug 03, 2012 at 09:51 PM 0
Share

This only worked for me as a .blend file. It made the mesh white with black triangles all over it as an FBX

avatar image IgnoranceIsBliss · Aug 07, 2012 at 10:45 PM 1
Share

That's the key - I don't WANT to use 'Calculate'. The model contains multiple materials - some of them are smooth-shaded and some are flat, although they have similar angles between polygons.

I don't want the whole model smooth or the whole model flat - I want the edges that are marked as flat in Blender to import as flat in Unity, and the same for the smooth.

For complex models with multiple materials, applying a smoothing angle over the whole mesh isn't always good enough because it will smooth items that shouldn't be, or leave them flat when they should be smooth.

avatar image Coreyf716 · Aug 07, 2012 at 10:48 PM 0
Share

Then, like I said, use the edge split modifier and mark sharp edges. It will leave the unmarked edges smooth while flattening the marked edges.

avatar image
6

Answer by circonio77 · Nov 07, 2012 at 11:16 PM

I confirm the solution above.

  • In the project window, select the object.

  • In the inspector window, you will see the Import Settings

  • Select Normals and apply Calculate

Now, the mesh is not smoothed.

Comment
Add comment · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Welcome to Unity Answers

If you’re new to Unity Answers, please check our User Guide to help you navigate through our website and refer to our FAQ for more information.

Before posting, make sure to check out our Knowledge Base for commonly asked Unity questions.

Check our Moderator Guidelines if you’re a new moderator and want to work together in an effort to improve Unity Answers and support our users.

Follow this Question

Answers Answers and Comments

12 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

Weird Blender animation crushed up effect 3 Answers

Stopping the 270 degree FBX default rotation on import 6 Answers

Object Colliders 2 Answers

Bones not importing from Blender 1 Answer

How to fix generate lightmap uvs issue? 1 Answer


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges