lid6j86's picture

Shaders

It's been a while since i put anything on the blog, especially about my findings as I go through this. One of the things that I've found out is that it really seems like a bulk of the work is actually done in shaders (at least for OpenGL 3.0 and on). I'm still reading up on them, but it definitely looks like I'll have to buy some shader books and learn more about them.

All of the calculations I've been doing (as I found out), were on the CPU, not the GPU, making them extremely inefficient and only good for the simplest of programs, like drawing a cube or an interpolated triangle.

What I'm thinking now (correct me if I'm wrong), is that really you mostly just end up using OpenTK to create complex variables, etc... that cannot be made within the shader, and linking it for it to be run in the shader. In a way (and if this is correct), it really simplifies things, I think because it helps with understanding the scope of what GLSL and OpenTK are used for. Instead of trying to find OpenTK solutions to my problems, I now look to GLSL, which may invariably need a couple of things done in TK before it is passed over.

OpenGL has become very interesting to me, as this is the farthest down the whole I've really ever gone yet with programming. Now to find some kindle books and online tutorials...

(by the way, I'm actually really glad that I have chosen OpenTK over XNA or SlimDX for the sole reason that if I were to have just gone with one of those, I don't think I would have had to of learned nearly the same amount of back information on how graphics really work, which ultimately end up making you better in the end. I have a lot of XNA books as well, and I may still ultimately use it some day for windows-specific or Xbox game programming, but this is absolutely the way to go at first, in my opinion.)


Comments

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
flopoloco's picture

Good news is that if you write XNA then you can use Monogame, but it's a matter of choice mostly. In the end the only reason that OpenGL rocks is that everything you learn, you can use it even in 2030. But DirectX is going to change all of the time, I don't know if this good or bad, but if you want to build re usable codebase and advance your knowledge then OpenGL is essential.

puklaus's picture

I use monogame and find that 3.0 branch (3d support) works fine, thats why Im learning xna nowadays.