Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 13 Next capture
2021 2022 2023
1 capture
13 Jun 22 - 13 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
0
Question by nicktheuma · Sep 18, 2012 at 06:53 PM · gameobjectsrenderplayplanets

How to make rendering quicker

So basically i have an environment with many (more than 1x10^23) objects and it takes forever to render..is there a way i can keep so many objects and make it render quickly? thanks

Comment
Add comment · Show 9
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 Khada · Sep 18, 2012 at 07:02 PM 1
Share

You need to subdivide your world into chunks which can be loaded and unloaded as you approach/leave them. If they all need to be on screen or active at once. You're basically screwed.

avatar image whydoidoit · Sep 18, 2012 at 07:04 PM 0
Share

@khada good point - though of course if he split it into 1,000,000 chunks each one would contain 100,000,000,000,000,000 objects.

avatar image Muuskii · Sep 18, 2012 at 07:16 PM 1
Share

So I guess the question becomes: whydoit?

(badum tish) I'll be here all week, thanks.

avatar image Eric5h5 · Sep 18, 2012 at 07:42 PM 1
Share

Unity can't actually use anything beyond ~65$$anonymous$$ separate objects anyway, last I checked. Even then, it's very slow. Computers have limited CPU power, so once you get done with various optimizations, the only real answer is "use fewer objects". (Or invent CPUs with infinite processing abilities.)

avatar image Itinerant · Sep 18, 2012 at 11:28 PM 1
Share

As a thought, if you don't need these objects to move, start connecting meshes in your modeling program of choice. Unity would much rather render 10 objects with 100,000 triangles than 100,000 objects of 10 triangles.

Show more comments

2 Replies

· Add your reply
  • Sort: 
avatar image
1

Answer by whydoidoit · Sep 18, 2012 at 06:55 PM

:) That's a lot... Err no I would say. There are things like occlusion culling, LOD levels etc if you have Pro. Clipping planes on the camera. But no - not much will help with that many objects.

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

Answer by aldonaletto · Sep 19, 2012 at 01:10 AM

You definitely can't handle so many objects! If each object occupied a single byte, you would need about 10^14 gigabytes just to store them... but you couldn't see the objects anyway, since even a big 2560x2048 display has only about 5 mega pixels! You should handle only the objects you can see - maybe the 1000 objects nearest to the camera, or even less. Study the spatial distribution of the objects, and create only the necessary ones. If the objects may be destroyed and replaced by others, don't actually use Destroy and Instantiate: just set a "destroyed" object's position and rotation to the position and rotation of the "new" object - recycling is a must nowadays!

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.

Follow this Question

Answers Answers and Comments

16 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

Related Questions

Playing Game Outside Unity 2 Answers

Choppy Game Screen 3 Answers

How to get script components in multiple gameobjects C# 2 Answers

Why is my model being rendered this way? 1 Answer

How do you activate a script upon play? 3 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