Copy non-rectangle part of one texture to another

How can I save part of one texture to another? I want just set 4 verticies and interpolate inner region to another texture.
For now I know how to do it with additional ortographic camera and RenderTexture. Is there any better way?

Thank you.

If i understand correctly then you want to cut some pixels from one texture and paste them in to another texture?
If so, just use texture.GetPixels(x, y, w, h) to get pixels you need then if the shape isnt squared just shape it through loop, and set pixels that you dont need to new Color(r,g,b, /* alpha100% */ 1.0f);
and then get pixels from your target texture using the same method and check if your copied pixels have 100% alpha if so just do paste them. :o

void CopyPixels(int x, int y, int w, int h){
    Color[] clrs = From.GetPixels(x, y, w, h);

    Paste(x, y, w, h, clrs);

void PastePixels(int x, int y, int w, int h, Color[] clrs){
    Color[]change = To.GetPixels(x, y, w, h);
    for(int i = 0; i < change.Length; i++){
        if(clrs*.a == 1.0f) continue;*

else change == clrs*);*
To.SetPixels(x,y,w,h, change);


Hey I’m looking for a similar thing, copying a non-rectangular area onto another texture so it interpolates the space properly (as in, not an area defined by 90 degree angles, but more like a stretched polygon with 4 sides) and I can’t figure out what you mean in your extra final comment about an orthographic camera and a render texture, could you enlighten me hopefully? My project has been stalled for a long time because I can’t figure this out.