using Cysharp.Threading.Tasks; using UnityEngine; namespace DanieleMarotta.RiversongCodeShowcase { public class TerrainMaterialsInitializationOperation : IWorldGeneratorOperation { private static readonly int TerrainMapPropertyID = Shader.PropertyToID("_Terrain_Map"); [InjectService] private GameConfig _config; public UniTask Execute(World world) { var map = (Texture2D)_config.WorldGen.MapTextures[0].Asset; Shader.SetGlobalTexture(TerrainMapPropertyID, map); return UniTask.CompletedTask; } } }