Hacker News new | ask | show | jobs
by woodcut 3646 days ago
Get a book on linear algebra, a book on C/C++, and download the OpenGL spec and build a graphics pipeline that can render a textured polygon, then add lights, shadows, animations... this will take you a month perhaps.
2 comments

One month, sure :D Realistically, if you have no GPU or OpenGL experience, to build something like that, lightning, shadows.. And to really understand what is happening, in one month maybe if already know C++/your language of choice well, you can grasb the idea of how to draw a triangle with maybe some lightning.

Shadows, animation, no way in a month. The whole OpenGL stack is pretty complex.

My suggestion would be the same though, but maybe reserve one year to really just grind the basics until you have a clear understanding of what is happening.

On the other hand, if you just want CUDA, there are frameworks for that for enabling parallel calculations without having to understand graphics programming.

Yes I am simply concentrating on parallel calculations and I dont need any graphics to work upon
I am working on a data processing framework project so I dont think I have a months time so as of now I started reading http://analog.nik.uni-obuda.hu/ParhuzamosProgramozasuHardver...
ah ok then you're better off learning OpenCL, if you don't have access to a beefy graphics card just rent one by the hour off of amazon. You can prototype on your laptops CPU then run the real simulation on a remote machine.
thats an issue I already have NVIDIA Corporation GM107 [GeForce GTX 750 Ti] (rev a2) to work on. but why OpenCL and not CUDA ?
edit: thats not an issue I already have NVIDIA Corporation GM107 [GeForce GTX 750 Ti] (rev a2) to work on. but why OpenCL and not CUDA ?
OpenCL vs CUDA is pretty boring debate, both run on the same hardware and so have similar performance. Difference is in the tooling and ecosystems, you can run OpenCL on FPGA's for example.
Out of curiosity, has anyone successfully deployed some OpenCL code across very different platforms?

It seems neat that it'll compile and run on a GPU, CPU or FPGA, but it seems like code written for one style of architecture would be appallingly slow on the others.