I still think that this thread is worth looking at.
Not being able to switch (calculate/convert) between aimdirection and actual rotationXYZ (eg rotPP) soon becomes a real pain when you are doing a little more than simple behaviours with particles and where rotation plays an important role (instancing).
Let's say we have to make butterflies fly around (to make it simple with aimdirection=velocity) and on a given moment, they have to land with a given rotationXYZ on flower petals.
So the most versatile way would be use the actual rotation to control the instances real rotations (eg. set Rotation to rotPP).
During the flight, the aimdirection needs to be converted in rotationXYZ. (rotPP ?=? converted velocity)
On a given distance, the rotationsXYZ (converted from aimdirection(velocity)) interpolate towards a given rotationXYZ.
As a result we have the butterflies flying around folowing aiming towards their velocity. When triggered (time / distance) they would nicely interpole and land with the right orientation. Excellent!
Theoreticaly, you could do the same by interpolating aimDirections. But when working with aimdirections, the interpolation s#*K% and posing the landed butterflies is a pain... So this is why I prefer to control rotations directly wit rotationXYZ.
Does anybody knows how to do the vector math to convert aimdirection in real rotationsXYZ?
Thx again