• 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 markfrancombe · May 20, 2012 at 02:23 PM · normalmap

Normal maps too bumpy

Hi!

I am putting together a pretty quick demo and using alot of bought models from the Asset Store, to save time. These will in the end be replaced by custom models.

The problem I am having is that where some of the models look ok, many have very high levels of "bumpiness" from the normal maps. When I check the import settings, the map is set to normal map, but there is no "bumpiness" setting. UNTIL I REselect the drop-down, in which case the tick box to generate a normal map from greyscale is ticked, and THEN I CAN adjust the map bump.

The default bumpiness alwasy seems to be set to 0.25, but for it to look good in my game I must select every texture and reduce this setting down to 0.01 or less!

Is there a global bumpiness setting in Unity that I have set too high or something, because it seems like all the asset makers in the assets store can not be wrong, Im sure its me!

any help appreciated!

Mark

Comment
Add comment
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

2 Replies

· Add your reply
  • Sort: 
avatar image
1

Answer by Wolfie · May 20, 2012 at 08:04 PM

The way to do this is using an image editing software, rather than Unity. Although Unity can create a normal map from a greyscale image (ie. bumpmap) the bumpiness setting is basically a way of changing the contrast of that greyscale prior to converting it to a normal map. In your case this won't really help. Although you could generate a normal map from an existing normal map's greyscale, this won't give correct results. This is what's heppening when you reselect the normal map setting (drawing it from greyscale is the default setting).

In Photoshop, or whatever you use, just tweak the red and green channels and it should all look much less bumpy when you import it back into Unity as a normal map (ie. with the generate from greyscale thingy turned off). So yeah, I guess whoever made the assets just had somewhat different tastes in normal maps than you do.

Edit - The Blue channel in a normal map is white (ie 100%) all over. The variations are in the Red and Green channels. To reduce the other channels I don't mean to set them to 0%, as the neutral values for these channels is actually 50% (because the angle of a surface can vary in either direction from the true normal). So yeah, move those two channels towards 50% in order to make it flatter. Getting a huge brush set to 50%, and applying it to only the Red and Green channels with a low Opacity is a quick and easy way to do this. Of course, this isn't the only way, there are plenty more. For example, if you have the NVIDIA normal map plugin you can take your normal map, select 'Convert to height' and turn the normal map into a heightmap. Poke around with this as you please, change levels, contrast and so on, then use the filter to change the heightmap back into a normal map. You could even just use the filter's built-in normal map settings to change the bumpiness as you convert it back. Hopefully that makes more sense now.

Comment
Add comment · Show 2 · 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 Bunny83 · May 21, 2012 at 02:47 AM 1
Share

Reducing single channels can cause some other effects. A normal vector is usually normalized (has a length of 1.0) if you reduce only one or two channels the direction (angle) will change, but also the length. This will result in a darker final color unless the shader is normalizing the packed normal again.

avatar image Wolfie · May 25, 2012 at 03:53 PM 0
Share

Ah good point. I've edited my answer to clarify.

avatar image
1

Answer by Bunny83 · May 20, 2012 at 03:16 PM

Well a normal map is not a bump map. These terms are mixed quite often, but you shoud first figure out what kind of map you actually have. A normal map contains surface normal vectors encoded in the 3 color channels. A bumpmap contains only height information. A bumpmapping shader usually have a parameter to scale the bumpiness, but i haven't seen a normal map shader with such a parameter.

For some more information see this thread:
http://forum.unity3d.com/threads/78622-Normal-Map-vs.-Bump-Map

As far as i know Unity doesn't even have a bumpmap shader, only normalmap shaders (even when they are called bumped)

Unity can import bumpmaps (grayscale maps) and convert them to normalmaps. During this process you can specify the bumpiness. See:
http://unity3d.com/support/documentation/Manual/HOWTO-bumpmap.html

Comment
Add comment · Show 2 · 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 Berenger · May 20, 2012 at 03:20 PM 0
Share

I guess you could create a shader where you can lerp between the normal from the tex and the normal from the mesh. $$anonymous$$ight as well modify the map yourself before though.

avatar image markfrancombe · May 20, 2012 at 04:06 PM 0
Share

Thanks for your answer, its true that I probably messed up the correct terms. I do mean normal maps, and I do know that a greyscale image my be turned into a normal map.

$$anonymous$$y question was really regarding models that I sourced from the asset store, and as such come as a prefab... I just drop them in and the maps look a bit TOO bumpy. So I was really asking whether I have some global setting set wrong, or should I go through all imported models and adjust the bumpiness on the import settings. AND If I do that, am I using the normal map that the modeller provided? OR is it getting generated by Unity?

$$anonymous$$ark

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

6 People are following this question.

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

Related Questions

Mirror UVs for normal maps 3 Answers

Normal Mapping from a Cubemap 0 Answers

correct normalmap pipeline 3dsmax -> Unity3d 1 Answer

Importing and configuring Normal Maps at runtime ? 2 Answers

Using a normal map with pixel art is creating weird lighting issues -1 Answers


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