I'm planning to write a game from scratch (a BIG Game, for commercial purpose). I'm aware that there are certain compute libraries like OpenCL, AMD APP SDK, C++ AMP as well as DirectCompute - both from MS (NOT interested in CUDA) are available in the market.
I'm planning to write the game from the scratch, which includes the following engines...
- Physics Engine
- AI Engine
- Main Game Engine
(... and if anything is missed). I'm aware that, there are some free physics engine libraries in the market. Not sure about free AI engine libraries.
I'm bit confused in choosing between the OpenCL, AMD APP SDK, and C++ AMP libraries (as already mentioned i'm NOT interested in CUDA).
I want my game to be published in Windows/Android/Mac OSX. It means it should be a cross-platform game.
I will be having "one source code" that i'll compile for various platforms like Windows/Android/Mac OSX, and any others if i missed.
Note: Since I'm NOT a Java guy, kindly do NOT suggest me the Java Language.
For Graphics language should i use OpenGL or DirectX 11?
I have heard that OpenGL runs on a single core, and not sure of DirectX 11. Between OpenGL and DirectX which one should i follow?
or else, are there any other graphics language that i need to start with?
I want to make use of the parallelism in GPU as well as CPU.