I want to create to create a GPGPU ray tracing engine like OptiX for games, so I don’t want to use rasterization or create a hybrid ray tracing engine(like DirectX with ray tracing). As OptiX uses CUDA as an API which only works on NVIDIA. What I want is to create an Ray tracing API which will work on both AMD and NVIDIA and on consoles(PS4 and Xbox One) too. Is this thing possible?
To achieve this I have to access the underlying architecture like CUDA for Nvidia and CGN for AMD. My other question is can I access the hardware directly without using an API(like Directx,Cuda,Mantle etc)?