• 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 markfrancombe · Mar 15, 2016 at 09:56 PM · art

How do I copy a terrain?

My story lats over some time and I want to show the changes of teh seasons.. Therefore I need to duplicate a terrain, make some changes and then make a new copy from that one, and make further changes... The new terrains will be loaded consecutively one every "game day". However, if I first duplicate the terrain, THEN I noticed the terrain asset component, so I duplicated THAT. BUT.. when I make a change on Terrain 2, which is a copy of Terrain1 .. THE SAME CHANGE HAPPENS ON TERRAIN1

Why is this? and how can I acive what I need...? (I have ONE way, but its a pain. I made a BLANK new terrain, exported RAW DATA from the Terrain 1 and imported it into Terrain 2... but this ONLY transfers the height map, not locations of plants trees or textures...)

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

5 Replies

· Add your reply
  • Sort: 
avatar image
1

Answer by markfrancombe · Mar 16, 2016 at 05:18 PM

This question was answered CORRECTLY by @Bunny83 here: http://answers.unity3d.com/questions/25335/duplicate-terrain.html#answer-1155927

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 realprimo · Nov 24, 2018 at 12:41 PM

  1. Duplicate your Terrain asset (IN YOUR ASSETS FILES).

  2. Duplicate your Terrain object (IN THE HIERARCHY).

  3. Open the Debug window into the inspector of the duplicated terrain object. --- INTO DEBUG WINDOW ---

  4. Terrain -> Terrain data = change to your duplicated terrain asset.

  5. Terrain Collider -> Terrain data = change to your duplicated terrain asset.

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
0

Answer by SonicScrew12 · Mar 16, 2016 at 05:41 PM

The best way to do this is to make a prefab of your Terrain 1, then instantiate it when necessary, using the instantiate command.

Let's say you name your terrain "Terrain1". In a script, declare a variable "terrain", then instantiate it using Unity's Instantiate function.

 public GameObject terrain
 
 //changeSeason is a placeholder. It's just to show when you want to change seasons
 if (changeSeason) {
     Instantiate (terrain, new Vector3(0.0f, 0.0f, 0.0f), Quaternion.identity);
 }

Quaternion.identity is for default rotation (0, 0, 0), and new Vector3() is to create new coordinates for where it starts in global space.

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 markfrancombe · Mar 17, 2016 at 05:30 AM 0
Share

sorry, this is not answering the original q

avatar image
0

Answer by ParadoxSolutions · Mar 16, 2016 at 12:51 AM

Changes made to copies of terrain will effect all copies created from the same terrain data, to have unique terrain assets you will need to create a whole new terrain (you can copy height maps for the same shape and allow it to be changeable if using separate terrain data)

How I would approach this is I would:

1) Sculpt terrain the way I want it. (Assuming the terrain doesn't change)

2) Decorate the terrain appropriately.

3) Copy/save the splat map (I have never done this)

4) Create a new gameobject and make all decorations children of it.

5) Select the gameobject and save it a prefab for that season, each game day have the script Instantiate the prefab (at the same position you had the gameobject when you made your decorations children of it so everything lines up with the terrain) then change the terrains splat map to whatever season you want. (the splat texture is data for the painted textures on the terrain)

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
0

Answer by Steve-Tou · Feb 19, 2020 at 02:50 AM

Hey, hope I'm not necroposting here, but I occasionally refer back to these threads when I want to copy a terrain. In case someone has the issue I was having, the copying and dragging of the terraindata works, but you have to drag the new terrain data not over the existing terrain, like you can do with a cube, sphere, etc. You have to drag it into the scene into an empty space area. This took me a while to figure out, so just thought I'd share.

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

The best place to ask and answer questions about development with Unity.

To help users navigate the site we have posted a site navigation guide.

If you are a new user to Unity Answers, check out our FAQ for more information.

Make sure to check out our Knowledge Base for commonly asked Unity questions.

If you are a moderator, see our Moderator Guidelines page.

We are making improvements to UA, see the list of changes.



Follow this Question

Answers Answers and Comments

41 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

Related Questions

Vertical Slider - Using different art? 1 Answer

Artifacting when baking with Precomputed Realtime GI 0 Answers

pixelated art 1 Answer

How to make your own sprite sheet 3 Answers

I am trying to draw 2D artwork for a game but when I import the artwork it is not the same size. 1 Answer

  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges