c#
Why when creating new GameObjects it's not changing the tag?
In the first script: using System.Collections; using System.Collections.Generic; using UnityEngine; public class InstantiateObjects : MonoBehaviour { public GameObject prefab; public Terrain terrain; public float yOffset = 0.5f; private float terrainWidth; private float terrainLength; private float xTerrainPos; private float zTerrainPos; void Start() { //Get terrain size terrainWidth = terrain.terrainData.size.x; terrainLength = terrain.terrainData.size.z; //Get terrain position xTerrainPos = terrain.transform.position.x; zTerrainPos = terrain.transform.position.z; //generateObjectOnTerrain(); } public void generateObjectOnTerrain(bool parent, string tag) { //Generate random x,z,y position on the terrain float randX = UnityEngine.Random.Range(xTerrainPos, xTerrainPos + terrainWidth); float randZ = UnityEngine.Random.Range(zTerrainPos, zTerrainPos + terrainLength); float yVal = Terrain.activeTerrain.SampleHeight(new Vector3(randX, 0, randZ)); //Apply Offset if needed yVal = yVal + yOffset; //Generate the Prefab on the generated position GameObject objInstance = Instantiate(prefab, new Vector3(randX, yVal, randZ), Quaternion.identity); if (parent) objInstance.transform.parent = this.transform; objInstance.transform.tag = tag; } } And in the script that i'm using this: private void Start() { for (int i = 0; i < cloneTeleportations; i++) { InstantiateObjects gos = GetComponent<InstantiateObjects>(); gos.prefab = prefab; gos.generateObjectOnTerrain(true, "ddd");//"Teleportation"); } } If i will change it from true to false it will not make the GameObjects childs and if it's true they will be childs. The parent part is working. But for testing i tried to change the tag to "ddd" and i saw in the first script that the tag is "ddd": objInstance.transform.tag = tag; tag is "ddd" and objInstance.transform.tag by default is "Teleportation" when running the game all the cloned gameobjects tagged as "Teleportation" and not "ddd".
in Unity you must first add a tag manually or via c# script and only then you will be able to assign it to a GameObject. If the tag does not exist it's not possible to assign it.
Related Links
C# WPF Select UserControl on Canvas
Is it possible to deal with multiple tables on single view with both side validation? ASP.NET MVC
How do I get the XML SOAP request of an WCF Web service request?
C# Meta-information for object serialisation
Adding a custom cursor in XNA/C#?
vbscript to c# - list groups a computer is memberof (retrieve array)
find out how a person is feeling? [closed]
WPF Custom Control's ToolTip MultiBinding problem
Need to define control flow and functionalities
C# extension methods not working as expected - see example
What happens when a Task is running and it's window is closed?
How to change ComboBox's Background Property during Mouse Hover
How to check a request is from local host with ASP.NET technic
Simple repository for .Net 2.0
Excel file generated from WinForm app via template is sometimes “InVisible”
Dictionary.FirstOrDefault() how to determine if a result was found