Yes, it is slow because texture data is stored in GPU memory, and is not directly accessible by CPU. What is your use case ?If you need to access Bitmap data, that is something that shouldn't change, then you get grab all pixels once in a lua array (with RenderTarget:getPixels()) and look them up at will afterwise.