Código
El código funciona y devuelve true, el problema es que el programa va muy lento cuando se ejecuta esta función. Alguien tiene otra forma de hacer Perfect Pixel Collision?
private bool CheckPixelCollision(int Image1_x, int Image1_y, int Image2_x, int Image2_y, Bitmap Image1, Bitmap Image2) { bool intersected = false; for (int i = 0; i < Image1.Width; i++) { for (int j = 0; j < Image1.Height; j++) { for (int k = 0; k < Image2.Width; k++) { for (int l = 0; l < Image2.Height; l++) { Color Image1_color = Image1.GetPixel(i, j); Color Image2_color = Image2.GetPixel(k, l); if (Image1_color.A != 0 & Image2_color.A != 0) { if (Image1_x+i == Image2_x+k & Image1_y+j == Image2_y+l)//Vemos si colisionan los pixeles { intersected = true; } } } } } }
PD: utilizo gdi+ para el código