I need a function that I can call from my c# solution that is capable of reading 2000+ pixels per second from the screen from different location. I uploaded a test sample using GETPIXEL api, but it is far-far slower than what I need.
Basically, I should be able to give an X Y coordinate to your routine and it should give back the colour value under the specified coordinate BUT a whole lot faster (2000+ pix/sec) than in the uploaded sample.
If you need further clarification, please ask so.
I need a "Class" , let's call it "PixelBuster”. It should have 2 methods:
Method 1: void MakeSnapshot(x1,y1,x2,y2)
//It will be called 3-4 times per second//
Every time this method is called it should capture the screen content and store it internally.
Also, to make it even faster, it should also accept a top left (xy) and a bottom right (xy) coordinate and capture & store only that region.
2, Int GetPixel (X,Y)
//It will be called 2-5000 times per second//
This method should give back the pixel color under the given coordinates – of course, using the internal storage previously captured by "MakeSnapshot”.
(The XY coordinates should still be in relation to the screen!!! Not in relation to the internal buffer. So 0,0 is the top left corner of the screen, not the top left corner of the buffer! If the given coordinate was not captured with "MakeSnapshot" and so is not in the internal buffer, then GetPixel gives back some error message)