In OpenGL, we can scale an object by multiplying it by a scale matrix of the form
x 0 0 0
0 y 0 0
0 0 z 0
0 0 0 1
Now let's suppose I want to have an uniform scaling (which is quite often the case), so the transformation matrix A is of the form:
A = s 0 0 0
0 s 0 0
0 0 s 0
0 0 0 1
The scale by a factor s. But since OpenGL divide the vector coordinates (x, y, z, w) by w, can I, and isn't it more efficient (less computations to do) to instead of multiplying by A, divide w by s ? Do engines use it, and if not why not ?