Copy Paste multiple Texture2d's Into New Texture2d

Hey guys, thanks for looking at my question.

I want to take say a shirt from one texture 2d and the skin of another, and copy them onto the same texture at runtime. I see ReadPixels()/SetPixels() in the script reference but I think these will overwrite all the pixels.

Does anyone have experience with merging texture2d’s?

I need something like ActionScript 3 has - copyPixels(blendMode etc. . . ). Any ideas? Thanks again for reading!

If anyone finds this question while searching I figured it out. I wrote this function to combine textures. I am using this to copy different shirt textures and tattoo textures onto one skin texture. You basically just get the pixels from each map and then set your new map to the combination of the two using the second maps alpha as the lerp % between pixel a and pixel b. The maps need to be read/write enabled and be RGBA32 and the same height and width. You could easily write something generate the mips and all that as well if one was so inclined. Thats all I got gentlemen.

public static Texture2D CombineTextures(Texture2D aBaseTexture, Texture2D aToCopyTexture)
{
	int aWidth = aBaseTexture.width;
	int aHeight = aBaseTexture.height;

	Texture2D aReturnTexture = new Texture2D(aWidth, aHeight, TextureFormat.RGBA32, false);
			
	Color[] aBaseTexturePixels = aBaseTexture.GetPixels();
	Color[] aCopyTexturePixels = aToCopyTexture.GetPixels();
	Color[] aColorList = new Color[aBaseTexturePixels.Length];

	int aPixelLength = aBaseTexturePixels.Length;
	
	for(int p = 0; p < aPixelLength; p++)
	{
		aColorList[p] = Color.Lerp(aBaseTexturePixels[p], aCopyTexturePixels[p], aCopyTexturePixels[p].a);
	}
	
	aReturnTexture.SetPixels(aColorList);
	aReturnTexture.Apply(false);
	
	return aReturnTexture;
}