[fpc-pascal] Loading PNG files as OpenGL textures
Michael Van Canneyt
michael at freepascal.org
Wed Oct 14 08:46:26 CEST 2015
On Wed, 14 Oct 2015, Ryan Joseph wrote:
>
>> On Oct 12, 2015, at 2:25 PM, Michael Van Canneyt <michael at freepascal.org> wrote:
>>
>> TFPCustomImage is an abstract image class, it provides no storage for the data. It can have several descendants such as TFPMemoryImage and TFPCompactImgRGBA8Bit.
>> If you just want the raw data, create a TFPMemoryImage and access the Colors array property.
>
> Sorry for the silence.
>
> I’ve learned that the FPImage classes are pretty slow but I’d like to try them anyways first to see if they’re acceptable.
>
> I don’t use Delphi so the FPC docs are a little confusing for me. There is a colors/pixels property but from what I can tell they map to getting a single pixel/color at a specific location, but the docs aren’t clear because the method arguments are never shown.
>
> Do I need to loop through all the pixels or something and pack them into a
> pointer? There should be some a single continuous block of memory in this
> class but I can’t seem to find it using the colors/pixels property. What
> am I missing?
Your are not missing anything, you saw correct.
TFPCompactImgRGBA8Bit is probably what you need, you'll need to subclass it to get direct access to the
FData: PFPCompactImgRGBA8BitValue;
field, which is the memory buffer.
Michael.
More information about the fpc-pascal
mailing list