Do all engines use DirectX or OpenGL? - No
unreal 3 engine... does it make use of directX or openGL? - No, it actually uses both like Unreal Engine 2 & 1
why is it that some engines can draw more polys with the same speed etc.? - Better Pipeline programming
btw, what's the difference between directX and openGL? - Well if we wanted to get technical about it; we'd be here all day. However the glib overview is simply:
DirectX = Direct Access Library, OpenGL = Graphics Library
can DX and GL do the same stuff? or does DX have more features? - This is a tough question, in some respects yes, others no, and otheres yes & no.
Both Graphics API are capable of doing roughly the same basic things, however more complex things are generally omited from OpenGL to keep size down; meaning the programmer has to code them, such as Stencil Reflections. However other things like Shaders common to both are also done very differently to each other; For example to switch an ASM 1.0 Shader between D3D and OGL you have to transpose all the matrices.
OpenGL is better for cross-platforming and those who prefer to get thier hands dirty doing the meanial labour of creating CSG routines and such.
Direct3D is better for people who want a stable base which ports to every graphics card without problem.
Which is faster? Well that depends on which maker of graphics card you choose. Generally now, DirectX will be faster on alot of cards;
However there are really only 2 main card types out there worth paying attention to:
nVIDIA Geforce & ATi Radeon
Geforce is much faster in OpenGL
Radeon equally so in Direct3D
but that said the speed difference in general developers applications not those by seasoned professionals will be minimal.
The Future Looks Bright, The Future Looks Like a Short Fat Plumber From The Bronx