private void RequestTexture(NoiseData inNoiseData, Chunk inChunk) { TextureData textureData = new TextureData(); Action callbackMethod = new Action(() => OnTextureReceived(textureData, inChunk)); ThreadStart threadStart = delegate { textureData.Generate(callbackMethod, inNoiseData, _world.worldGenData, this); }; new Thread(threadStart).Start(); }