I have 2 quarternians (Q1 & Q2), I'd like to apply a coefficient to each Quaternian, where the sum of both coefficients = 1. As far as I'm aware, multiplying a quaternian by another is equivalent to adding them together.
In linear mathematics, this would as simple as:
AC + B(1-C) = Y
and
A.C = S, B*(1-C) = T
so
S + T = Y
I would be lerping C from 0 to 1. Q1 is dynamic, while Q2 is a fixed target, so for this reason, I don't think Quarternian.Lerp is a practical solution.
How do I mutliply a quaternian by a coefficient, as Q1 * Q1 is equivalent to adding them together, which would be suitable for calculating the final product, ie S+T.
I'm unsure how to go about this.
Lerp(Lerp(Q1, Q3, t1), Q2, t2)
. It's unclear to me what you expect to gain from doing the coefficient multiplication manually. Can you please explain in detail what unwanted outcome you get from doing a normal Quaternion Lerp or Slerp here? – DMGregory May 26 '20 at 13:26Lerp(0, 1, t)
is the same ast
alone (orClamp01(t)
ift
is allowed to go outside the 0-1 range and you're using Unity'sLerp
that clamps between the endpoints). So I think you might be making this more complicated than it needs to be. Showing us even an incomplete stub function would give us something to go on, that's clearer about your intentions and needs in this scenario. – DMGregory May 26 '20 at 13:56