// Instantiates the grid and tilemaps public static void InstantiateWorldGameObjects() { // Terrain setup terrainTextureAtlas = new TextureAtlas(); terrainTextureAtlas.CreateAtlas("Terrain"); terrainObject = new GameObject(name: "Terrain", typeof(MeshFilter), typeof(MeshRenderer)); terrainMeshFilter = terrainObject.GetComponent <MeshFilter>(); terrainMeshRenderer = terrainObject.GetComponent <MeshRenderer>(); terrainMeshRenderer.material = new Material(Shader.Find("Shader Graphs/Terrain Shader")); Texture2D terrainAtlas = new Texture2D(0, 0, TextureFormat.ARGB32, false); terrainAtlas.LoadImage(System.IO.File.ReadAllBytes("Assets/Textures/Atlas/Terrain Atlas.png")); terrainAtlas.filterMode = FilterMode.Point; terrainAtlas.wrapMode = TextureWrapMode.Clamp; terrainMeshRenderer.material.SetTexture("_Texture2D", terrainAtlas); // Water setup waterTextureAtlas = new TextureAtlas(); waterTextureAtlas.CreateAtlas("Water"); waterObject = new GameObject(name: "Water", typeof(MeshFilter), typeof(MeshRenderer)); waterMeshFilter = waterObject.GetComponent <MeshFilter>(); waterMeshRenderer = waterObject.GetComponent <MeshRenderer>(); waterObject.GetComponent <MeshRenderer>().material = new Material(Shader.Find("Shader Graphs/Water Shader")); Texture2D waterAtlas = new Texture2D(0, 0, TextureFormat.ARGB32, false); waterAtlas.LoadImage(System.IO.File.ReadAllBytes("Assets/Textures/Atlas/Water Atlas.png")); waterAtlas.filterMode = FilterMode.Point; waterAtlas.wrapMode = TextureWrapMode.Clamp; waterMeshRenderer.material.SetTexture("_Texture2D", waterAtlas); waterObject.transform.position = new Vector3(0, 0.1f, 0); }
// Awake is called when the script instance is being loaded. private void Awake() { Instance = this; Logger.Start(); this.ChunkParentTransform = new GameObject("Chunks").transform; this.UpdateNoiseGenerators(); TextureAtlas.CreateAtlas(); }