(My guess is yes but) is there an order of transformations that is most efficient (and does it depend on the language you're using)?
Max
It really just depends on your implementation. If you have several transforms represented as (e.g.) 4x4 matrices, you could just multiply them together in any (correct) order to get a single 4x4 matrix representing their combination, and use that on all of your vertices. Or, if you needed an intermediate result after some number of transformations, maybe you only combine some of them. There's also other considerations like keeping them separate to slightly improve floating point accuracy. Overall, though, it's mostly about how you're crunching the numbers rather than what order you do the transforms.
Lavender
I will remember to scale before translation to avoid graphics bug!
duck
Just a reminder to myself that scale and rotation are done around the origin, not the center of the object.
(My guess is yes but) is there an order of transformations that is most efficient (and does it depend on the language you're using)?
It really just depends on your implementation. If you have several transforms represented as (e.g.) 4x4 matrices, you could just multiply them together in any (correct) order to get a single 4x4 matrix representing their combination, and use that on all of your vertices. Or, if you needed an intermediate result after some number of transformations, maybe you only combine some of them. There's also other considerations like keeping them separate to slightly improve floating point accuracy. Overall, though, it's mostly about how you're crunching the numbers rather than what order you do the transforms.
I will remember to scale before translation to avoid graphics bug!
Just a reminder to myself that scale and rotation are done around the origin, not the center of the object.