One step at a time is best.
Indeed! ..Replace glTranslate() with glUniform3f() - Done
In C++, the choice between matrix[16] and matrix[4][4] comes down to which you like better. matrix[1][1] in the second is the same offset as matrix[4] in the first. The important thing to remember for openGL is that it is column-major in its memory layout (so array element 0 (or [0][0]) is row 0, column 0, but element 1 (or [0][1]) is row 1, column 0.
Sounds complicated, but something I'm eager to tackle - can't not really! This is port of call number one methinks as I have no replacement for the deprecated stack, and the one we use at university belongs to my tutor, so can't really use that.
using view/projection matrices you copied out of the stack with glGetFloatv
... I'll enquire my tutor and some sample codes about this - possibly need those matrices first?
work on building full model transforms (translation*rotation*scale) as well as your own view/projection calculations
I can do all these calculations in the vertex shader methinks, I just need to get the matrices in as uniforms
Basically, I need to figure out how to get the uniforms I need and how to pass them to the shader ( pretty sure I know this/have done this before ), make the shader class a bit more static so I can say "Give shader" in the GLModels Init, and then test!
I'll come back in a few days and let you know how far I've gotten, I've got a few beneficial labs in the weel that will be helpful with this.
Thank you my friend!