什么都行;D3D库都可以被引用到。初学的话,使用xna框架不错,先熟悉下3D的概念以及矩阵变换,游戏时间机制,显示(draw)与逻辑(update)机制。然后再学习Managed DirectX会快很多。(当然了,本人是managed DirectX出身,所以推荐这个而已)对于DirectX,最好的学习文档就是微软的 sdk了。里面的很多实例非常详尽,前提是你有了基础。因此,个人建议你先从xna入手吧。IDE么,VS2010就能搞定目前你的一切了。
计算机图形学,线性代数。