Quote Originally Posted by Huehnerschaender
Well, Phoenix is for 2D games only while Asphyre can be used for 3D too.
Not quite true, Phoenix can be used for 3D graphics aswell, i'ts based on OpenGL witch is a 3D API. But most of the functions is aimed at 2D rendering. Some 3D functionality is planned for the future...

Quote Originally Posted by Huehnerschaender
But if you want to do anything in 2D the biggest advantage of Phoenix is it's crossplatform support. Using Lazarus/FPC it enables you to release your games on Windows, Linux, Mac without changing a single line of code.

Using Asphyre (which is the fastest 2D engine I know) lets you stick to Windows platform, because its bound to DirectX. The same with UnDelphiX. Also Windows only.

I have just started with Phoenix. It's a nice engine with a good variety of features. And everything else you need can be added easily.

I don't know much about its speed now, because I did not do any stress tests to Phoenix yet. But for the project I am currently working on, I don't need to be "fast" when it comes to rendering.
It should be as fast as any other lib, if you use it in a optimized way, for instance rendering a tilemap with

Code:
  for Y:= 1 to 500 do
  for X:= 1 to 500 do
    Images.Find('MyImage').Draw(X*32, Y*32, Tiles[X + Y * Width]);
is far from the fastest way (one texture binding per tile, alot of state changes (textures, blending etc), a linear search for the image, alot of function overhead).