1. This book is on my wishlist Only cons is that it use DirectX so it is not portable on other operating systems.
For 3D Game Engine Programming the author address this within the first couple of pages when he goes over his design for the engine. Since he was using Visual Studio and many readers were most likely on Windows, using DirectX 9 from the start probably made more sense audience wise. If you wish to add in OpenGL right from the start he basically says go for it - there is nothing stopping you. In my opinion DirectX was more of a "proof of concept" using the API classes. Adding any other rendering implementation is rather straight forward using the API independent base class he creates. After adding you're favorite extension, loading and using it takes ~15 lines of code. It is like this for everything in the book such as input, sound, and basic network support.
You should also take into consideration the age of the book in that shader support isn't a highlight of the book so that is something you will have to expand upon yourself. It has a basic shader system but he was targeting 1.0 versions. The FFP is presented only because some graphics cards weren't able to use the shaders. However if you understand the overall idea of the API independent class then adjusting the code won't be difficult.
He also goes into making some simple math classes which was a great learning experience for me. While you could switch over to using another math library if you desire the idea was to teach you more of the core concepts such as matrices and quaternions. The DirectX rendering system makes no use of the D3DX functions but rather the math library implementation - which may or may not help if you want to change to OpenGL. Some SSE is provided in the math library if you are unfamiliar with it, but this can also be adjusted to use something newer if you desire. A simple 3D model format with animation is presented to show you how it is done, but adding support for your favorite format shouldn't be too hard.
One thing to note about the end result of the book - it is mostly geared towards making a small FPS concept with accompanying editor. The editor reminded me of UnrealEd 1.0... just much less... awesome . While most chapters can stand on their own regardless of the game, this is just sorta the "glue" to show you that you could make something with everything provided in the book. AI and the actual game are left as practice for the reader.
I hope that possibly clears up any preconceived notions about it being DirectX only and provides a better idea about what the book is about before you buy it. Good luck!
Thank you very much for those infos! :)