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 liciors · Nov 21, 2013 at 12:03 AM · terrainrendererdelete

Deleting terrain when out of render distance

I have a game in development where in order to save as much RAM as possible (I'm limited to 2 gigs on stand alone) I need to delete the terrain from the game world when it is not in a 3x3 area of terrain tiles based on player location, and I want the game world to be rather big. I've gotten the terrain to render, but deleting it from the game world is annoying.. Here is basically what I got going on for deleting (testing out what works in this):

//Get level name public TerrainData startTerrain; void Start () { Terrain.CreateTerrainGameObject(startTerrain); } void Update () { if (Input.GetKeyDown("p")) { Terrain.Destroy(startTerrain); } } Destroy(startTerrain); returns an error: "Destroy won't let you delete an asset blah blah blah, use DestroyImmediate to destroy assets...", and DestroyImmediate(startTerrain, true); completely breaks the asset and makes it impossible to use it again until I rename it, which I can't have the end user do... I certainly wouldn't rename the file in a stand alone.

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
0
Best Answer

Answer by $$anonymous$$ · Nov 21, 2013 at 01:39 AM

It looks like you're trying to create terrain objects from terrain data on the fly.

That's a very expensive operation, and I would suggest creating prefabs for each terrain tile at authoring time (either using Unity editor or with a script), then instantiating and destroying terrain tiles as the player moves through the scene.

http://docs.unity3d.com/Documentation/ScriptReference/PrefabUtility.CreatePrefab.html

I've experimented with recycling terrain objects with an object pool in the past, but it's actually faster to use Instantiate() than re-loading terrain data into an existing terrain object.

I would also look at some dynamic terrain tiling systems:

http://answers.unity3d.com/questions/552498/simple-mesh-lod-for-terrain.html

I hope this helps!

Comment
Add comment · Show 1 · 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 liciors · Nov 22, 2013 at 04:50 AM 0
Share

Thanks! Working beautifully. Stats panel on my desktop says over 3000 frames (which is VERY hard to believe...) and 300 or so on the computer that the stand alone has to run on, and takes up almost no RA$$anonymous$$ which is very nice-going to end up using it all up anyway. I looked into the terrain tiling, but unfortunately it is defeating the purpose of my final computer science project, I have to make this mostly on my own and with standard assets unity comes with.

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

18 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

Related Questions

Correctly Rebuilding Terrain Basemap 2 Answers

Loading terrain files dynamically 3 Answers

How to make a block terrain by hand? 1 Answer

Is my terrain gone forever? 2 Answers

Set RenderQueue for Terrain 2 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