Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 12 Next capture
2021 2022 2023
1 capture
12 Jun 22 - 12 Jun 22
sparklines
Close Help
  • 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
1
Question by arturnik17 · Jul 30, 2018 at 05:40 PM · unity 5fbxblender-exporting

Blender to Unity more vertices.

Hey, I ran into a problem recently where I see less vertices in Blender and more in Unity itself.

Blender - I see 384 vertices here.
Unity - but 4 times the amount in Unity.

Now, I've read I can use edge split but it raises the vertices amount to the amount I see in Unity. Is there a way to bring the amount down to 384 in Unity rather then bring it up in Blender? If not, any recommendations to how should I reduce the vertices amount in Blender? I've used Decimate modifier already.

Thanks in advance!

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

1 Reply

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

Answer by Bunny83 · Jul 30, 2018 at 06:24 PM

No, there isn't. Keep in mind that Blender is a modelling software that uses an abstract definition of a vertex. However on the hardware (your GPU) you have to provide the vertices as they are required. For example if two adjacent triangles which meet at a vertex have a different normal, UV coordinate, vertex color or any other vertex attribute than the other one the vertex need to be "split". This might be misleading because they never were the same vertex. A cube has 8 corners but it requires 24 vertices (4 vertices per face * 6 faces). There's no way around that since each face need a differen normal vector. If you only had 8 verices you would need to assign 3 different normal to the same vertex which is not possible.


Likewise UV coordinates. If you want to assign a different UV coordinate to a certain triangle / quad than to the adjacent triangle, you need to split the vertices as well, even when the two triangles lie in the same plane and have the same normal.


So you need to understand that those "384" is actually the wrong number. Modelling tools work a lot with abstractions since it's purpose is to make it easy to work with. For example a modelling tool may support "polygons" with more than 4 vertices and only count those polygons. However on the hardware we can only render triangles. So the triangle count is of course higher than the polycount. For example a Dodecahedron (as the name suggests) has 12 pentagons as "faces". However when you want to render such a mesh on your GPU you have to split each pentagon into at least 3 triangles. Also a dodecahedron has 20 vertices however if you want to render such a thing you need 5 * 12 verices (== 60 vertices).

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 arturnik17 · Jul 30, 2018 at 08:04 PM 0
Share

Thanks for the detailed explanation! I've managed to bring it down from 1536 vertices to 300-500 with a few modifications.

Shame Unity 2018 brought back the 65,535 vertices limit per mesh. It's a pain in the ass when you are working with chunks.

avatar image Bunny83 arturnik17 · Jul 30, 2018 at 09:10 PM 0
Share

Hmm? What do you mean? The $$anonymous$$esh class now can be switched to use a 32 bit index buffer. Just set the indexFormat to your desired format. When you import a mesh you can also choose the index format Unity should use. However if the mesh doesn't have more than 64k vertices it's better to keep the 16 bit.


ps this image of the mesh importer is from Unity 2018.1.3f1

avatar image Bunny83 Bunny83 · Jul 30, 2018 at 09:26 PM 0
Share

ps: If you create $$anonymous$$ecraft like chunks with the 16k limit you could simply use smaller chunks / chunk sections. For example 8x8x8 ins$$anonymous$$d of 16x16x16. That leaves a worst cast vertex count per block of 128 which should be enough for most things, Though since we have support for 32 bit index buffers it would make more sense to use larger chunk sections like $$anonymous$$C.


Note that when it's ok to limit your game to state of the art hardware you could use geometry shaders and render a single quad with a single inco$$anonymous$$g vertex. Parameters like size and orientation could be encoded in one of the UV channels. Of course that would restrict the usage to quads but it would save bandwidth and vertices.

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.

Follow this Question

Answers Answers and Comments

178 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 avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image 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

Animated FBX animation falls apart into separate objects but still animates. Exporting from Blender. Please help. Question 0 Answers

What's the best way to edit the mesh in an .fbx file I didn't create? 1 Answer

keyframes problem 1 Answer

Local Orientation reversed on transfer from blender to unity 1 Answer

Blender animation import - different animation and offset location 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