Every graphics library propably can do the trick you need, even default Delphi API. For that there is package called PNGImage. This makes possible for these images to load into TImage too
http://pngdelphi.sourceforge.net/
What PNG does is add alpha layer in addition to RGB, and DirectX as well as OpenGL can draw it well. Loading the texture and rendering depends on the engine then. If engine doesn't support Png, you can use the PNGImage units to make own loading procedure using the scanlines... as a last resort.